]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
13 years agoReplicatedPG: apply_repop: apply local_t before op_t
Samuel Just [Tue, 20 Dec 2011 18:53:36 +0000 (10:53 -0800)]
ReplicatedPG: apply_repop: apply local_t before op_t

We create snap_collections in local_t and clone into them in op_t.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoPG: Do not update_snap_collections for log entries > last_backfill
Samuel Just [Tue, 20 Dec 2011 00:26:56 +0000 (16:26 -0800)]
PG: Do not update_snap_collections for log entries > last_backfill

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoPG: Fix stat debug output
Samuel Just [Tue, 20 Dec 2011 00:26:31 +0000 (16:26 -0800)]
PG: Fix stat debug output

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agocalc_acting: Prefer up[0] as primary if possible
Samuel Just [Sat, 17 Dec 2011 02:04:32 +0000 (18:04 -0800)]
calc_acting: Prefer up[0] as primary if possible

Previously, we could get into a state where although up[0] has been
fully backfilled, acting[0] could be selected as a primary if it is able
to pull another peer into the acting set.  This also collects the logic
of choosing the best info into a helper function.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoReplicatedPG: fix backfill mismatch error output
Samuel Just [Thu, 15 Dec 2011 19:17:51 +0000 (11:17 -0800)]
ReplicatedPG: fix backfill mismatch error output

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoReplicatedPG: calc_clone_subsets fix other clone_overlap case
Samuel Just [Thu, 15 Dec 2011 19:17:25 +0000 (11:17 -0800)]
ReplicatedPG: calc_clone_subsets fix other clone_overlap case

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoOSD: use disk_tp.pause() without osd_lock
Samuel Just [Thu, 15 Dec 2011 19:16:26 +0000 (11:16 -0800)]
OSD: use disk_tp.pause() without osd_lock

Previously, we called disk_tp.pause_new().  This can cause a race
where snap_trimmer queues more transactions after we flush the
store.  Calling disk_tp.pause() under the osd_lock causes a
deadlock with pg removal.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoReplicatedPG: add_object_context_to_pg_stat, obc->ssc may be null
Samuel Just [Wed, 14 Dec 2011 23:51:17 +0000 (15:51 -0800)]
ReplicatedPG: add_object_context_to_pg_stat, obc->ssc may be null

obc->ssc is not necessarily filled in by get_object_context.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoPG: clear waiting_on_backfill during clear_recovery_state
Samuel Just [Wed, 14 Dec 2011 23:19:15 +0000 (15:19 -0800)]
PG: clear waiting_on_backfill during clear_recovery_state

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoReplicatedPG: list snapid 0 on collection_list_partial for backfill
Samuel Just [Wed, 14 Dec 2011 23:17:44 +0000 (15:17 -0800)]
ReplicatedPG: list snapid 0 on collection_list_partial for backfill

0 will list all objects, CEPH_NO_SNAP will list only head objects.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoMerge remote branch 'upstream/master' into wip_backfill_merged
Samuel Just [Wed, 14 Dec 2011 19:40:15 +0000 (11:40 -0800)]
Merge remote branch 'upstream/master' into wip_backfill_merged

13 years agoReplicatedPG: collection_list_partial also takes a snapid
Samuel Just [Wed, 14 Dec 2011 19:39:21 +0000 (11:39 -0800)]
ReplicatedPG: collection_list_partial also takes a snapid

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoPG: Ask for digest at most once at a time
Samuel Just [Wed, 14 Dec 2011 18:55:31 +0000 (10:55 -0800)]
PG: Ask for digest at most once at a time

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoosd: track backfill target pg stats
Sage Weil [Wed, 14 Dec 2011 01:43:34 +0000 (17:43 -0800)]
osd: track backfill target pg stats

Maintain backfill target pg stats to be the summation over objects to
the left of last_backfill.  Reflect this in the degraded stats we report
to the monitor.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: object_stat_sum_t::clear()
Sage Weil [Tue, 13 Dec 2011 20:51:37 +0000 (12:51 -0800)]
osd: object_stat_sum_t::clear()

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoPG: activate, backfill replica can have last_complete < log_tail
Samuel Just [Tue, 13 Dec 2011 22:22:42 +0000 (14:22 -0800)]
PG: activate, backfill replica can have last_complete < log_tail

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoReplicatedPG: calc_*_subsets must consider last_backfill
Samuel Just [Tue, 13 Dec 2011 21:02:57 +0000 (13:02 -0800)]
ReplicatedPG: calc_*_subsets must consider last_backfill

