]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
12 years agoceph_test_rados: remove useless snapc setup 654/head
Sage Weil [Fri, 27 Sep 2013 18:23:38 +0000 (11:23 -0700)]
ceph_test_rados: remove useless snapc setup

We update this on snap create and delete; no need to do it any other
time.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoceph_test_rados: update for copy_from in begin, not finish
Sage Weil [Fri, 27 Sep 2013 17:57:46 +0000 (10:57 -0700)]
ceph_test_rados: update for copy_from in begin, not finish

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoceph_test_rados: improve debug output
Sage Weil [Thu, 26 Sep 2013 22:52:16 +0000 (15:52 -0700)]
ceph_test_rados: improve debug output

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoceph_test_rados: fix update_object_full
Sage Weil [Fri, 27 Sep 2013 01:14:46 +0000 (18:14 -0700)]
ceph_test_rados: fix update_object_full

Update at current snap, not the last snap we did an update.

Broken this this was introduced in 996af2d8fd8e60bcdce8e9408249b974521de24e

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #631 from ceph/wip-5857-8
athanatos [Thu, 26 Sep 2013 19:01:19 +0000 (12:01 -0700)]
Merge pull request #631 from ceph/wip-5857-8

Wip 5857 8

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #546 from ceph/wip-5862
athanatos [Thu, 26 Sep 2013 19:00:22 +0000 (12:00 -0700)]
Merge pull request #546 from ceph/wip-5862

Wip 5862

Reviewed-by: Samuel Just <sam.just@inktank.com>
12 years agoos: Make write_version_stamp() private 546/head
David Zafman [Tue, 24 Sep 2013 21:42:36 +0000 (14:42 -0700)]
os: Make write_version_stamp() private

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agoosd: Remove code for reading ancient unsupported logs
David Zafman [Tue, 24 Sep 2013 01:40:27 +0000 (18:40 -0700)]
osd: Remove code for reading ancient unsupported logs

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agoos/ObjectStore: Interim collection_list* functions in ObjectStore
David Zafman [Mon, 23 Sep 2013 20:02:16 +0000 (13:02 -0700)]
os/ObjectStore: Interim collection_list* functions in ObjectStore

Handle ghobject_t to hobject_t conv of collection_list* funcs
Temporary code so that this branch doesn't break master

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agoosd: Cleanup init()/read_superblock()
David Zafman [Wed, 18 Sep 2013 01:14:16 +0000 (18:14 -0700)]
osd: Cleanup init()/read_superblock()

Fix error handling in init()
Cleanup read_superblock() by moving unrelated code into init()
Move init() feature upgrade right after compatibility checking
Remove redundant whoami check

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agocommon, os, osd, test, tools: FileStore must work with ghobjects rather than hobjects
David Zafman [Fri, 20 Sep 2013 01:54:36 +0000 (18:54 -0700)]
common, os, osd, test, tools: FileStore must work with ghobjects rather than hobjects

Add ghobject_t to hboject.h header
Add constants NO_SHARD/NO_GEN and change gen_t/shard_t
Convert other headers from hobject_t to ghobject_t
Mostly straight hobject_t to ghobject_t for src/os cc files
Fix tools and tests and enable ceph-dencoder
Add filename generation and parsing including unittest addition
Get ceph-filestore-dump to build
Add gen/shard to DBObjectMap::ghobject_key() and update test case
Add CEPH_FS_FEATURE_INCOMPAT_SHARDS new FileStore feature
Add CEPH_OSD_FEATURE_INCOMPAT_SHARDS new osd feature

Fixes: #5862
Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agoinclude, test: Add CompatSet::merge() operation
David Zafman [Wed, 18 Sep 2013 00:04:54 +0000 (17:04 -0700)]
include, test: Add CompatSet::merge() operation

New func merge() adds missing features from specified CompatSet
Add merge testing to unittest

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agoos, osd, tools: Add backportable compatibility checking for sharded objects
David Zafman [Wed, 25 Sep 2013 16:19:16 +0000 (09:19 -0700)]
os, osd, tools: Add backportable compatibility checking for sharded objects

