]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
13 years agoomap: add sync method to ObjectMap
Sage Weil [Thu, 8 Mar 2012 00:38:29 +0000 (16:38 -0800)]
omap: add sync method to ObjectMap

Signed-off-by: Samuel Just <rexludorum@gmail.com>
13 years agofilestore: remove old post-idempotent transaction trigger_commit
Sage Weil [Thu, 8 Mar 2012 04:58:27 +0000 (20:58 -0800)]
filestore: remove old post-idempotent transaction trigger_commit

The old strategy was to initiate a commit after any non-idempotent
transaction.  This only worked if the transaction was idempotent with
respect to itself, or could be replayed partially without problems,
and in reality that isn't the case.  For example:

 - clone A -> B
 - write to A
 - <sync>

If we crash before the sync, and replay the clone A->B, we corrupt B with
the new A data.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agofilestore: guard collection_remove replay
Sage Weil [Thu, 8 Mar 2012 04:55:27 +0000 (20:55 -0800)]
filestore: guard collection_remove replay

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agofilestore: guard replay of collection_add
Sage Weil [Thu, 8 Mar 2012 04:55:16 +0000 (20:55 -0800)]
filestore: guard replay of collection_add

- set guard on apply
- check guard on replay

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agofilestore: guard replay of basic collection ops
Sage Weil [Thu, 8 Mar 2012 04:54:22 +0000 (20:54 -0800)]
filestore: guard replay of basic collection ops

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agofilestore: guard collection_rename replay
Sage Weil [Thu, 8 Mar 2012 04:53:51 +0000 (20:53 -0800)]
filestore: guard collection_rename replay

- check guard on replay
- set guard on apply

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agofilestore: fix collection_rename error code
Sage Weil [Thu, 8 Mar 2012 04:53:27 +0000 (20:53 -0800)]
filestore: fix collection_rename error code

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agofilestore: guard clone replay
Sage Weil [Thu, 8 Mar 2012 04:52:57 +0000 (20:52 -0800)]
filestore: guard clone replay

- set guard xattr on clone, clone_range
- check before applying/replaying

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agofilestore: implement _set_replay_guard, _check_replay_guard
Sage Weil [Thu, 8 Mar 2012 00:37:32 +0000 (16:37 -0800)]
filestore: implement _set_replay_guard, _check_replay_guard

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agofilestore: maintain SequencerPosition during _do_transaction
Sage Weil [Wed, 7 Mar 2012 05:51:35 +0000 (21:51 -0800)]
filestore: maintain SequencerPosition during _do_transaction

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agofilestore: fgetxattr helpers/wrappers
Sage Weil [Wed, 7 Mar 2012 18:11:58 +0000 (10:11 -0800)]
filestore: fgetxattr helpers/wrappers

Also, do the getxattr using fgetxattr, to avoid duplicating code.  This is
slightly slower probably because we open a file handle, but if we care we
should really clean up the code to use lfn_open instead of lfn_find and
avoid the repeated path traversal too.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoadd SequencerPosition type
Sage Weil [Sun, 4 Mar 2012 21:43:18 +0000 (13:43 -0800)]
add SequencerPosition type

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agofilestore: pass trans_num into _do_transaction
Sage Weil [Wed, 7 Mar 2012 05:16:06 +0000 (21:16 -0800)]
filestore: pass trans_num into _do_transaction

This gives us the <op_seq, trans_num, op_num> triple to identify every
constituent operation.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agofilestore: use proper type for readdir_r tmp
Sage Weil [Sun, 4 Mar 2012 21:21:11 +0000 (13:21 -0800)]
filestore: use proper type for readdir_r tmp

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoMerge branch 'master' of github.com:ceph/ceph
Sage Weil [Fri, 9 Mar 2012 22:13:03 +0000 (14:13 -0800)]
Merge branch 'master' of github.com:ceph/ceph

13 years agoRadosModel: fix omap_clear case in RemoveAttrsOp
Samuel Just [Fri, 9 Mar 2012 22:10:18 +0000 (14:10 -0800)]
RadosModel: fix omap_clear case in RemoveAttrsOp

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoMerge branch 'wip-rgw-encode'
Sage Weil [Fri, 9 Mar 2012 22:03:15 +0000 (14:03 -0800)]
Merge branch 'wip-rgw-encode'

Conflicts:
src/rgw/rgw_cls_api.h

