]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
10 years agoerasure-code: implement alignment on chunk sizes 1890/head
Loic Dachary [Tue, 27 May 2014 16:40:45 +0000 (18:40 +0200)]
erasure-code: implement alignment on chunk sizes

jerasure expects chunk sizes that are aligned on the largest possible
vector size that could be used by SSE instructions, when available (
LARGEST_VECTOR_WORDSIZE == 16 bytes ).

For techniques derived from Cauchy, encoding and decoding is done by
subdividing the chunk into packets of packetsize bytes. The operations
are done w * packetsize bytes at a time. It follows that each chunk must
have a size that is a multiple of w * packetsize bytes.

For techniques derived from Vandermonde, it is enough for a chunk to be
a multiple of w * LARGEST_VECTOR_WORDSIZE.

ErasureCodeJerasure::get_alignment returns a size alignment constraint
that has to be enforced as a multiple of the object size. The resulting
object size then has to match the chunk constraints described above
although they have no relationship with K. For Cauchy, it leads to
excessive padding, making it impossible to set sensible parameters for
when the object size is small.

When the per_chunk_alignement data member is true, the semantic of
ErasureCodeJerasure::get_alignment is changed to return a size alignment
constraint to be enforced as a multiple of the chunk size. The
ErasureCodeJerasure::get_chunk_size method is modified to use the new
semantic when appropriate.

The jerasure-per-chunk-alignement parameter is parsed to set
per_chunk_alignement for the Vandermonde and Cauchy techniques.

The memory address of a chunk is implicitly aligned to a page boundary
because it is allocated with buffer::create_page_aligned.

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

Signed-off-by: Loic Dachary <loic@dachary.org>
10 years agoerasure-code: cauchy techniques allow w 8,16,32
Loic Dachary [Tue, 27 May 2014 16:36:09 +0000 (18:36 +0200)]
erasure-code: cauchy techniques allow w 8,16,32

Enforce the restriction at initialization time, the same way it is done
for Reed Solomon. Choosing a w value different from 8,16,32 will lead to
memory corruption that cannot easily be traced to the cause.

Signed-off-by: Loic Dachary <loic@dachary.org>
10 years agodoc/release-notes: fix syntax error
Sage Weil [Sat, 2 Aug 2014 04:19:26 +0000 (21:19 -0700)]
doc/release-notes: fix syntax error

Attempt 2...

ERROR: /srv/autobuild-ceph/gitbuilder.git/build/doc/release-notes.rst:22: Unknown target name: "leveldb".

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoMerge pull request #2188 from wonzhq/obj-mtime
Sage Weil [Sat, 2 Aug 2014 02:27:01 +0000 (19:27 -0700)]
Merge pull request #2188 from wonzhq/obj-mtime

osd: add local_mtime to struct object_info_t

Reviewed-by: Sage Weil <sage@redhat.com>
10 years agoos/KeyValueStore: clean up operator<< for KVSuperBlock
Sage Weil [Sat, 2 Aug 2014 02:24:26 +0000 (19:24 -0700)]
os/KeyValueStore: clean up operator<< for KVSuperBlock

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoMerge pull request #2174 from yuyuyu101/kvstore-superblock
Sage Weil [Sat, 2 Aug 2014 02:23:35 +0000 (19:23 -0700)]
Merge pull request #2174 from yuyuyu101/kvstore-superblock

Kvstore superblock

Reviewed-by: Sage Weil <sage@redhat.com>
10 years agoMerge pull request #2169 from ceph/wip-double-pc
Sage Weil [Sat, 2 Aug 2014 01:01:43 +0000 (18:01 -0700)]
Merge pull request #2169 from ceph/wip-double-pc

mon: s/%%/%/

Realized where these came from; it was an accident.

10 years agoMerge branch 'wip-cache-second'
Sage Weil [Fri, 1 Aug 2014 22:37:33 +0000 (15:37 -0700)]
Merge branch 'wip-cache-second'

Reviewed-by: Samuel Just <sam.just@inktank.com>
10 years agoceph_test_rados_api_tier: test promote-on-second-read behavior
Signed-off-by: Zhiqiang Wang [Thu, 31 Jul 2014 22:49:44 +0000 (15:49 -0700)]
ceph_test_rados_api_tier: test promote-on-second-read behavior