OSD
  New CEPH_OSD_FEATURE_INCOMPAT_SHARDS
FileStore
  NEW CEPH_FS_FEATURE_INCOMPAT_SHARDS
  Add FSSuperblock with feature CompatSet in it
  Store sharded_objects state using CompatSet
  Add set_allow_sharded_objects() and get_allow_sharded_objects() to FileStore/ObjectStore
  Add read_superblock()/write_superblock() internal filestore functions
ceph_filestore_dump
  Add OSDsuperblock to export format
  Use CompatSet from OSD code itself in filestore-dump tool
  Always check compatibility of OSD features with on-disk features
  On import verify compatibility of on-disk features with export data
  Bump super_ver due to export format change

Backport: dumpling, cuttlefish

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agoosd: read_superblock() not outputing unsupported features when incompatible
David Zafman [Tue, 17 Sep 2013 21:59:15 +0000 (14:59 -0700)]
osd: read_superblock() not outputing unsupported features when incompatible

Use working version of CompatSet::unsupported() to improve log output

Backport: dumpling, cuttlefish

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agotest: Adding unittest for CompatSet
David Zafman [Wed, 18 Sep 2013 19:42:32 +0000 (12:42 -0700)]
test: Adding unittest for CompatSet

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agoinclude: Bug fixes for CompatSet
David Zafman [Tue, 17 Sep 2013 20:39:57 +0000 (13:39 -0700)]
include: Bug fixes for CompatSet

FeatureSet insert/remove
  Use 64-bit arithmetic to allow features past 31
  Allow feature 63 by fixing assert in insert
CompatSet::unsupported() bugs
  Ignore feature 0 which became illegal
  Use 64-bit arithmetic when computing mask
  Use id in insert() and to get correct feature name
  Use the right map to get name for diff.ro_compat

Caused by 80979bbe92409e6f098566e18be6ed59ad9d111a
Caused by 470796b5456592ee5179bbd44b72910a2d7f6aca

Backport: dumpling, cuttlefish

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agoos: Fix version_stamp_is_valid() and write_version_stamp() error return
David Zafman [Sat, 14 Sep 2013 01:04:29 +0000 (18:04 -0700)]
os: Fix version_stamp_is_valid() and write_version_stamp() error return

Caused by 341fb208aa32117f58ed4ce623f4b152f64ac72e

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agoReplicatedPG: take obc read lock prior to recovering an object to replicas 631/head
Samuel Just [Wed, 25 Sep 2013 05:47:36 +0000 (22:47 -0700)]
ReplicatedPG: take obc read lock prior to recovering an object to replicas

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedBackend::handle_pull_response: use list<ObjectContextRef>
Samuel Just [Tue, 24 Sep 2013 23:23:39 +0000 (16:23 -0700)]
ReplicatedBackend::handle_pull_response: use list<ObjectContextRef>

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG: remove noop C_OSD_CompletedPull
Samuel Just [Tue, 24 Sep 2013 23:17:33 +0000 (16:17 -0700)]
ReplicatedPG: remove noop C_OSD_CompletedPull

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG: assert build_push_op succeeds on primary
Samuel Just [Tue, 24 Sep 2013 19:33:37 +0000 (12:33 -0700)]
ReplicatedPG: assert build_push_op succeeds on primary

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG.h: remove temp_coll stub
Samuel Just [Mon, 16 Sep 2013 16:35:16 +0000 (09:35 -0700)]
ReplicatedPG.h: remove temp_coll stub

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoOSD,ReplicatedPG: queue pushes in a op_tp workqueue
Samuel Just [Sat, 14 Sep 2013 07:45:00 +0000 (00:45 -0700)]
OSD,ReplicatedPG: queue pushes in a op_tp workqueue

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG: don't proceed to backfill until recovering is empty
Samuel Just [Fri, 13 Sep 2013 23:07:29 +0000 (16:07 -0700)]
ReplicatedPG: don't proceed to backfill until recovering is empty

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG: correctly handle backfill
Samuel Just [Mon, 9 Sep 2013 23:08:30 +0000 (16:08 -0700)]
ReplicatedPG: correctly handle backfill

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG/Backend: fix up recalc_subsets
Samuel Just [Mon, 9 Sep 2013 22:48:50 +0000 (15:48 -0700)]
ReplicatedPG/Backend: fix up recalc_subsets

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedBackend: wire in start_pushes
Samuel Just [Mon, 9 Sep 2013 22:41:10 +0000 (15:41 -0700)]
ReplicatedBackend: wire in start_pushes

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedBackend: handle stats properly
Samuel Just [Mon, 9 Sep 2013 21:31:13 +0000 (14:31 -0700)]
ReplicatedBackend: handle stats properly

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedBackend: track object contexts in Push/PullInfo
Samuel Just [Mon, 9 Sep 2013 20:20:29 +0000 (13:20 -0700)]
ReplicatedBackend: track object contexts in Push/PullInfo

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedBackend: remove priority from Pull/PushInfo
Samuel Just [Mon, 9 Sep 2013 20:20:06 +0000 (13:20 -0700)]
ReplicatedBackend: remove priority from Pull/PushInfo