Reviewed-by: Sage Weil <sage@newdream.net>
13 years agorgw: fix rgw_cls_list_ret ctor
Sage Weil [Fri, 9 Mar 2012 21:55:49 +0000 (13:55 -0800)]
rgw: fix rgw_cls_list_ret ctor

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoceph-object-corpus: added 0.43
Yehuda Sadeh [Fri, 9 Mar 2012 21:32:36 +0000 (13:32 -0800)]
ceph-object-corpus: added 0.43

Signed-off-by: Yehuda Sadeh <yehuda.sadeh@dreamhost.com>
13 years agotest/encoding/import.sh: fix target directory
Yehuda Sadeh [Fri, 9 Mar 2012 21:32:18 +0000 (13:32 -0800)]
test/encoding/import.sh: fix target directory

Signed-off-by: Yehuda Sadeh <yehuda.sadeh@dreamhost.com>
13 years agoMakefile.am: update link dependencies for some unit tests
Yehuda Sadeh [Fri, 9 Mar 2012 21:29:59 +0000 (13:29 -0800)]
Makefile.am: update link dependencies for some unit tests

13 years agorgw: various encoding related fixes
Yehuda Sadeh [Fri, 9 Mar 2012 22:01:12 +0000 (14:01 -0800)]
rgw: various encoding related fixes

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoosd: fix watch_lock vs map_lock ordering
Sage Weil [Fri, 9 Mar 2012 21:34:55 +0000 (13:34 -0800)]
osd: fix watch_lock vs map_lock ordering

watch_lock is inside map_lock (and pg->lock), which means we need to
drop it to take pg->lock here.  That means verifying in
handle_watch_timeout that we haven't raced with another thread canceling
the timeout event, which would be indicated by

 - the entity not appearing in unconnected_watchers
 - the entity having a different (presumably newer) expire time

Fixes: #2103
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoosd: update_heartbeat_peers as needed
Sage Weil [Fri, 9 Mar 2012 20:26:22 +0000 (12:26 -0800)]
osd: update_heartbeat_peers as needed

Before, we were being very careful about updating the heartbeat peers if
new PGs were created or when certain types of messages were received.
However, the PG can change it's peers in lots of cases (e.g., when
recovery completes), but the OSD doesn't re-aggregate.

Instead, set a flag when each PG updates it's set, and check that flag in
the OSD code periodically or in likely places.  A call in tick() acts as
a catch-all.

The num_created counts can probably be cleaned out now...

Signed-off-by: Sage Weil <sage@newdream.net>
Reviewed-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agorgw: implement dump() for encoders
Yehuda Sadeh [Fri, 9 Mar 2012 08:06:34 +0000 (00:06 -0800)]
rgw: implement dump() for encoders

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: add stubs for dencoder test
Yehuda Sadeh [Fri, 9 Mar 2012 00:58:00 +0000 (16:58 -0800)]
rgw: add stubs for dencoder test

still need to add some content to the dump methods

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoMerge remote branch 'origin/wip-2139'
Yehuda Sadeh [Fri, 9 Mar 2012 00:15:18 +0000 (16:15 -0800)]
Merge remote branch 'origin/wip-2139'

Conflicts:
src/cls_rgw.cc
src/rgw/rgw_rados.cc
src/rgw/rgw_rados.h

Signed-off-by: Yehuda Sadeh <yehuda.sadeh@dreamhost.com>
13 years agoMerge branch 'master' of ssh://github.com/ceph/ceph
Yehuda Sadeh [Thu, 8 Mar 2012 23:54:14 +0000 (15:54 -0800)]
Merge branch 'master' of ssh://github.com/ceph/ceph

13 years agoceph: document the way files are laid out
Alex Elder [Thu, 8 Mar 2012 23:16:45 +0000 (15:16 -0800)]
ceph: document the way files are laid out

This adds a document that I wrote about how Ceph client file data
is striped across Ceph objects to the repository.  It's a text
document.  Someone with better document preparation skills than I
should use the content below as a basis for something prettier if
that's appropriate.

[Made a few edits... -sage]

