rgw: call processor->handle_data() again if needed

Fixes: #8937

Following the fix to #8928 we end up accumulating pending data that
needs to be written. Beforehand it was working fine because we were
feeding it with the exact amount of bytes we were writing.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
rgw: fix crash in swift CORS preflight request

Fixes: #8586

This fixes error handling, in accordance with commit 6af5a537 that fixed
the same issue for the S3 case.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
doc/release-notes: v0.83

Signed-off-by: Sage Weil <sage@redhat.com>
config: allow unsafe setting of config values

Allow callers to set config values even when there is no observer.

Signed-off-by: Sage Weil <sage@inktank.com>
os/KeyValueDB: generic create(), test_init()

Let us create an implemenetation by name.  Include a test_init() method
that will instantiate an instance and verify it could start up.

Signed-off-by: Sage Weil <sage@inktank.com>
os/KeyValueDB: make compaction interface generic

Signed-off-by: Sage Weil <sage@inktank.com>
mon/MonitorDBStore: use generic KeyValueDB::create()

Signed-off-by: Sage Weil <sage@inktank.com>
os/FileStore: use generic KeyValueDB::create(); store omap_backend in superblock

The only time we set this is at mkfs time.  Thereafter, we stick with the
same backend.

Signed-off-by: Sage Weil <sage@redhat.com>
os/KeyValueStore: rename osd_keyvaluedb -> keyvaluestore_backend

This option should be keyvaluestore_*, not osd_*.

Clean up the backend instantiation.

Signed-off-by: xinxin shu <xinxin.shu@intel.com>
Signed-off-by: Sage Weil <sage@redhat.com>
add rocksdb support

Signed-off-by: xinxin shu <xinxin.shu@intel.com>
add rocksdb submodule
get a stable rocksdb (3.0)

Signed-off-by: xinxin shu <xinxin.shu@intel.com>
add --with-librocksdb-static configure options

with this options, ceph will build rocksdb from submodule

Signed-off-by: xinxin shu <xinxin.shu@intel.com>
rocksdb backend optimization

Signed-off-by: xinxin shu <xinxin.shu@intel.com>
os/FileJournal: When dump journal, using correctly seq avoid misjudging joural corrupt.

In func FileJournal::dump, it always using seq=0 as last-seq and it can
misjudge the journal corrupt.

Signed-off-by: Ma Jianpeng <jianpeng.ma@intel.com>
erasure-code: create default profile if necessary

After an upgrade to firefly, the existing Ceph clusters do not have the
default erasure code profile. Although it may be created with

   ceph osd erasure-code-profile set default

it was not included in the release notes and is confusing for the
administrator.

The *osd pool create* and *osd crush rule create-erasure* commands are
modified to implicitly create the default erasure code profile if it is
not found.

In order to avoid code duplication, the default erasure code profile
code creation that happens when a new firefly ceph cluster is created is
encapsulated in the OSDMap::get_erasure_code_profile_default method.

Conversely, handling the pending change in OSDMonitor is not
encapsulated in a function but duplicated instead. If it was a function
the caller would need a switch to distinguish between the case when goto
wait is needed, or goto reply or proceed because nothing needs to be
done. It is unclear if having a function would lead to smaller or more
maintainable code.

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

Backport: firefly
Signed-off-by: Loic Dachary <loic@dachary.org>
cls_rgw: fix object name of objects removed on object creation

Fixes: #8972
Backport: firefly, dumpling

Reported-by: Patrycja Szabłowska <szablowska.patrycja@gmail.com>
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
Merge pull request #2163 from ceph/wip-filestore-omap

clean up KeyValueDB instantiation

Reviewed-by: Haomai Wang <haomaiwang@gmail.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
mon: s/%%/%/

Signed-off-by: Sage Weil <sage@redhat.com>
test/cli-integration/rbd: fix trailing space

Newer versions of json.tool remove the trailing ' ' after the comma.  Add
it back in with sed so that the .t works on both old and new versions, and
so that we don't have to remove the trailing spaces from all of the test
cases.

Backport: firefly
Fixes: #8920
Signed-off-by: Sage Weil <sage@redhat.com>