Instead, we'll just nab the priority from the messages.

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG/Backend: move prep_push and friends to ReplicatedBackend
Samuel Just [Mon, 9 Sep 2013 18:25:10 +0000 (11:25 -0700)]
ReplicatedPG/Backend: move prep_push and friends to ReplicatedBackend

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG: remove pushing/pulling
Samuel Just [Mon, 9 Sep 2013 18:23:28 +0000 (11:23 -0700)]
ReplicatedPG: remove pushing/pulling

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG/Backend: handle down pull sources
Samuel Just [Thu, 5 Sep 2013 21:30:46 +0000 (14:30 -0700)]
ReplicatedPG/Backend: handle down pull sources

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG/Backend: split recover_missing out of prepare_pull
Samuel Just [Tue, 3 Sep 2013 22:39:18 +0000 (15:39 -0700)]
ReplicatedPG/Backend: split recover_missing out of prepare_pull

Also, move prepare_pull to PGBackend.

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG/Backend: shuffle over submit_push_*/build_push_op
Samuel Just [Tue, 3 Sep 2013 18:05:35 +0000 (11:05 -0700)]
ReplicatedPG/Backend: shuffle over submit_push_*/build_push_op

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG/Backend: move over send_pushes/send_pulls/prep_push_op_blank
Samuel Just [Sun, 1 Sep 2013 21:35:27 +0000 (14:35 -0700)]
ReplicatedPG/Backend: move over send_pushes/send_pulls/prep_push_op_blank

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG/Backend: move over _failed_push
Samuel Just [Sun, 1 Sep 2013 21:18:28 +0000 (14:18 -0700)]
ReplicatedPG/Backend: move over _failed_push

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG/Backend: move handle_*
Samuel Just [Sun, 1 Sep 2013 21:01:21 +0000 (14:01 -0700)]
ReplicatedPG/Backend: move handle_*

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG/Backend: shuffle do_pull/do_push_reply
Samuel Just [Sun, 1 Sep 2013 20:49:53 +0000 (13:49 -0700)]
ReplicatedPG/Backend: shuffle do_pull/do_push_reply

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG/Backend: move _do_push,_do_pull_response,do_push
Samuel Just [Sun, 1 Sep 2013 20:44:09 +0000 (13:44 -0700)]
ReplicatedPG/Backend: move _do_push,_do_pull_response,do_push

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG/Backend: convert sub_op_pull
Samuel Just [Sun, 1 Sep 2013 20:33:58 +0000 (13:33 -0700)]
ReplicatedPG/Backend: convert sub_op_pull

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG: make log_subop_stats static
Samuel Just [Sun, 1 Sep 2013 20:33:42 +0000 (13:33 -0700)]
ReplicatedPG: make log_subop_stats static

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG/Backend: shuffle sub_op_push_reply
Samuel Just [Fri, 30 Aug 2013 22:47:18 +0000 (15:47 -0700)]
ReplicatedPG/Backend: shuffle sub_op_push_reply

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG/Backend: shuffle sub_op_push over to ReplicatedBackend
Samuel Just [Fri, 30 Aug 2013 21:25:32 +0000 (14:25 -0700)]
ReplicatedPG/Backend: shuffle sub_op_push over to ReplicatedBackend

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoosd/: allow dout for ReplicatedBackend methods to work in ReplicatedPG.cc
Samuel Just [Tue, 27 Aug 2013 02:54:37 +0000 (19:54 -0700)]
osd/: allow dout for ReplicatedBackend methods to work in ReplicatedPG.cc

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG: extract PGBackend::Listener recovery callbacks
Samuel Just [Fri, 30 Aug 2013 01:46:21 +0000 (18:46 -0700)]
ReplicatedPG: extract PGBackend::Listener recovery callbacks

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoPG,ReplicatedPG: handle do_request in ReplicatedPG,PGBackend
Samuel Just [Fri, 30 Aug 2013 01:16:55 +0000 (18:16 -0700)]
PG,ReplicatedPG: handle do_request in ReplicatedPG,PGBackend

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG: pass on dump_recovery_info to PGBackend
Samuel Just [Fri, 30 Aug 2013 01:15:43 +0000 (18:15 -0700)]
ReplicatedPG: pass on dump_recovery_info to PGBackend

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoOSD,ReplicatedPG: let PGBackend handle the temp collection
Samuel Just [Fri, 30 Aug 2013 01:15:19 +0000 (18:15 -0700)]
OSD,ReplicatedPG: let PGBackend handle the temp collection

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoosd/: add PGBackend interfaces and stubs
Samuel Just [Fri, 30 Aug 2013 01:13:26 +0000 (18:13 -0700)]
osd/: add PGBackend interfaces and stubs

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG: Allow get_object_context caller to provide attributes
Samuel Just [Sat, 14 Sep 2013 00:13:45 +0000 (17:13 -0700)]
ReplicatedPG: Allow get_object_context caller to provide attributes