Objects yet to be backfilled do not show up in the missing set.  Thus,
we cannot use an object past last_backfill to clone into the object we
are pushing/pulling.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoPG: A backfill osd can have last_complete < log_tail
Samuel Just [Tue, 13 Dec 2011 18:11:37 +0000 (10:11 -0800)]
PG: A backfill osd can have last_complete < log_tail

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoPG: there may now be backfill entries in the acting set
Samuel Just [Tue, 13 Dec 2011 01:26:04 +0000 (17:26 -0800)]
PG: there may now be backfill entries in the acting set

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoPG: fix phantom entry in peer_info
Samuel Just [Tue, 13 Dec 2011 01:25:40 +0000 (17:25 -0800)]
PG: fix phantom entry in peer_info

In GetLog, do not call pg->peer_info[newest_update_osd] if
newest_update_osd is osd->whoami.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoosd: remove bad !is_incomplete() assert
Sage Weil [Wed, 7 Dec 2011 00:37:27 +0000 (16:37 -0800)]
osd: remove bad !is_incomplete() assert

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: fix signed/unsigned comp
Sage Weil [Wed, 7 Dec 2011 00:37:14 +0000 (16:37 -0800)]
osd: fix signed/unsigned comp

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: fix calc_acting()
Sage Weil [Wed, 7 Dec 2011 00:07:33 +0000 (16:07 -0800)]
osd: fix calc_acting()

Look at usable, not want.size(), so we don't count backfill targets.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: some recover_backfill() comments
Sage Weil [Wed, 7 Dec 2011 00:01:15 +0000 (16:01 -0800)]
osd: some recover_backfill() comments

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: add incomplete, backfill states; simplify calculation
Sage Weil [Wed, 7 Dec 2011 00:00:48 +0000 (16:00 -0800)]
osd: add incomplete, backfill states; simplify calculation

Set/clear states in peering state machine state ctor/dtors where possible.

Set degraded if the number of non-backfilling replicas is lower than the
target replication factor.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agohobject_t: fix hobject(sobject_t) constructor
Sage Weil [Tue, 6 Dec 2011 23:38:00 +0000 (15:38 -0800)]
hobject_t: fix hobject(sobject_t) constructor

Initialize max

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: more backfill changes
Sage Weil [Tue, 6 Dec 2011 23:27:39 +0000 (15:27 -0800)]
osd: more backfill changes

Always ship log for updates to backfill targets to preserve the repgather
ordering.

Fix up recover_backfill() bounds.  Re-scan the local collect on every pass
in case there were concurrent modifications.  (This could be optimized.)

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: observe last_backfill in merge_log() and helpers
Sage Weil [Tue, 6 Dec 2011 23:25:03 +0000 (15:25 -0800)]
osd: observe last_backfill in merge_log() and helpers

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoobjectstore: make list by hash *next > instead of >=
Sage Weil [Tue, 6 Dec 2011 23:21:15 +0000 (15:21 -0800)]
objectstore: make list by hash *next > instead of >=