Signed-off-by: Zhiqiang Wang <wonzhq@hotmail.com>
Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoosd: promotion on 2nd read for cache tiering
Zhiqiang Wang [Mon, 28 Jul 2014 06:06:06 +0000 (14:06 +0800)]
osd: promotion on 2nd read for cache tiering

Signed-off-by: Zhiqiang Wang <wonzhq@hotmail.com>
10 years agoMerge pull request #2183 from majianpeng/master
Samuel Just [Fri, 1 Aug 2014 20:31:08 +0000 (13:31 -0700)]
Merge pull request #2183 from majianpeng/master

ECBackend: Using ROUND_UP_TO to refactor function get_recovery_chunk_size()

Reviewed-by: Samuel Just <sam.just@inktank.com>
10 years agoMerge pull request #2175 from majianpeng/fix1
Samuel Just [Fri, 1 Aug 2014 20:30:04 +0000 (13:30 -0700)]
Merge pull request #2175 from majianpeng/fix1

ReplicatedPG: For async-read, set the real result after completing read.

Reviewed-by: Samuel Just <sam.just@inktank.com>
10 years agoMerge pull request #2180 from ceph/wip-ec-isa
Sage Weil [Fri, 1 Aug 2014 17:00:23 +0000 (10:00 -0700)]
Merge pull request #2180 from ceph/wip-ec-isa

osd: add support for intel ISA-L EC library

10 years agoMerge remote-tracking branch 'gh/next'
Sage Weil [Fri, 1 Aug 2014 14:08:28 +0000 (07:08 -0700)]
Merge remote-tracking branch 'gh/next'

10 years agoMerge pull request #2190 from ceph/wip-osd-leaks
Gregory Farnum [Fri, 1 Aug 2014 14:08:16 +0000 (10:08 -0400)]
Merge pull request #2190 from ceph/wip-osd-leaks

osd: do not leak Session* ref in _send_boot()

Reviewed-by: Greg Farnum <greg@inktank.com>
10 years agoMerge pull request #2182 from ceph/wip-round
Gregory Farnum [Fri, 1 Aug 2014 12:11:08 +0000 (08:11 -0400)]
Merge pull request #2182 from ceph/wip-round

use llrintl when converting double to micro

Reviewed-by: Greg Farnum <greg@inktank.com>
10 years agoosd: add local_mtime to struct object_info_t 2188/head
Zhiqiang Wang [Fri, 1 Aug 2014 08:09:50 +0000 (16:09 +0800)]
osd: add local_mtime to struct object_info_t

This fixes a bug when the time of the OSDs and clients are not
synchronized (especially when client is ahead of OSD), and the cache
tier dirty ratio reaches the threshold, the agent skips the flush work
because it thinks the object is too young.

Signed-off-by: Zhiqiang Wang <wonzhq@hotmail.com>
10 years agoMerge branch 'wip-rocksdb'
Sage Weil [Fri, 1 Aug 2014 04:11:44 +0000 (21:11 -0700)]
Merge branch 'wip-rocksdb'

10 years agorocksdb: -Wno-portability
Sage Weil [Thu, 31 Jul 2014 18:08:43 +0000 (11:08 -0700)]
rocksdb: -Wno-portability

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoautogen.sh: debug with -x
Sage Weil [Wed, 30 Jul 2014 19:33:47 +0000 (12:33 -0700)]
autogen.sh: debug with -x

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agodebian, rpm: build rocksdb statically if we can
Sage Weil [Tue, 29 Jul 2014 22:38:18 +0000 (15:38 -0700)]
debian, rpm: build rocksdb statically if we can

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agodebian, rpm: build require bzip2 dev
Sage Weil [Tue, 29 Jul 2014 23:19:02 +0000 (16:19 -0700)]
debian, rpm: build require bzip2 dev

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoadd rocksdb bz2 dep
Sage Weil [Tue, 29 Jul 2014 00:51:06 +0000 (17:51 -0700)]
add rocksdb bz2 dep

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoconfigure: enable static rocksdb if check and c++11
Sage Weil [Tue, 29 Jul 2014 00:03:06 +0000 (17:03 -0700)]
configure: enable static rocksdb if check and c++11

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoMakefile: include rocksdb in dist tarball always
Sage Weil [Mon, 28 Jul 2014 23:42:19 +0000 (16:42 -0700)]
Makefile: include rocksdb in dist tarball always

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoconfigure: verify c++11 is present for rocksdb
Sage Weil [Mon, 28 Jul 2014 23:36:48 +0000 (16:36 -0700)]
configure: verify c++11 is present for rocksdb

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agorocksdb: require less shiny autoconf
Sage Weil [Mon, 28 Jul 2014 21:07:21 +0000 (14:07 -0700)]
rocksdb: require less shiny autoconf