This will be used by PGBackend implementers to get the SnapSet
and ObjectInfo for newly recovered objects on the primary.

get_object_context may be called on a missing object for a lost_revert

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoReplicatedPG: send_push is unused
Samuel Just [Sun, 1 Sep 2013 21:23:34 +0000 (14:23 -0700)]
ReplicatedPG: send_push is unused

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoFileStore: ping tphandle between each operation within a transaction
Samuel Just [Fri, 13 Sep 2013 22:58:33 +0000 (15:58 -0700)]
FileStore: ping tphandle between each operation within a transaction

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoWorkQueue: add a workqueue which simply runs queued GenContexts
Samuel Just [Sat, 14 Sep 2013 02:49:17 +0000 (19:49 -0700)]
WorkQueue: add a workqueue which simply runs queued GenContexts

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoMerge pull request #644 from ceph/wip-6345
Sage Weil [Thu, 26 Sep 2013 17:42:09 +0000 (10:42 -0700)]
Merge pull request #644 from ceph/wip-6345

reverse the order of the mons in the init script when stopping

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #606 from ceph/wip-6332
Gregory Farnum [Thu, 26 Sep 2013 17:30:44 +0000 (10:30 -0700)]
Merge pull request #606 from ceph/wip-6332

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agomon: don't list "--yes-i-really-mean-it" options as required 606/head
Greg Farnum [Wed, 25 Sep 2013 22:55:10 +0000 (15:55 -0700)]
mon: don't list "--yes-i-really-mean-it" options as required

By default options are required, and that leads to the Ceph CLI making
users add this to their commands before even submitting it to the monitor. We
want them to see and think about the messages generated by the monitor!