Signed-off-by: Alex Elder <elder@dreamhost.com>
Signed-off-by: Sage Weil <sage@newdream.net>
13 years agolibrados: fix unit test for omap_get_vals_by_key rename
Sage Weil [Thu, 8 Mar 2012 23:09:30 +0000 (15:09 -0800)]
librados: fix unit test for omap_get_vals_by_key rename

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: format time nicely in ops_in_flight output
Sage Weil [Thu, 8 Mar 2012 23:06:39 +0000 (15:06 -0800)]
osd: format time nicely in ops_in_flight output

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agolibrados: fix map -> std::map in header, string -> std::string
Sage Weil [Thu, 8 Mar 2012 23:06:19 +0000 (15:06 -0800)]
librados: fix map -> std::map in header, string -> std::string

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agodoc: example of diagnosing radosgw hang
Sage Weil [Thu, 8 Mar 2012 23:02:02 +0000 (15:02 -0800)]
doc: example of diagnosing radosgw hang

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agodoc: explain how unfound objects happen
Sage Weil [Thu, 8 Mar 2012 22:55:21 +0000 (14:55 -0800)]
doc: explain how unfound objects happen

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agodoc: make osd failure example include >3 osds
Sage Weil [Thu, 8 Mar 2012 22:55:08 +0000 (14:55 -0800)]
doc: make osd failure example include >3 osds

More realistic.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agotestrados: fix omap_get_vals_by_keys call
Sage Weil [Thu, 8 Mar 2012 22:46:56 +0000 (14:46 -0800)]
testrados: fix omap_get_vals_by_keys call

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: add zero_to field to PG::OndiskLog; track zeroed region of pg log
Sage Weil [Thu, 8 Mar 2012 22:29:42 +0000 (14:29 -0800)]
osd: add zero_to field to PG::OndiskLog; track zeroed region of pg log

Track which region of the log has been zeroed on disk.  This may be
different from tail if 'osd preserved trimmed log = false' in the config.

Only zero the portion of the log we need to.  This avoids rezeroing regions
or missing bits when 'osd preserved trimmed log' was off and is then turned
on.

Signed-off-by: Sage Weil <sage@newdream.net>
Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
13 years agofilestore: use FL_ALLOC_PUNCH_HOLE to zero, when available
Sage Weil [Thu, 8 Mar 2012 22:30:06 +0000 (14:30 -0800)]
filestore: use FL_ALLOC_PUNCH_HOLE to zero, when available

First try the FL_ALLOC_PUNCH_HOLE fallocate() flag.  If we get EOPNOTSUPP,
fall back to writing zeros.

Check for fallocate(2) with configure.  Also, avoid this if we are not
Linux, since I'm not sure about the hard-coded FL_ALLOC_PUNCH_HOLE being
correct on other platforms.

Signed-off-by: Sage Weil <sage@newdream.net>
Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoosd: fix op_wq vs pg->lock ordering
Sage Weil [Thu, 8 Mar 2012 22:16:59 +0000 (14:16 -0800)]
osd: fix op_wq vs pg->lock ordering

map_lock
 -> pg->lock
   -> op_wq

Fixes: #2153
Signed-off-by: Sage Weil <sage@newdream.net>
Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoMerge branch 'master' of ssh://skinny/home/yehudasa/ceph
Yehuda Sadeh [Thu, 8 Mar 2012 06:58:42 +0000 (22:58 -0800)]
Merge branch 'master' of ssh://skinny/home/yehudasa/ceph

13 years agoMerge branch 'wip-rgw-new-atomic'
Yehuda Sadeh [Thu, 8 Mar 2012 06:53:32 +0000 (22:53 -0800)]
Merge branch 'wip-rgw-new-atomic'

13 years agorgw: append the currect bucket marker when removing bucket
Yehuda Sadeh [Thu, 8 Mar 2012 06:52:24 +0000 (22:52 -0800)]
rgw: append the currect bucket marker when removing bucket

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoMerge branch 'master' of ssh://skinny/home/yehudasa/ceph
Yehuda Sadeh [Thu, 8 Mar 2012 06:39:46 +0000 (22:39 -0800)]
Merge branch 'master' of ssh://skinny/home/yehudasa/ceph

13 years agoMerge branch 'wip-rgw-omap'
Yehuda Sadeh [Thu, 8 Mar 2012 06:35:40 +0000 (22:35 -0800)]
Merge branch 'wip-rgw-omap'

13 years agocls_rgw: fix rgw_bucket_init_index
Yehuda Sadeh [Thu, 8 Mar 2012 06:25:47 +0000 (22:25 -0800)]
cls_rgw: fix rgw_bucket_init_index

was failing to error in case header already existed

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: remove extra unused params from omap_get()
Yehuda Sadeh [Thu, 8 Mar 2012 06:19:25 +0000 (22:19 -0800)]
rgw: remove extra unused params from omap_get()