precise has 2.59

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agodo_autogen.sh: build with static librocksdb
Sage Weil [Mon, 28 Jul 2014 21:04:20 +0000 (14:04 -0700)]
do_autogen.sh: build with static librocksdb

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agorocksdb: update submodule makefile
Josh Durgin [Wed, 16 Jul 2014 18:33:03 +0000 (11:33 -0700)]
rocksdb: update submodule makefile

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
10 years agounittest_erasure_code_[plugin_]isa: conditionally compile 2180/head
Sage Weil [Fri, 1 Aug 2014 04:06:08 +0000 (21:06 -0700)]
unittest_erasure_code_[plugin_]isa: conditionally compile

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoosd: do not leak Session* ref in _send_boot() 2190/head
Sage Weil [Fri, 1 Aug 2014 03:59:49 +0000 (20:59 -0700)]
osd: do not leak Session* ref in _send_boot()

The get_priv() call returns a ref; make sure we drop it if it exists.
This doesn't happen on every run because usually it is NULL and we take
the other path; it's only after the OSD has been marked down that we reach
the second path.

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoMerge pull request #2157 from ceph/wip-8937
Yehuda Sadeh [Fri, 1 Aug 2014 01:11:12 +0000 (18:11 -0700)]
Merge pull request #2157 from ceph/wip-8937

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

Reviewed-by: Sage Weil <sage@redhat.com>
10 years agoerasure-code/isa: fix signed/unsigned comparison
Sage Weil [Fri, 1 Aug 2014 00:46:32 +0000 (17:46 -0700)]
erasure-code/isa: fix signed/unsigned comparison

warning: erasure-code/isa/ErasureCodeIsa.cc:313: comparison between signed and unsigned integer expressions

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoerasure-code/isa: don't use typename outside of template
Sage Weil [Fri, 1 Aug 2014 00:45:49 +0000 (17:45 -0700)]
erasure-code/isa: don't use typename outside of template

error: erasure-code/isa/ErasureCodeIsa.h:141: using 'typename' outside of template

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoECBackend: Using ROUND_UP_TO to refactor function get_recovery_chunk_size() 2183/head
Ma Jianpeng [Wed, 30 Jul 2014 03:38:37 +0000 (11:38 +0800)]
ECBackend: Using ROUND_UP_TO to refactor function get_recovery_chunk_size()

Signed-off-by: Ma Jianpeng <jianpeng.ma@intel.com>
10 years agoReplicatedPG: For async-read, set the real result after completing read. 2175/head
Ma Jianpeng [Thu, 31 Jul 2014 02:19:32 +0000 (10:19 +0800)]
ReplicatedPG: For async-read, set the real result after completing read.

When reading an object from replicated pool, ceph uses sync mode,
so it can set the results in execute_ctx correctly.
However, For the async-read in EC Pool, current code didn't set the
real results after read in complete_read_ctx.

Signed-off-by: Ma Jianpeng <jianpeng.ma@intel.com>
10 years agodoc/release-notes: tweak quoting
Sage Weil [Thu, 31 Jul 2014 23:19:09 +0000 (16:19 -0700)]
doc/release-notes: tweak quoting

ERROR: /srv/autobuild-ceph/gitbuilder.git/build/doc/release-notes.rst:22: Unknown target name: "leveldb".

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agouse llrintl when converting double to micro 2182/head
Sage Weil [Thu, 31 Jul 2014 22:39:40 +0000 (15:39 -0700)]
use llrintl when converting double to micro

This avoids rounding error (noticeable on i386).