Signed-off-by: Greg Farnum <greg@inktank.com>
Signed-off-by: Loic Dachary <loic@dachary.org>
12 years agoMerge remote-tracking branch 'gh/next'
Sage Weil [Thu, 26 Sep 2013 17:21:54 +0000 (10:21 -0700)]
Merge remote-tracking branch 'gh/next'

12 years agodo not quote the variable to loop over 644/head
Alfredo Deza [Thu, 26 Sep 2013 17:10:26 +0000 (13:10 -0400)]
do not quote the variable to loop over

Signed-off-by: Alfredo Deza <alfredo.deza@inktank.com>
12 years agomsg/msg_types: use proper NI_MAXSERV when formatting an IP address
Sage Weil [Thu, 26 Sep 2013 04:10:13 +0000 (21:10 -0700)]
msg/msg_types: use proper NI_MAXSERV when formatting an IP address

May as well be pedantic about it, even though we are leaving the port
in numeric form.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agoreverse the order of the mons in the init script when stopping
Alfredo Deza [Thu, 26 Sep 2013 16:49:19 +0000 (12:49 -0400)]
reverse the order of the mons in the init script when stopping

Signed-off-by: Alfredo Deza <alfredo.deza@inktank.com>
12 years agoqa: update snaps workunits for allow_new_snaps flag
Greg Farnum [Wed, 25 Sep 2013 23:02:02 +0000 (16:02 -0700)]
qa: update snaps workunits for allow_new_snaps flag

Test that it works in snaptest-0.sh, and set the flag in
all the snap workunits so they continue to function.

Signed-off-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Loic Dachary <loic@dachary.org>
12 years agoMDS: lock out snapshots until after a flag has been set in the MDSMap
Greg Farnum [Wed, 25 Sep 2013 22:52:50 +0000 (15:52 -0700)]
MDS: lock out snapshots until after a flag has been set in the MDSMap

This way users can't put snapshots on their clusters unless they explicitly
ask for them and have seen a warning message. We take a bit of the MDSMap
flags in order to do so. The only thing a little weird here is that anybody
who upgrades to this patch who already has snapshots will hit the EPERM
and have to go through the warning, but it doesn't impact existing snapshots
at all so they should be good.

To go along with this, we add "ever_allowed_snaps" and "explicitly_allowed_snaps"
members to the MDSMap, which are default to false and are set to true
when allow_new_snaps is set. Old maps decoded with new code default to true
and false, respectively, so we can tell.

Fixes: #6332
Signed-off-by: Greg Farnum <greg@inktank.com>
Signed-off-by: Loic Dachary <loic@dachary.org>
12 years agomds: properly return log replay error
Yan, Zheng [Thu, 26 Sep 2013 07:01:03 +0000 (15:01 +0800)]
mds: properly return log replay error

The only context that should see this is
C_MDS_BootStart, and it is prepared for failures,
so there's no reason to always return 0.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
12 years agocommon/crc32c_intel_fast: fix compile-time #ifdef
Sage Weil [Wed, 4 Sep 2013 20:14:14 +0000 (13:14 -0700)]
common/crc32c_intel_fast: fix compile-time #ifdef

This wasn't getting built in!

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
(cherry picked from commit 3233336cc3b6c2c1e89fe6c6d21d42e0f2cce142)

12 years agoMerge pull request #632 from ceph/wip-rworder
Sage Weil [Thu, 26 Sep 2013 03:42:30 +0000 (20:42 -0700)]
Merge pull request #632 from ceph/wip-rworder

fix up read vs write ordering flags; make ceph_test_rados use it

Reviewed-by: Greg Farnum <greg@inktank.com>
12 years agoContext: add GenContext templated on the callback argument
Samuel Just [Sat, 14 Sep 2013 02:48:56 +0000 (19:48 -0700)]
Context: add GenContext templated on the callback argument

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agomds/Server: fix LOOKUPSNAP
Sage Weil [Fri, 28 Jun 2013 19:51:07 +0000 (12:51 -0700)]
mds/Server: fix LOOKUPSNAP

