add calamari to the api/index section

Signed-off-by: Alfredo Deza <alfredo.deza@inktank.com>
PG: wait until we've build the missing set to discover_all_missing

Fixes: #9179
Backport: firefly
Signed-off-by: Samuel Just <sam.just@inktank.com>
PG::init: clear rollback info for backfill as well

Otherwise, we won't remove the old rollback objects from a resurrected pg.  In
rare cases, this can cause us to get an EEXIST if we happen to reuse the same
rename id on the same object in a subsequent interval.

Fixes: #9293
Related to: 8346e10755027e982f26bab4642334fd91cc31aa
Backport: firefly
Signed-off-by: Samuel Just <sam.just@inktank.com>
osd/osd_types: add num_bytes_hit_set_archive to stats

The tiering agent's life is easier/better if it knows how many bytes these
objects consume (instead of making a conservative guess).

Signed-off-by: Sage Weil <sage@redhat.com>
osd/ReplicatedPG: account for hit_set_archive bytes

Signed-off-by: Sage Weil <sage@redhat.com>
osd/ReplicatedPG: scrub and repair hit_set_archive bytes

Signed-off-by: Sage Weil <sage@redhat.com>
osd/ReplicatedPG: calculate num_user_bytes

This is the bytes stored by the user, excluding hit_sets.

Signed-off-by: Sage Weil <sage@redhat.com>
osd/ReplicatedPG: adjust avg_size calculation in agent_choose_mode

Signed-off-by: Zhiqiang Wang <wonzhq@hotmail.com>
tests: flush logs before grepping them

Otherwise the test races with the daemon writing the logs and can
sometime fail.

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
rbd should use write-back when caching is enabled

librbd now defaults to write-through until the first flush
is received.  For rbd, force the use of write-through.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
debian: only B-R yasm on amd64

Make yasm dependency amd64 only, it isn?t used elsewhere
but breaks x32 (which is mis-detected as amd64)

Signed-off-by: Sage Weil <sage@redhat.com>
configure: do not try yasm on x32

Signed-off-by: Sage Weil <sage@redhat.com>
KeyValueStore: Fix upgrade from non-exist superblock OSD version error

If user upgrade OSD from Firefly or lower than 0.84, it won't get valid
keyvaluestore backend.

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
ObjectStore Test: Add test for simulating scrub behavior

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
KeyValueStore: Fix scrub causing inconsistence state

Fix #8589
Backport #Firefly
Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
packaging: add all erasure code plugins to RPM packages

It means distributing a few plugins that are only used for unit testing
but it does not use much disk space and this is otherwise harmless.

Explicitly listing which plugins are to be installed is problematic
because some of them (isa for now and maybe more later) are not
available for all architectures. Properly maintaining the list of
plugins to install would therefore mean exactly matching which
architecture has which plugins.

http://tracker.ceph.com/issues/9381 Fixes: #9381

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
Merge pull request #2428 from ceph/wip-yasm

fix yasm checks for x32

Reviewed-by: Daniel Schepler <dschepler@gmail.com>
Merge pull request #2429 from yuyuyu101/kvstore-fix-superblock

KeyValueStore: Fix upgrade from non-exist superblock OSD version error

Reviewed-by: Sage Weil <sage@redhat.com>
Merge pull request #2430 from yuyuyu101/kvstore-scrub-inconsistence

Kvstore scrub inconsistence

Reviewed-by: Sage Weil <sage@redhat.com>
Merge pull request #2435 from athanatos/wip-9179

PG: wait until we've build the missing set to discover_all_missing

Reviewed-by: Sage Weil <sage@redhat.com>