Backport: firefly
Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoconfigure: check for 'better' yasm that can build ISA-L
Sage Weil [Thu, 31 Jul 2014 22:18:51 +0000 (15:18 -0700)]
configure: check for 'better' yasm that can build ISA-L

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoerasure-code/isa/Makefile: add missing \, and missing headers
Sage Weil [Thu, 31 Jul 2014 18:54:58 +0000 (11:54 -0700)]
erasure-code/isa/Makefile: add missing \, and missing headers

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoyasm-wrapper: fix -f ...
Sage Weil [Thu, 31 Jul 2014 20:43:03 +0000 (13:43 -0700)]
yasm-wrapper: fix -f ...

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoyasm-wrapper: turn -I foo into -i foo
Sage Weil [Thu, 31 Jul 2014 20:42:58 +0000 (13:42 -0700)]
yasm-wrapper: turn -I foo into -i foo

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoyasm-wrapper: echo original args
Sage Weil [Thu, 31 Jul 2014 18:40:03 +0000 (11:40 -0700)]
yasm-wrapper: echo original args

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoEC: add plugin for Intel ISA-L library
Andreas-Joachim Peters [Fri, 20 Jun 2014 15:05:28 +0000 (17:05 +0200)]
EC: add plugin for Intel ISA-L library

10 years agoMerge pull request #2179 from ceph/wip-8982
Samuel Just [Thu, 31 Jul 2014 18:28:04 +0000 (11:28 -0700)]
Merge pull request #2179 from ceph/wip-8982

osd: fix cache pools without hit_sets configured

Reviewed-by: Samuel Just <sam.just@inktank.com>
10 years agomon/OSDMonitor: warn when cache pools do not have hit_sets configured 2179/head
Sage Weil [Thu, 31 Jul 2014 18:02:55 +0000 (11:02 -0700)]
mon/OSDMonitor: warn when cache pools do not have hit_sets configured

Give users a clue when cache pools are enabled but the hit_set is not
configured.  Note that technically this will work, but not well, so for
now let's just steer them away.

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoosd/ReplicatedPG: improve agent_choose_mode args
Sage Weil [Thu, 31 Jul 2014 16:28:12 +0000 (09:28 -0700)]
osd/ReplicatedPG: improve agent_choose_mode args

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agovstart.sh: limit open files
Sage Weil [Thu, 31 Jul 2014 16:26:20 +0000 (09:26 -0700)]
vstart.sh: limit open files

Most users only get 1024 fds.

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoosd/ReplicatedPG: evict blindly if there is no hit_set
Sage Weil [Thu, 31 Jul 2014 16:26:03 +0000 (09:26 -0700)]
osd/ReplicatedPG: evict blindly if there is no hit_set

If there is no hit set for a PG, blindly evict objects.  This avoids an
assert(hit_set) in agent_estimate_atime_temp().

Fixes: #8982
Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoosd/ReplicatedPG: check agent_mode if agent is enabled but hit_sets aren't
Sage Weil [Thu, 31 Jul 2014 16:13:11 +0000 (09:13 -0700)]
osd/ReplicatedPG: check agent_mode if agent is enabled but hit_sets aren't

It is probably not a good idea to try to run the tiering agent without a
hit_set to inform its actions, but it is technically possible.  For
example, one could simply blindly evict when we reach the full point.
However, this doesn't work because the agent mode is guarded by a hit_set
check, even though agent_setup() is not.  Fix that.

Signed-off-by: Sage Weil <sage@redhat.com>
10 years agoMerge pull request #2168 from ceph/wip-8972
Josh Durgin [Thu, 31 Jul 2014 16:55:31 +0000 (09:55 -0700)]
Merge pull request #2168 from ceph/wip-8972

cls_rgw: fix object name of objects removed on object creation

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
11 years agoMerge pull request #2173 from ceph/wip-8969
Gregory Farnum [Thu, 31 Jul 2014 12:59:00 +0000 (08:59 -0400)]
Merge pull request #2173 from ceph/wip-8969

fix i386 atomics

Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agoMerge pull request #1990 from dachary/wip-erasure-code-profile-default
Loic Dachary [Thu, 31 Jul 2014 12:16:32 +0000 (18:01 +0545)]
Merge pull request #1990 from dachary/wip-erasure-code-profile-default

erasure-code: create default profile if necessary