and also rename it to omap_get_all()

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: add cls_cxx_map_clear
Yehuda Sadeh [Thu, 8 Mar 2012 06:18:57 +0000 (22:18 -0800)]
rgw: add cls_cxx_map_clear

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoleveldb: drop compaction unit test
Samuel Just [Thu, 8 Mar 2012 05:59:30 +0000 (21:59 -0800)]
leveldb: drop compaction unit test

Signed-off-by: Samuel Just <rexludorum@gmail.com>
13 years agoReplicatedPG,librados: add filter_prefix to omap_get_vals
Samuel Just [Wed, 7 Mar 2012 21:08:36 +0000 (13:08 -0800)]
ReplicatedPG,librados: add filter_prefix to omap_get_vals

Signed-off-by: Samuel Just <rexludorum@gmail.com>
13 years agorgw: use prefix filter for bucket listing
Yehuda Sadeh [Thu, 8 Mar 2012 01:10:18 +0000 (17:10 -0800)]
rgw: use prefix filter for bucket listing

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoobjclass, cls_rgw: add prefix to omap_get_vals()
Yehuda Sadeh [Thu, 8 Mar 2012 01:03:45 +0000 (17:03 -0800)]
objclass, cls_rgw: add prefix to omap_get_vals()

13 years agolibrados: add higher level call for omap_get_keys() with prefix
Yehuda Sadeh [Thu, 8 Mar 2012 01:02:57 +0000 (17:02 -0800)]
librados: add higher level call for omap_get_keys() with prefix

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoMerge remote-tracking branch 'origin/wip_prefix' into wip-rgw-omap
Yehuda Sadeh [Thu, 8 Mar 2012 00:46:18 +0000 (16:46 -0800)]
Merge remote-tracking branch 'origin/wip_prefix' into wip-rgw-omap

13 years agorgw: switch to new encoders/decoders
Yehuda Sadeh [Thu, 8 Mar 2012 00:29:11 +0000 (16:29 -0800)]
rgw: switch to new encoders/decoders

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoenconding: add legacy decoder for 32 bit versions
Yehuda Sadeh [Thu, 8 Mar 2012 00:28:01 +0000 (16:28 -0800)]
enconding: add legacy decoder for 32 bit versions

In these cases if the version is smaller than the compat ver
we skip 3 bytes.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorbd: pass all mon addrs when mapping devices
Josh Durgin [Wed, 7 Mar 2012 23:12:03 +0000 (15:12 -0800)]
rbd: pass all mon addrs when mapping devices

Previously this repeated the address of the first monitor.

Fixes: #2152
Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
Reviewed-by: Sage Weil <sage@newdream.net>
13 years agomsgr: remove declaration of undefined SimpleMessenger::write_pid_file
Greg Farnum [Sat, 3 Mar 2012 00:13:04 +0000 (16:13 -0800)]
msgr: remove declaration of undefined SimpleMessenger::write_pid_file

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
Reviewed-by: Sage Weil <sage.weil@dreamhost.com>
13 years agomsgr: remove SimpleMessenger::get_ms_addr() in favor of Messenger::get_myaddr
Greg Farnum [Sat, 3 Mar 2012 00:08:15 +0000 (16:08 -0800)]
msgr: remove SimpleMessenger::get_ms_addr() in favor of Messenger::get_myaddr

And fix the comments on set_ip.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
Reviewed-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoobjectstore: fix collection_move() encoding
Sage Weil [Wed, 7 Mar 2012 22:07:38 +0000 (14:07 -0800)]
objectstore: fix collection_move() encoding

This was broken in the original f43c3d958fe5c32ae647ffa715390ada51ae2650.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoReplicatedPG,librados: add filter_prefix to omap_get_vals
Samuel Just [Wed, 7 Mar 2012 21:08:36 +0000 (13:08 -0800)]
ReplicatedPG,librados: add filter_prefix to omap_get_vals

Signed-off-by: Samuel Just <rexludorum@gmail.com>
13 years agorgw: some minor cleanups
Yehuda Sadeh [Wed, 7 Mar 2012 20:34:35 +0000 (12:34 -0800)]
rgw: some minor cleanups

following a review

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoobjclass: fix cls_cxx_map_write_header
Yehuda Sadeh [Wed, 7 Mar 2012 18:45:13 +0000 (10:45 -0800)]
objclass: fix cls_cxx_map_write_header