This means we should set it to a hash boundary or the last item of our
result set (not the next item we didn't include).

It means that during backfill we can set our last_backfill to the last
object we did recover and be sure that any new files locally will be
included in the next result set, and we can bound that result set by that
last object recovered and not include it in the resulting range.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: initialize repop gather set in issue_repop instead of new_repop
Sage Weil [Tue, 6 Dec 2011 17:15:44 +0000 (09:15 -0800)]
osd: initialize repop gather set in issue_repop instead of new_repop

Simpler.  It will also make the last_backfill correction live in one
place.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: implement PG::copy_range()
Sage Weil [Tue, 6 Dec 2011 16:48:55 +0000 (08:48 -0800)]
osd: implement PG::copy_range()

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoRevert "osd: don't keep push state on replicas"
Sage Weil [Tue, 6 Dec 2011 16:18:01 +0000 (08:18 -0800)]
Revert "osd: don't keep push state on replicas"

This reverts commit 69c77e33f8530993dbc280525bd21218ea6f9ddb.

sub_op_pull() calls send_push_op directly, does not pass push_start().

13 years agoosd: make backfill (basically) work again
Sage Weil [Tue, 6 Dec 2011 01:25:21 +0000 (17:25 -0800)]
osd: make backfill (basically) work again

Still need to handle concurrent updates, log recovery vs backfill, etc.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: keep backfill targets in acting set
Sage Weil [Mon, 5 Dec 2011 23:35:34 +0000 (15:35 -0800)]
osd: keep backfill targets in acting set

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: advance last_backfill by keys only
Sage Weil [Mon, 5 Dec 2011 23:24:01 +0000 (15:24 -0800)]
osd: advance last_backfill by keys only

This ensures that transactions are never split by last_backfill.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agohobject_t: fix sorting by hash key
Sage Weil [Mon, 5 Dec 2011 23:21:59 +0000 (15:21 -0800)]
hobject_t: fix sorting by hash key

Use get_effective_key() to return key (if explicit) or object name.  Sort
by that within each hash value.

Clean up operator<< so that it prints things in sort order.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: osd_kill_backfill_at
Sage Weil [Mon, 5 Dec 2011 23:15:35 +0000 (15:15 -0800)]
osd: osd_kill_backfill_at

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: track backfill with last_backfill, not interval_set<>
Sage Weil [Mon, 5 Dec 2011 19:38:12 +0000 (11:38 -0800)]
osd: track backfill with last_backfill, not interval_set<>

We always fill from the bottom up anyway.  Using an hobject_t also gives us
a precise bound.  It also makes things conceptually simpler: last_complete
and last_backfill bounding each of the two dimensions of updatedness.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: pg whitespace
Sage Weil [Sat, 3 Dec 2011 22:41:54 +0000 (14:41 -0800)]
osd: pg whitespace

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: kill unused PG::trim_write_ahead
Sage Weil [Sat, 3 Dec 2011 22:29:44 +0000 (14:29 -0800)]
osd: kill unused PG::trim_write_ahead

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: kill unused PG::Log::copy_after_unless_divergent
Sage Weil [Sat, 3 Dec 2011 22:29:15 +0000 (14:29 -0800)]
osd: kill unused PG::Log::copy_after_unless_divergent

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: cleanup lingering backlog refs
Sage Weil [Sat, 3 Dec 2011 00:35:04 +0000 (16:35 -0800)]
osd: cleanup lingering backlog refs

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: cleanup
Sage Weil [Sat, 3 Dec 2011 00:34:52 +0000 (16:34 -0800)]
osd: cleanup

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: kill unused PG_STATE_SCANNING
Sage Weil [Sat, 3 Dec 2011 00:34:34 +0000 (16:34 -0800)]
osd: kill unused PG_STATE_SCANNING

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: remove recovery-from-backlog kludge last_update
Sage Weil [Sat, 3 Dec 2011 00:33:35 +0000 (16:33 -0800)]
osd: remove recovery-from-backlog kludge last_update

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: kill PG::Info::backlog
Sage Weil [Sat, 3 Dec 2011 00:16:12 +0000 (16:16 -0800)]
osd: kill PG::Info::backlog

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: remove backlog case from clean_up_local
Sage Weil [Sat, 3 Dec 2011 00:16:04 +0000 (16:16 -0800)]
osd: remove backlog case from clean_up_local

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: remove log_backlog from PG::Info
Sage Weil [Sat, 3 Dec 2011 00:01:57 +0000 (16:01 -0800)]
osd: remove log_backlog from PG::Info

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: state machine whitespace
Sage Weil [Fri, 2 Dec 2011 23:50:53 +0000 (15:50 -0800)]
osd: state machine whitespace

I feel better now

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: strip backlog logic out of PG::activate()
Sage Weil [Fri, 2 Dec 2011 23:47:20 +0000 (15:47 -0800)]
osd: strip backlog logic out of PG::activate()

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: kill backlog_requested
Sage Weil [Fri, 2 Dec 2011 23:44:35 +0000 (15:44 -0800)]
osd: kill backlog_requested

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: strip backlog case out of merge_log
Sage Weil [Fri, 2 Dec 2011 23:43:33 +0000 (15:43 -0800)]
osd: strip backlog case out of merge_log

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: strip out some backlog logic
Sage Weil [Sat, 3 Dec 2011 00:20:54 +0000 (16:20 -0800)]
osd: strip out some backlog logic

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: kill PG::Log::copy_non_backlog
Sage Weil [Fri, 2 Dec 2011 21:58:14 +0000 (13:58 -0800)]
osd: kill PG::Log::copy_non_backlog

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: remove Query::BACKLOG processing
Sage Weil [Fri, 2 Dec 2011 18:47:44 +0000 (10:47 -0800)]
osd: remove Query::BACKLOG processing

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: simplify replica queries for finding divergent objects
Sage Weil [Fri, 2 Dec 2011 18:45:12 +0000 (10:45 -0800)]
osd: simplify replica queries for finding divergent objects

No need to request backlog here, clearly, since those don't exist anymore.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: remove backlog generation code
Sage Weil [Fri, 2 Dec 2011 18:36:49 +0000 (10:36 -0800)]
osd: remove backlog generation code

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: do not read backlog off disk
Sage Weil [Fri, 2 Dec 2011 18:31:55 +0000 (10:31 -0800)]
osd: do not read backlog off disk

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: add Incomplete peering state
Sage Weil [Fri, 2 Dec 2011 04:46:12 +0000 (20:46 -0800)]
osd: add Incomplete peering state

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agotest_backfill.sh
Sage Weil [Thu, 1 Dec 2011 18:28:14 +0000 (10:28 -0800)]
test_backfill.sh

13 years agoosd: recover discontiguous peers using backfill instead of backlog
Sage Weil [Fri, 2 Dec 2011 17:39:17 +0000 (09:39 -0800)]
osd: recover discontiguous peers using backfill instead of backlog

Instead of generating a huge list of objects to recover, and then pushing
them, iterate over the collection and copy objects as we go.

Disable various bits of backlog code; it will all get ripped out shortly.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: add MOSDPGBackfill message
Sage Weil [Fri, 2 Dec 2011 00:56:27 +0000 (16:56 -0800)]
osd: add MOSDPGBackfill message

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agotypes: operator<< for multimaps
Sage Weil [Thu, 1 Dec 2011 19:30:24 +0000 (11:30 -0800)]
types: operator<< for multimaps

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: implement do_scan
Sage Weil [Fri, 2 Dec 2011 04:59:21 +0000 (20:59 -0800)]
osd: implement do_scan

Handle MOSDPGScan messages to request or send a digest of a range of
objects in a collection, sorted in hobject_t (hash) order.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: implement ReplicatedPG::scan_range
Sage Weil [Fri, 2 Dec 2011 05:03:28 +0000 (21:03 -0800)]
osd: implement ReplicatedPG::scan_range

Scan a range of the local collection.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: implement ReplicatedPG::_lookup_object_context
Sage Weil [Fri, 2 Dec 2011 05:01:40 +0000 (21:01 -0800)]
osd: implement ReplicatedPG::_lookup_object_context

Look up an existing ObjectContext without taking a reference.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: add PG::BackfillInterval type
Sage Weil [Fri, 2 Dec 2011 05:00:50 +0000 (21:00 -0800)]
osd: add PG::BackfillInterval type

Describe a range of objects for the purposes of backfilling a PG.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: MOSDPGScan
Sage Weil [Fri, 2 Dec 2011 04:55:05 +0000 (20:55 -0800)]
osd: MOSDPGScan

Message to query hash ranges of a PG.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: rewrite choose_acting process
Sage Weil [Fri, 2 Dec 2011 04:54:10 +0000 (20:54 -0800)]
osd: rewrite choose_acting process

Consolidate callers, eliminate obsolete backlog ones.

New process:
 - pick best log, with preferences for those that might end up primary
 - pick best primary that is log-contiguous with best log, with preference
   for longer tails that will result in more acting osds.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: don't keep push state on replicas
Sage Weil [Wed, 30 Nov 2011 01:04:52 +0000 (17:04 -0800)]
osd: don't keep push state on replicas

Primaries need this, but replicas don't: the primary will explicitly pull
the pieces of the object that it wants.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: fix push_to_replica typo
Sage Weil [Wed, 30 Nov 2011 00:44:17 +0000 (16:44 -0800)]
osd: fix push_to_replica typo

We are always pushing soid.  If we are missing snapdir locally, that means
we can't do an informed efficient clone, and should push the whole
object... NOT that we should push snapdir!

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoswift: auth response returns X-Auth-Token instead of X-Storage-Token
Yehuda Sadeh [Wed, 14 Dec 2011 18:49:42 +0000 (10:49 -0800)]
swift: auth response returns X-Auth-Token instead of X-Storage-Token

13 years agoosd: fix build_incremental_map_msg
Sage Weil [Wed, 14 Dec 2011 17:31:17 +0000 (09:31 -0800)]
osd: fix build_incremental_map_msg

We keep both the inc and the full for our oldest osdmap.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoqa: trivial_libceph test
Sage Weil [Wed, 14 Dec 2011 00:31:02 +0000 (16:31 -0800)]
qa: trivial_libceph test

This currently fails... see #1827

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agolibceph: add missing #includes
Sage Weil [Wed, 14 Dec 2011 00:28:50 +0000 (16:28 -0800)]
libceph: add missing #includes

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agolibceph: catch errors from Client::init()
Sage Weil [Wed, 14 Dec 2011 00:28:38 +0000 (16:28 -0800)]
libceph: catch errors from Client::init()

And clean up error paths.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoclient: return errors from init
Sage Weil [Wed, 14 Dec 2011 00:28:18 +0000 (16:28 -0800)]
client: return errors from init

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agofilestore: dump transaction to log if we hit an error
Sage Weil [Tue, 13 Dec 2011 17:07:36 +0000 (09:07 -0800)]
filestore: dump transaction to log if we hit an error

This will let us see which operation in the transaction failed.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoobjectstore: implement Transaction::dump()
Sage Weil [Tue, 13 Dec 2011 17:05:37 +0000 (09:05 -0800)]
objectstore: implement Transaction::dump()

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoobjectstore: create Transaction::iterator class
Sage Weil [Tue, 13 Dec 2011 17:05:10 +0000 (09:05 -0800)]
objectstore: create Transaction::iterator class

Remove iterator state from Transaction itself.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoqa: rados load-gen workunits
Sage Weil [Tue, 13 Dec 2011 16:19:37 +0000 (08:19 -0800)]
qa: rados load-gen workunits

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agopybind/rados: add asynchronous write,append,read,write_full operations
Samuel Just [Sat, 10 Dec 2011 01:55:57 +0000 (17:55 -0800)]
pybind/rados: add asynchronous write,append,read,write_full operations

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agodoc: Clarify documentation of reweight command.
Andre Noll [Fri, 9 Dec 2011 17:57:45 +0000 (18:57 +0100)]
doc: Clarify documentation of reweight command.

This caused some discussions on the mailing list, so let's try to be clear
about the meaning of an OSD weight.

Signed-Off-By: Andre Noll <maan@systemlinux.org>
13 years agodoc: Add missing documentation for osd pool get.
Andre Noll [Fri, 9 Dec 2011 17:57:44 +0000 (18:57 +0100)]
doc: Add missing documentation for osd pool get.

"osd pool set" was already documented, but the corresponding "get"
command was not. This patch adds the list of valid fields for this
command, together with short descriptions.

Thanks to Gregory Farnum for pointing out a flaw in the description
of lpl_num and lpgp_num in an earlier version of the patch.

Signed-Off-By: Andre Noll <maan@systemlinux.org>
13 years agodoc: Update the list of fields for the pool set command.
Andre Noll [Fri, 9 Dec 2011 17:57:43 +0000 (18:57 +0100)]
doc: Update the list of fields for the pool set command.

This list was lacking a few fields: crash_replay_interval, pg_num,
pgp_num and crush_ruleset. Include these fields and add add short
descriptions.

Signed-Off-By: Andre Noll <maan@systemlinux.org>
13 years agodoc: Document pause and unpause osd commands.
Andre Noll [Fri, 9 Dec 2011 17:57:42 +0000 (18:57 +0100)]
doc: Document pause and unpause osd commands.

These two commands were undocumented so far. This patch adds a short
description.

Signed-Off-By: Andre Noll <maan@systemlinux.org>
13 years agodoc: Add documentation of missing osd commands.
Andre Noll [Fri, 9 Dec 2011 17:57:41 +0000 (18:57 +0100)]
doc: Add documentation of missing osd commands.

The set of OSD commands which added by the previous commit is
incomplete. This patch adds documentation for the following
OSD commands which were previously missing: dump, tree, crush,
cluster_snap, lost, create, rm.

Signed-Off-By: Andre Noll <maan@systemlinux.org>
13 years agodoc: Import the list of ceph subcommands from wiki.
Andre Noll [Fri, 9 Dec 2011 17:57:40 +0000 (18:57 +0100)]
doc: Import the list of ceph subcommands from wiki.

This adds the content of the wiki page at

http://ceph.newdream.net/wiki/Monitor_commands

to doc/control.rst in order to make it available at the new official
location for the ceph documentation. This first patch is just the
result of a cut-and-paste operation. There are no changes in content,
but the text was converted to rst format.

Signed-Off-By: Andre Noll <maan@systemlinux.org>
13 years agoMerge branch 'wip-mon-stats'
Sage Weil [Mon, 12 Dec 2011 17:29:36 +0000 (09:29 -0800)]
Merge branch 'wip-mon-stats'

13 years agomon: add mds, mon info to cluster_logger
Sage Weil [Thu, 8 Dec 2011 21:13:29 +0000 (13:13 -0800)]
mon: add mds, mon info to cluster_logger

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agomdsmap: rename get_num_*_mds() methods
Sage Weil [Thu, 8 Dec 2011 21:02:12 +0000 (13:02 -0800)]
mdsmap: rename get_num_*_mds() methods

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agomon: report basic cluster stats via perfcounters
Sage Weil [Thu, 8 Dec 2011 20:53:14 +0000 (12:53 -0800)]
mon: report basic cluster stats via perfcounters

These are basic point-in-time cluster stats.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agocrush: drop unused label
Sage Weil [Mon, 12 Dec 2011 17:22:49 +0000 (09:22 -0800)]
crush: drop unused label

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoMerge remote branch 'gh/stable'
Sage Weil [Mon, 12 Dec 2011 17:20:26 +0000 (09:20 -0800)]
Merge remote branch 'gh/stable'

13 years agocrush: fix force to behave with non-root TAKE
Sage Weil [Wed, 7 Dec 2011 17:07:38 +0000 (09:07 -0800)]
crush: fix force to behave with non-root TAKE

If the (first) TAKE in the crush rule is not the root, see if they picked
a point somewhere beneath the appropriate part of the hierachy.  If not,
continue with a normal mapping.

Previously we would simply error out in this case and map nothing.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agocrush: simplify force argument check
Sage Weil [Wed, 7 Dec 2011 17:09:32 +0000 (09:09 -0800)]
crush: simplify force argument check

force isn't used past this point, only force_pos.  Collapse the if
conditions.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoworkunits: print tests pjd runs
Josh Durgin [Sat, 10 Dec 2011 00:31:07 +0000 (16:31 -0800)]
workunits: print tests pjd runs

This will tell us which ones actually failed within a test suite.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agoMerge branch 'wip_pgls'
Samuel Just [Fri, 9 Dec 2011 23:23:32 +0000 (15:23 -0800)]
Merge branch 'wip_pgls'

13 years agopybind: add object locator support to pybind pool listing
Samuel Just [Fri, 9 Dec 2011 22:42:21 +0000 (14:42 -0800)]
pybind: add object locator support to pybind pool listing

list_objects returns Object().  Object therefore now has an optional
locator_key parameter which will set up the object locator on Object()
methods to allow objects returned from list_objects with locator keys to
be used normally.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agorados.cc: add --object-locator and object locator output to ls
Samuel Just [Thu, 8 Dec 2011 01:06:01 +0000 (17:06 -0800)]
rados.cc: add --object-locator and object locator output to ls

--object-locator locator causes io to use the specified locator.  For
objects with non-empty locators, rados pool ls will output the locator
as well.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>