The current LOOKUPSNAP code path was dereferencing mdr->dn[0] and getting
SEGV.  Instead, set the do_lookup arg to false for getattr so that we do
not try to dereference this; for snaps it will always be NULL as we are
constructing a fake namespace for the .snap directory.  (This happens in
the path_traverse, the result of which is to set snapid--without any real
dentry).

With this fix, snaptest-0.sh passes.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
12 years agoMerge pull request #640 from ceph/wip-mon-pgmap
Sage Weil [Wed, 25 Sep 2013 23:08:05 +0000 (16:08 -0700)]
Merge pull request #640 from ceph/wip-mon-pgmap

fix mon crash when osdmap and pgmap aren't yet synced

Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
12 years agomon/PGMonitor: fix segfault when osdmap and pgmap stats are out of sync 640/head
Sage Weil [Wed, 25 Sep 2013 22:47:28 +0000 (15:47 -0700)]
mon/PGMonitor: fix segfault when osdmap and pgmap stats are out of sync

The leader mon is responsible for propagating changes in the osdmap
into the pgmap (e.g., when a pool or osd goes away).  If that hasn't
happened yet, the pg_map map will be out of sync with the current set
of pools.  We shouldn't crash.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #637 from dachary/master
Sage Weil [Wed, 25 Sep 2013 22:39:22 +0000 (15:39 -0700)]
Merge pull request #637 from dachary/master

mailmap: add Matthew Roy, Matthew Wodrich

12 years agoMerge pull request #639 from ceph/wip-gtest
Sage Weil [Wed, 25 Sep 2013 22:39:01 +0000 (15:39 -0700)]
Merge pull request #639 from ceph/wip-gtest

Makefile: don't use srcdir in TESTS

Reviewed-by: Roald J. van Loon <roaldvanloon@gmail.com>
12 years agoMakefile: don't use srcdir in TESTS 639/head
Sage Weil [Wed, 25 Sep 2013 20:37:13 +0000 (13:37 -0700)]
Makefile: don't use srcdir in TESTS

src/Makefile-env.am:31: error: using '$(srcdir)' in TESTS is currently broken: '$(srcdir)/unittest_bufferlist.sh'
src/Makefile.am:1:   'src/Makefile-env.am' included from here
src/Makefile-env.am:31: error: using '$(srcdir)' in TESTS is currently broken: '$(srcdir)/test/encoding/check-generated.sh'
src/Makefile.am:1:   'src/Makefile-env.am' included from here

on my (raring) laptop.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agomailmap: add Matthew Roy, Matthew Wodrich 637/head
Loic Dachary [Wed, 25 Sep 2013 17:46:27 +0000 (19:46 +0200)]
mailmap: add Matthew Roy, Matthew Wodrich

Signed-off-by: Loic Dachary <loic@dachary.org>
12 years agoqa/workunits/mon/crush_ops.sh: fix test
Sage Weil [Wed, 25 Sep 2013 17:10:21 +0000 (10:10 -0700)]
qa/workunits/mon/crush_ops.sh: fix test

Fix root.

Fixes: #6392
Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #615 from dachary/wip-jerasure-copy
Sage Weil [Wed, 25 Sep 2013 16:31:58 +0000 (09:31 -0700)]
Merge pull request #615 from dachary/wip-jerasure-copy

ErasureCode: get rid of extra copy when encoding

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #634 from dachary/master
Sage Weil [Wed, 25 Sep 2013 16:23:48 +0000 (09:23 -0700)]
Merge pull request #634 from dachary/master

git: consolidate mails in commit logs

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #636 from dachary/wip-get_command_description
Sage Weil [Wed, 25 Sep 2013 16:23:21 +0000 (09:23 -0700)]
Merge pull request #636 from dachary/wip-get_command_description

autoconf: remove get_command_descriptions  dependency to gtest

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoErasureCode: get rid of extra copy when encoding 615/head
Loic Dachary [Sat, 21 Sep 2013 13:05:22 +0000 (15:05 +0200)]
ErasureCode: get rid of extra copy when encoding