Claiming the buffer instead of encoding it.

Signed-off-by: Yehuda Sadeh <yehuda.sadeh@dreamhost.com>
13 years agocls_rgw: fix debug message
Yehuda Sadeh [Wed, 7 Mar 2012 18:44:43 +0000 (10:44 -0800)]
cls_rgw: fix debug message

Signed-off-by: Yehuda Sadeh <yehuda.sadeh@dreamhost.com>
13 years agoMerge remote-tracking branch 'gh/wip-doc'
Sage Weil [Wed, 7 Mar 2012 18:32:32 +0000 (10:32 -0800)]
Merge remote-tracking branch 'gh/wip-doc'

Reviewed-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agoosd: make degraded pgs count missing replicas as degraded objects
Sage Weil [Wed, 7 Mar 2012 16:56:17 +0000 (08:56 -0800)]
osd: make degraded pgs count missing replicas as degraded objects

If a PG is smaller than it should be, make sure the missing replicas are
included in the degraded object count.  This makes the overall degraded
percentage consistently meaningful even for PGs that aren't mid-recovery
of mid-backfill.

Fixes: #2137
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
13 years agomon: fix full osd detail
Sage Weil [Wed, 7 Mar 2012 05:03:39 +0000 (21:03 -0800)]
mon: fix full osd detail

And use a helper to avoid dup code.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agomon: assign severity to each health summary/detail item
Sage Weil [Wed, 7 Mar 2012 04:55:11 +0000 (20:55 -0800)]
mon: assign severity to each health summary/detail item

These can be included in the detail dump in the future.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agodoc: fix misc typos, bad phrasing
Sage Weil [Wed, 7 Mar 2012 04:35:33 +0000 (20:35 -0800)]
doc: fix misc typos, bad phrasing

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoobjclass, cls_rgw: update to use omap
Yehuda Sadeh [Wed, 7 Mar 2012 01:17:03 +0000 (17:17 -0800)]
objclass, cls_rgw: update to use omap

Signed-off-by: Yehuda Sadeh <yehuda.sadeh@dreamhost.com>
13 years agodoc: 2 words about radosgw failures
Sage Weil [Wed, 7 Mar 2012 00:18:13 +0000 (16:18 -0800)]
doc: 2 words about radosgw failures

- restarting the daemon.
- using the admin socket

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agodoc: talk about mon failures a bit
Sage Weil [Wed, 7 Mar 2012 00:09:42 +0000 (16:09 -0800)]
doc: talk about mon failures a bit

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agodoc: fix link
Sage Weil [Wed, 7 Mar 2012 00:09:32 +0000 (16:09 -0800)]
doc: fix link

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agodoc: slow osd requests
Sage Weil [Tue, 6 Mar 2012 23:45:29 +0000 (15:45 -0800)]
doc: slow osd requests

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agodoc: diagnose full osd cluster
Sage Weil [Tue, 6 Mar 2012 23:39:28 +0000 (15:39 -0800)]
doc: diagnose full osd cluster

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agomon: list nearfull/full osd detail
Sage Weil [Tue, 6 Mar 2012 23:38:31 +0000 (15:38 -0800)]
mon: list nearfull/full osd detail

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agodoc: describe 'stuck' states we check for
Sage Weil [Tue, 6 Mar 2012 23:31:29 +0000 (15:31 -0800)]
doc: describe 'stuck' states we check for

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agodoc: document some osd failure recovery scenarios
Sage Weil [Tue, 6 Mar 2012 23:27:02 +0000 (15:27 -0800)]
doc: document some osd failure recovery scenarios

- simple osd failure
- ceph health [detail]
- peering failure ('down') state
- unfound objects

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: list might_have_unfound locations in query result
Sage Weil [Tue, 6 Mar 2012 23:26:18 +0000 (15:26 -0800)]
osd: list might_have_unfound locations in query result

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agomon: include unfound count in health detail
Sage Weil [Tue, 6 Mar 2012 23:17:33 +0000 (15:17 -0800)]
mon: include unfound count in health detail

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agomon: refactor health, include optional detail
Sage Weil [Wed, 7 Mar 2012 01:05:22 +0000 (17:05 -0800)]
mon: refactor health, include optional detail

'ceph health' to get the usual summary, 'ceph health detail' to
additionally get a comprehensive list of problems found.

Eventually we can format this as yaml, json, whatever, too.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoMerge branch 'wip-collmove'
Samuel Just [Wed, 7 Mar 2012 00:05:21 +0000 (16:05 -0800)]
Merge branch 'wip-collmove'