Reviewed-by: Joao Eduardo Luis <jluis@redhat.com>
11 years agoMerge pull request #2162 from ceph/wip-8586
Sage Weil [Thu, 31 Jul 2014 03:57:06 +0000 (20:57 -0700)]
Merge pull request #2162 from ceph/wip-8586

rgw: fix crash in swift CORS preflight request

Reviewed-by: Sage Weil <sage@redhat.com>
11 years agoFileStore: Add omap_backend to "<<" operator 2174/head
Haomai Wang [Thu, 31 Jul 2014 02:14:27 +0000 (10:14 +0800)]
FileStore: Add omap_backend to "<<" operator

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
11 years agoAdd superblock to KeyValueStore
Haomai Wang [Thu, 31 Jul 2014 02:13:31 +0000 (10:13 +0800)]
Add superblock to KeyValueStore

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
11 years agoKeyValueStore: use generic KeyValueDB::create()
Haomai Wang [Thu, 31 Jul 2014 01:51:40 +0000 (09:51 +0800)]
KeyValueStore: use generic KeyValueDB::create()

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
11 years agomon/OSDMonitor: fix i386 floating point rounding error 2173/head
Sage Weil [Thu, 31 Jul 2014 00:50:39 +0000 (17:50 -0700)]
mon/OSDMonitor: fix i386 floating point rounding error

This would round .123 to .122999 on i386; now it does not.

Backport: firefly
Signed-off-by: Sage Weil <sage@redhat.com>
11 years agoMerge pull request #2171 from ceph/wip-cli-integration
Josh Durgin [Wed, 30 Jul 2014 23:57:38 +0000 (16:57 -0700)]
Merge pull request #2171 from ceph/wip-cli-integration

fix rbd cli-integratoin tests

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
11 years agoMerge pull request #2164 from ceph/wip-8944
Sage Weil [Wed, 30 Jul 2014 21:56:34 +0000 (14:56 -0700)]
Merge pull request #2164 from ceph/wip-8944

ceph.in: Pass global args to ceph-conf for proper lookup

Backport: firefly
Reviewed-by: Sage Weil <sage@redhat.com>
11 years agoqa/workunits/cephtool/test_daemon.sh: verify ceph -c works with daemon 2164/head
Dan Mick [Wed, 30 Jul 2014 21:50:37 +0000 (14:50 -0700)]
qa/workunits/cephtool/test_daemon.sh: verify ceph -c works with daemon

Signed-off-by: Dan Mick <dan.mick@inktank.com>
11 years agoqa/workunits/cephtool/test_daemon.sh: typo
Dan Mick [Wed, 30 Jul 2014 21:49:02 +0000 (14:49 -0700)]
qa/workunits/cephtool/test_daemon.sh: typo

Signed-off-by: Dan Mick <dan.mick@inktank.com>
11 years agoqa/workunits/cephtool/test_daemon.sh: allow local ceph command
Dan Mick [Wed, 30 Jul 2014 21:48:28 +0000 (14:48 -0700)]
qa/workunits/cephtool/test_daemon.sh: allow local ceph command

11 years agoatomic: fix read() on i386, clean up types
Sage Weil [Wed, 30 Jul 2014 21:52:06 +0000 (14:52 -0700)]
atomic: fix read() on i386, clean up types

Among other things, fixes #8969

Backport: firefly
Signed-off-by: Sage Weil <sage@redhat.com>
11 years agoceph.in: Pass global args to ceph-conf for proper lookup
Dan Mick [Tue, 29 Jul 2014 04:28:42 +0000 (21:28 -0700)]
ceph.in: Pass global args to ceph-conf for proper lookup

Fixes: #8944
Signed-off-by: Dan Mick <dan.mick@inktank.com>
11 years agotest/cli-integration/rbd: fix trailing space 2171/head
Sage Weil [Wed, 30 Jul 2014 20:40:33 +0000 (13:40 -0700)]
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>
11 years agomon: s/%%/%/ 2169/head
Sage Weil [Wed, 30 Jul 2014 19:26:44 +0000 (12:26 -0700)]
mon: s/%%/%/