The substr_of bufferlist method is used to reduce the copies to the
strict minimum. It is both able to split bufferptr when they are larger
than a chunk and to concatenate them when they are smaller.

Signed-off-by: Loic Dachary <loic@dachary.org>
12 years agoautoconf: remove get_command_descriptions dependency to gtest 636/head
Loic Dachary [Wed, 25 Sep 2013 10:51:28 +0000 (12:51 +0200)]
autoconf: remove get_command_descriptions  dependency to gtest

It is not required and a leftover of the time when it was a unit test
which was a mistake to begin with. It has been reported to create
dependencies problems in some cases, when gest is not available at the
time get_command_descriptions is compiled.

Signed-off-by: Loic Dachary <loic@dachary.org>
12 years agogit: consolidate mails in commit logs 634/head
Loic Dachary [Tue, 24 Sep 2013 21:23:59 +0000 (23:23 +0200)]
git: consolidate mails in commit logs

Map duplicate mails / names in commit logs to a single canonical names.
Useful to report to management with git shortlog -nes

Signed-off-by: Loic Dachary <loic@dachary.org>
12 years agoMerge remote-tracking branch 'gh/next'
Sage Weil [Wed, 25 Sep 2013 04:46:47 +0000 (21:46 -0700)]
Merge remote-tracking branch 'gh/next'

Conflicts:
src/osd/ReplicatedPG.cc

12 years agoMerge pull request #633 from ceph/wip-repop-leaks
David Zafman [Tue, 24 Sep 2013 22:39:26 +0000 (15:39 -0700)]
Merge pull request #633 from ceph/wip-repop-leaks

fix a copule of leaks of RepGather structs

Reviewed-by: David Zafman <david.zafman@inktank.com>
12 years agodoc: Removed service ops language and added reference to operations.
John Wilkins [Tue, 24 Sep 2013 22:26:35 +0000 (15:26 -0700)]
doc: Removed service ops language and added reference to operations.

fixes: #6374

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agomon/OSDMonitor: fix 'ceph osd crush reweight ...'
Sage Weil [Tue, 24 Sep 2013 22:26:03 +0000 (15:26 -0700)]
mon/OSDMonitor: fix 'ceph osd crush reweight ...'

The adjust method returns a count of adjusted items.

Add a test.

Fixes: #6382
Backport: dumpling
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
12 years agoMerge pull request #477 from jpfrancois/patch-1
Sage Weil [Tue, 24 Sep 2013 22:22:56 +0000 (15:22 -0700)]
Merge pull request #477 from jpfrancois/patch-1

Fix for Swift key command

12 years agoosd/ReplicatedPG: fix leak of RepGather on watch timeout 633/head
Sage Weil [Tue, 24 Sep 2013 20:49:59 +0000 (13:49 -0700)]
osd/ReplicatedPG: fix leak of RepGather on watch timeout

new_repop() gives us a ref; we need to release it, just as we do in
execute_ctx().

Backport: dumpling
Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoosd/ReplicatedPG: fix leak of RepGather on large-object COPY_FROM
Sage Weil [Tue, 24 Sep 2013 20:48:43 +0000 (13:48 -0700)]
osd/ReplicatedPG: fix leak of RepGather on large-object COPY_FROM

new_repop() gives us a ref; we need to release it, just as we do in
execute_ctx().

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoceph_test_rados: order racing read wrt to the COPY_FROM 632/head
Sage Weil [Tue, 24 Sep 2013 18:59:17 +0000 (11:59 -0700)]
ceph_test_rados: order racing read wrt to the COPY_FROM

The prevents:

 - send COPY_FROM, blocks on recovering object
 - send stat, procedes to return old object version
 - COPY_FROM succeeds with new version
   -> fail

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agolibrados: add OPERATION_ORDER_READS_WRITES flag
Sage Weil [Tue, 24 Sep 2013 19:48:07 +0000 (12:48 -0700)]
librados: add OPERATION_ORDER_READS_WRITES flag