13 years agorgw: switch to omap api
Yehuda Sadeh [Tue, 6 Mar 2012 23:48:23 +0000 (15:48 -0800)]
rgw: switch to omap api

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoleveldb: remove flawed unit test for now
Samuel Just [Tue, 6 Mar 2012 23:15:33 +0000 (15:15 -0800)]
leveldb: remove flawed unit test for now

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agolibrados: rename omap_get_vals_by_key to omap_get_vals_by_keys
Yehuda Sadeh [Tue, 6 Mar 2012 22:53:38 +0000 (14:53 -0800)]
librados: rename omap_get_vals_by_key to omap_get_vals_by_keys

merge fail

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agolibrados: add high level omap calls
Yehuda Sadeh [Tue, 6 Mar 2012 21:40:17 +0000 (13:40 -0800)]
librados: add high level omap calls

also rename get_vals_by_key to get_vals_by_keys

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: fix warning
Yehuda Sadeh [Tue, 6 Mar 2012 21:22:57 +0000 (13:22 -0800)]
rgw: fix warning

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: read bucket through tmap_get
Yehuda Sadeh [Tue, 6 Mar 2012 19:15:43 +0000 (11:15 -0800)]
rgw: read bucket through tmap_get

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoMerge branch 'wip_omap'
Samuel Just [Tue, 6 Mar 2012 19:46:24 +0000 (11:46 -0800)]
Merge branch 'wip_omap'

Reviewed-by: Sage Weil <sage.weil@dreamhost.com>
13 years agotest_rados_api_aio: add omap
Samuel Just [Tue, 6 Mar 2012 19:32:04 +0000 (11:32 -0800)]
test_rados_api_aio: add omap

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoosd: testing for tmap auto upgrade
Samuel Just [Tue, 6 Mar 2012 18:35:24 +0000 (10:35 -0800)]
osd: testing for tmap auto upgrade

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoReplicatedPG: transparently upgrade TMAP
Samuel Just [Fri, 2 Mar 2012 17:25:13 +0000 (09:25 -0800)]
ReplicatedPG: transparently upgrade TMAP

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoRadosModel: Add omap operations to RadosModel
Samuel Just [Tue, 7 Feb 2012 16:57:19 +0000 (08:57 -0800)]
RadosModel: Add omap operations to RadosModel

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoReplicatedPG: Add omap ops to ReplicatedPG
Samuel Just [Fri, 2 Mar 2012 00:22:27 +0000 (16:22 -0800)]
ReplicatedPG: Add omap ops to ReplicatedPG

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agolibrados: Added omap operations to librados
Samuel Just [Thu, 1 Mar 2012 22:52:20 +0000 (14:52 -0800)]
librados: Added omap operations to librados

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoosdc: Add omap operation stubs to Objecter::ObjectOperation
Samuel Just [Thu, 1 Mar 2012 20:33:33 +0000 (12:33 -0800)]
osdc: Add omap operation stubs to Objecter::ObjectOperation

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoReplicatedPG: add omap_header to recovery
Samuel Just [Fri, 2 Mar 2012 19:12:56 +0000 (11:12 -0800)]
ReplicatedPG: add omap_header to recovery

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agolibrados: add tmap_put to ObjectWriteOperation
Samuel Just [Tue, 6 Mar 2012 18:34:21 +0000 (10:34 -0800)]
librados: add tmap_put to ObjectWriteOperation

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoMerge branch 'wip-1796'
Sage Weil [Tue, 6 Mar 2012 19:03:01 +0000 (11:03 -0800)]
Merge branch 'wip-1796'

Reviewed-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agomds: respawn when blacklisted
Sage Weil [Sat, 3 Mar 2012 22:28:21 +0000 (14:28 -0800)]
mds: respawn when blacklisted

If we are blacklisted by the OSD cluster, it's because we were too slow
and were replaced by another ceph-mds.  Respawn and re-register as a
standby.

If we get some other write error, shut down.

Fixes: #1796
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agojournaler: add generic write error handler
Sage Weil [Sat, 3 Mar 2012 22:25:25 +0000 (14:25 -0800)]
journaler: add generic write error handler

Specify a generic callback for any write error the journaler encounters.
This is more helpful than passing up write errors to specific callers
because

 - there are several of them
 - journaler initiates writes on its own (like the head)

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>