Signed-off-by: Sage Weil <sage@redhat.com>
11 years agoMerge pull request #2163 from ceph/wip-filestore-omap
Sage Weil [Wed, 30 Jul 2014 19:07:35 +0000 (12:07 -0700)]
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>
11 years agocls_rgw: fix object name of objects removed on object creation 2168/head
Yehuda Sadeh [Wed, 30 Jul 2014 18:53:16 +0000 (11:53 -0700)]
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>
11 years agoerasure-code: create default profile if necessary 1990/head
Loic Dachary [Wed, 18 Jun 2014 22:49:13 +0000 (00:49 +0200)]
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>
11 years agorocksdb backend optimization
xinxin shu [Mon, 16 Jun 2014 00:27:22 +0000 (08:27 +0800)]
rocksdb backend optimization

Signed-off-by: xinxin shu <xinxin.shu@intel.com>
11 years agoadd --with-librocksdb-static configure options
xinxin shu [Wed, 28 May 2014 02:11:37 +0000 (10:11 +0800)]
add --with-librocksdb-static configure options

with this options, ceph will build rocksdb from submodule

Signed-off-by: xinxin shu <xinxin.shu@intel.com>
11 years agoget a stable rocksdb (3.0)
xinxin shu [Mon, 30 Jun 2014 01:11:04 +0000 (09:11 +0800)]
get a stable rocksdb (3.0)

Signed-off-by: xinxin shu <xinxin.shu@intel.com>
11 years agoadd rocksdb submodule
Sage Weil [Tue, 20 May 2014 00:39:57 +0000 (17:39 -0700)]
add rocksdb submodule

11 years agoadd rocksdb support
xinxinsh [Tue, 18 Feb 2014 01:27:44 +0000 (09:27 +0800)]
add rocksdb support

Signed-off-by: xinxin shu <xinxin.shu@intel.com>
11 years agoos/KeyValueStore: rename osd_keyvaluedb -> keyvaluestore_backend 2163/head
Sage Weil [Wed, 30 Jul 2014 04:41:56 +0000 (21:41 -0700)]
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>
11 years agoos/FileStore: use generic KeyValueDB::create(); store omap_backend in superblock
Sage Weil [Tue, 27 May 2014 22:51:34 +0000 (15:51 -0700)]
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>
11 years agomon/MonitorDBStore: use generic KeyValueDB::create()
Sage Weil [Tue, 1 Apr 2014 01:04:35 +0000 (18:04 -0700)]
mon/MonitorDBStore: use generic KeyValueDB::create()

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoos/KeyValueDB: make compaction interface generic
Sage Weil [Tue, 1 Apr 2014 01:05:13 +0000 (18:05 -0700)]
os/KeyValueDB: make compaction interface generic

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoos/KeyValueDB: generic create(), test_init()
xinxinsh [Tue, 1 Apr 2014 00:55:16 +0000 (17:55 -0700)]
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>
11 years agoconfig: allow unsafe setting of config values
Sage Weil [Mon, 31 Mar 2014 22:36:26 +0000 (15:36 -0700)]
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>
11 years agodoc/release-notes: v0.83 2151/head
Sage Weil [Tue, 29 Jul 2014 23:53:09 +0000 (16:53 -0700)]
doc/release-notes: v0.83

Signed-off-by: Sage Weil <sage@redhat.com>
11 years agoMerge tag 'v0.83'
Sage Weil [Tue, 29 Jul 2014 23:23:12 +0000 (16:23 -0700)]
Merge tag 'v0.83'

v0.83

11 years agoMerge pull request #2161 from ceph/wip-jcsp-test
John Spray [Tue, 29 Jul 2014 22:55:30 +0000 (23:55 +0100)]
Merge pull request #2161 from ceph/wip-jcsp-test

Reviewed-by: Greg Farnum greg@inktank.com
11 years agorgw: fix crash in swift CORS preflight request 2162/head
Yehuda Sadeh [Tue, 29 Jul 2014 22:25:47 +0000 (15:25 -0700)]
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>
11 years agomds: remove some rogue "using namespace std;" 2161/head
John Spray [Tue, 22 Jul 2014 01:42:15 +0000 (02:42 +0100)]
mds: remove some rogue "using namespace std;"

Signed-off-by: John Spray <john.spray@redhat.com>
11 years agomds: handle replaying old format journals
John Spray [Tue, 22 Jul 2014 01:08:08 +0000 (02:08 +0100)]
mds: handle replaying old format journals