This maps to the internal RWORDERED option, which indicates that a read
should be ordered the same way a write is.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoosd/ReplicatedPG: respect RWORDERED rados flag
Sage Weil [Tue, 24 Sep 2013 18:22:19 +0000 (11:22 -0700)]
osd/ReplicatedPG: respect RWORDERED rados flag

If this flag is set, we need to order reads as writes.  In particular, this
means that reads will wait for degraded object recovery even if there is a
local copy.  And subsequently will be ordered after a preceding write that
is waiting for the same thing.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoosd: change warn_interval_multiplier to uint32_t
Loic Dachary [Tue, 24 Sep 2013 17:04:23 +0000 (19:04 +0200)]
osd: change warn_interval_multiplier to uint32_t

to prevent overflow in OpTracker::check_ops_in_flight when
multiplying warn_interval_multiplier *= 2

Backport: cuttlefish, dumpling

http://tracker.ceph.com/issues/6370 fixes #6370

Signed-off-by: Loic Dachary <loic@dachary.org>
(cherry picked from commit 1bce1f009bffd3e28025a08775fec189907a81db)

12 years agoMerge pull request #630 from dachary/master
Sage Weil [Tue, 24 Sep 2013 17:27:05 +0000 (10:27 -0700)]
Merge pull request #630 from dachary/master

osd: change warn_interval_multiplier to uint32_t

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoarch/intel: fix old comment
Sage Weil [Tue, 24 Sep 2013 17:18:44 +0000 (10:18 -0700)]
arch/intel: fix old comment

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoarch/intel: use intel probe instructions for x86_64 only
Sage Weil [Tue, 24 Sep 2013 17:17:37 +0000 (10:17 -0700)]
arch/intel: use intel probe instructions for x86_64 only

Not LP64, which includes ppc64 and clearly does not build.

Fixes: #6283
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
12 years agoosd: change warn_interval_multiplier to uint32_t 630/head
Loic Dachary [Tue, 24 Sep 2013 17:04:23 +0000 (19:04 +0200)]
osd: change warn_interval_multiplier to uint32_t

to prevent overflow in OpTracker::check_ops_in_flight when
multiplying warn_interval_multiplier *= 2

Backport: cuttlefish, dumpling

http://tracker.ceph.com/issues/6370 fixes #6370

Signed-off-by: Loic Dachary <loic@dachary.org>
12 years agoMerge pull request #628 from dachary/wip-erasure-fix-thread-test
Sage Weil [Tue, 24 Sep 2013 15:42:49 +0000 (08:42 -0700)]
Merge pull request #628 from dachary/wip-erasure-fix-thread-test

ErasureCode: fix plugin loading threaded test

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #627 from dachary/master
Yehuda Sadeh [Tue, 24 Sep 2013 14:38:36 +0000 (07:38 -0700)]
Merge pull request #627 from dachary/master

rgw: fix rgw test to reflect usage change

Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agoErasureCode: fix plugin loading threaded test 628/head
Loic Dachary [Tue, 24 Sep 2013 13:51:08 +0000 (15:51 +0200)]
ErasureCode: fix plugin loading threaded test

The TEST_F(ErasureCodePluginRegistryTest, factory_mutex) was bugous and
only succeeded by chance. The sleep was on the factory constructor which
was never called. An erasure code plugin that hangs forever on load is
created instead.

The sleep_forever.detach is replaced by pthread_cancel to interrupt the
thread that hangs forever. If not, gtest will try to join the thread and
never exit.

Signed-off-by: Loic Dachary <loic@dachary.org>
12 years agorgw: fix rgw test to reflect usage change 627/head
Loic Dachary [Tue, 24 Sep 2013 06:05:38 +0000 (08:05 +0200)]
rgw: fix rgw test to reflect usage change

otherwise src/test/cli/radosgw-admin/help.t fails when running make
check when run after a configure --with-radosgw

Signed-off-by: Loic Dachary <loic@dachary.org>