To get back to the reformatting procedure that otherwise
occurs during MDLog::open, introduce an MDLog::reopen call
that MDS can use in the standbyreplay->standby transition
for the special case where the journal is old.

Fixes: #8869
Signed-off-by: John Spray <john.spray@redhat.com>
11 years agomds: introduce explicit DaemonState instead of int
John Spray [Mon, 21 Jul 2014 19:22:46 +0000 (20:22 +0100)]
mds: introduce explicit DaemonState instead of int

Signed-off-by: John Spray <john.spray@redhat.com>
11 years agomds: refactor MDS boot
John Spray [Mon, 21 Jul 2014 17:50:07 +0000 (18:50 +0100)]
mds: refactor MDS boot

* Make boot_start private.
* Define boot stages in enum, replace int with type.
* Merge steps 0 and 1, 0 always fell through to 1.
* starting_done was only ever reached by a fall through
  from the previous step, so call it directly from there.

Signed-off-by: John Spray <john.spray@redhat.com>
11 years agomds: make MDS::replay_done clearer
John Spray [Mon, 21 Jul 2014 16:08:46 +0000 (17:08 +0100)]
mds: make MDS::replay_done clearer

... and add some assertions.

Signed-off-by: John Spray <john.spray@redhat.com>
11 years agomds: remove unused purge_prealloc_ino
John Spray [Tue, 22 Jul 2014 11:16:26 +0000 (12:16 +0100)]
mds: remove unused purge_prealloc_ino

Signed-off-by: John Spray <john.spray@redhat.com>
11 years agomds: separate inode recovery queue from MDCache
John Spray [Thu, 17 Jul 2014 23:44:38 +0000 (00:44 +0100)]
mds: separate inode recovery queue from MDCache

Refactor to:
* have somewhere to put some logic for doing
  background recovery in future.
* trim a few lines from the oversized MDCache.cc
  whereever we can.

Signed-off-by: John Spray <john.spray@redhat.com>
11 years agopython-ceph: require libcephfs.
Sandon Van Ness [Tue, 29 Jul 2014 21:11:03 +0000 (14:11 -0700)]
python-ceph: require libcephfs.

Signed-off-by: Sandon Van Ness <sandon@inktank.com>
11 years ago0.83 v0.83
Jenkins [Tue, 29 Jul 2014 20:42:53 +0000 (13:42 -0700)]
0.83

11 years agoMerge pull request #2159 from ceph/wip-undump
Gregory Farnum [Tue, 29 Jul 2014 20:40:31 +0000 (16:40 -0400)]
Merge pull request #2159 from ceph/wip-undump

tools/cephfs: fuller header in dump/undump

Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agoRemove reference from mkcephfs.
Sandon Van Ness [Mon, 28 Jul 2014 17:38:41 +0000 (10:38 -0700)]
Remove reference from mkcephfs.

A bit of colission from spec changes for the rhel7/ceph-common
changes and alfredo's pull request for wip-die-ceph-mkcephfs.

Signed-off-by: Sandon Van Ness <sandon@inktank.com>
(cherry picked from commit 1526546ddcfd4230403d0d2364575c4e46970f8d)

11 years agoMerge pull request #2156 from ceph/wip-upstart-nfile
Gregory Farnum [Tue, 29 Jul 2014 19:36:19 +0000 (15:36 -0400)]
Merge pull request #2156 from ceph/wip-upstart-nfile

upstart/ceph-osd.conf: bump nofile limit up by 10x

Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agodoc/release-notes: typo
Sage Weil [Tue, 29 Jul 2014 19:33:52 +0000 (12:33 -0700)]
doc/release-notes: typo

Signed-off-by: Sage Weil <sage@redhat.com>
11 years agodoc/release-notes: v0.80.5 release notes
Sage Weil [Tue, 29 Jul 2014 19:23:33 +0000 (12:23 -0700)]
doc/release-notes: v0.80.5 release notes

Signed-off-by: Sage Weil <sage@redhat.com>
11 years agoMerge remote-tracking branch 'gh/next'
Sage Weil [Tue, 29 Jul 2014 18:16:24 +0000 (11:16 -0700)]
Merge remote-tracking branch 'gh/next'