]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Yehuda Sadeh [Wed, 17 Apr 2013 02:20:59 +0000 (19:20 -0700)]
rgw-admin: add object stat command
for retrieving object metadata.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Wed, 17 Apr 2013 00:44:46 +0000 (17:44 -0700)]
rgw-admin: bucket list also specifies object namespace
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Tue, 16 Apr 2013 23:58:31 +0000 (16:58 -0700)]
rgw: copy_obj uses req_id as tag
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Tue, 16 Apr 2013 05:49:26 +0000 (22:49 -0700)]
rgw: radosgw-admin bucket list --bucket lists bucket objects
Also lists tag for each object.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Tue, 16 Apr 2013 04:40:11 +0000 (21:40 -0700)]
rgw: call rgw_store_user_info() with objv_tracker
another rebase casualty
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Tue, 16 Apr 2013 02:08:47 +0000 (19:08 -0700)]
rgw-admin: fix some more merge issues
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Tue, 16 Apr 2013 01:51:35 +0000 (18:51 -0700)]
rgw-admin: fix user_id initialization
broken due to rebase
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Mon, 15 Apr 2013 19:32:48 +0000 (12:32 -0700)]
rgw: share object tag and index tag
object tag is now being written to the index, so that both
object and index hold the same tag. This is needed so that we
could know whether object and index refer to the same instance.
Also cleanup old legacy code that did atomic ops through cloning
objects.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 12 Apr 2013 21:12:38 +0000 (14:12 -0700)]
rgw: bucket index log fixes
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 12 Apr 2013 17:15:06 +0000 (10:15 -0700)]
radosgw-admin: bilog list gets marker and max-entries params
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Thu, 11 Apr 2013 21:43:35 +0000 (14:43 -0700)]
radosgw-admin, cls_rgw: list bucket index log
a new radosgw-admin command to list bucket index log.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Thu, 11 Apr 2013 18:33:27 +0000 (11:33 -0700)]
cls_rgw: bucket index versioning
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Thu, 11 Apr 2013 06:00:28 +0000 (23:00 -0700)]
rgw: fix broken radosgw-admin user * commands
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Wed, 10 Apr 2013 21:49:34 +0000 (14:49 -0700)]
cls_rgw, rgw: bucket index logs modifications
Add a log to the bucket index.
This commit also ties the "epoch" version that is kept
per index entry to the relevant ceph pool id. This fixes
the dependency on the specific pool where the object was
created, and makes it possible to copy rgw data pools.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 22 Mar 2013 18:01:02 +0000 (11:01 -0700)]
rgw: metadata rm
Still needs to fix the way we remove user entries; need to take
different path, similar to put_entry())
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 22 Mar 2013 17:54:47 +0000 (10:54 -0700)]
rgw: cls_log_trim boundary change
end_time is not inclusive
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Wed, 20 Mar 2013 22:47:14 +0000 (15:47 -0700)]
rgw: show metadata log through radosgw-admin
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Wed, 20 Mar 2013 17:38:30 +0000 (10:38 -0700)]
rgw: use new cls_log listing interface
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Wed, 20 Mar 2013 17:37:42 +0000 (10:37 -0700)]
cls_log: adjust listing api
Listing api now also gets end time and a marker.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Tue, 19 Mar 2013 21:52:47 +0000 (14:52 -0700)]
rgw: log user operations
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Tue, 19 Mar 2013 14:32:16 +0000 (07:32 -0700)]
rgw: track object versions between reads and writes
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 15 Mar 2013 19:52:25 +0000 (12:52 -0700)]
rgw: initialize meta_mgr earlier
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 15 Mar 2013 19:51:58 +0000 (12:51 -0700)]
test_cls_log: remove warning
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 15 Mar 2013 18:14:02 +0000 (11:14 -0700)]
cls_log: extend unitest
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 15 Mar 2013 18:02:10 +0000 (11:02 -0700)]
cls_log: more fixes
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Thu, 14 Mar 2013 20:42:44 +0000 (13:42 -0700)]
cls_log: unitest
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Thu, 14 Mar 2013 20:42:29 +0000 (13:42 -0700)]
cls_log: fixes, other adjustments
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Thu, 14 Mar 2013 17:32:00 +0000 (10:32 -0700)]
objclass: provide new api for unique subop versioning
We need to be able to generate a unique identifier for
each subop. This can be useful e.g., if we want to keep multiple
omap data entries indexed by the same key. The unique id
is being generated by the current object id and the current
osd subop count. For write operations it's unique.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Thu, 14 Mar 2013 17:28:54 +0000 (10:28 -0700)]
osd: keep track of current osd subop num
This can be used later to generate unique subop versions
in compound write operations.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Tue, 12 Mar 2013 21:31:27 +0000 (14:31 -0700)]
cls_log: trim works in chunks, returns -ENODATA when done
Also created a higher level interface that iterates until
done.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 8 Mar 2013 23:30:31 +0000 (15:30 -0800)]
cls_log: a class to handle info sorted by timestamp
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Wed, 6 Mar 2013 18:25:52 +0000 (10:25 -0800)]
rgw: metadata list user, only show uids
don't show unrelated object names
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Wed, 6 Mar 2013 06:00:43 +0000 (22:00 -0800)]
rgw: user metadata updates also key version
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Tue, 5 Mar 2013 22:43:00 +0000 (14:43 -0800)]
rgw: add top level metadata handler
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Tue, 5 Mar 2013 22:08:21 +0000 (14:08 -0800)]
rgw: put metadata, other cleanups
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Mon, 4 Mar 2013 20:25:34 +0000 (12:25 -0800)]
rgw: metadata manager, api to list keys
Also, implement key listing for user metadata.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 1 Mar 2013 21:01:18 +0000 (13:01 -0800)]
rgw: metadata set/get infrastructure
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 1 Mar 2013 00:48:57 +0000 (16:48 -0800)]
rgw: rgw_get_system_obj() can return obj_version
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 1 Mar 2013 00:08:30 +0000 (16:08 -0800)]
cls_version: add cls_version_read(ObjectReadOpeation&)
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Thu, 28 Feb 2013 17:56:43 +0000 (09:56 -0800)]
librados: add two more ObjectOperation::exec()
- one that also gets out bufferlist and ret value pointer
- one that gets a callback context
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Thu, 28 Feb 2013 18:14:21 +0000 (10:14 -0800)]
rgw: start tying metadata objs to version objclass
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Wed, 27 Feb 2013 02:01:46 +0000 (18:01 -0800)]
cls_version: unitest
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Wed, 27 Feb 2013 02:00:59 +0000 (18:00 -0800)]
cls_version: various fixes
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Tue, 26 Feb 2013 22:53:49 +0000 (14:53 -0800)]
cls_version: create a new objclass
New objclass to track and modify objects versions.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Sat, 23 Feb 2013 00:19:37 +0000 (16:19 -0800)]
rgw: fix json decoding of rgw_bucket
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 22 Feb 2013 20:42:18 +0000 (12:42 -0800)]
rgw: regionmap update
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 22 Feb 2013 01:46:24 +0000 (17:46 -0800)]
rgw: get/set region map
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Thu, 21 Feb 2013 23:37:57 +0000 (15:37 -0800)]
rgw: zone list, setup changes
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Thu, 21 Feb 2013 22:56:11 +0000 (14:56 -0800)]
common/ceph_parser.cc: cleanup
remove extra logging to stdout
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Thu, 21 Feb 2013 01:03:10 +0000 (17:03 -0800)]
rgw: set region info, default region
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Thu, 21 Feb 2013 00:22:40 +0000 (16:22 -0800)]
rgw: can list regions, show default region info
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Wed, 20 Feb 2013 01:57:06 +0000 (17:57 -0800)]
rgw: some region/zone related cleanups/fixes
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Wed, 20 Feb 2013 00:34:50 +0000 (16:34 -0800)]
rgw: admin command to show region info
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 15 Feb 2013 17:25:24 +0000 (09:25 -0800)]
rgw: derr -> lderr
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Thu, 14 Feb 2013 21:20:08 +0000 (13:20 -0800)]
rgw: region creation
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Tue, 12 Feb 2013 23:52:16 +0000 (15:52 -0800)]
rgw: region management encoding/decoding changes
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Tue, 12 Feb 2013 00:41:28 +0000 (16:41 -0800)]
rgw: define region/zone data structures
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Gary Lowell [Mon, 6 May 2013 20:18:56 +0000 (13:18 -0700)]
v0.61
Samuel Just [Mon, 6 May 2013 17:56:50 +0000 (10:56 -0700)]
os/: default to dio for non-block journals
Workaround: #4910
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
Sage Weil [Mon, 6 May 2013 18:40:52 +0000 (11:40 -0700)]
ceph-disk: use separate lock files for prepare, activate
Use a separate lock file for prepare and activate to avoid deadlock. This
didn't seem to trigger on all machines, but in many cases, the prepare
process would take the file lock and later trigger a udev event and the
activate would then block on the same lock, either when we explicitly call
'udevadm settle --timeout=10' or when partprobe does it on our behalf
(without a timeout!). Avoid this by using separate locks for prepare
and activate. We only care if multiple activates race; it is
okay for a prepare to be in progress and for an activate to be kicked
off.
Signed-off-by: Sage Weil <sage@inktank.com>
Danny Al-Gaaf [Mon, 6 May 2013 13:42:57 +0000 (15:42 +0200)]
ceph-test.install: add ceph-monstore-tool and ceph-osdomap-tool
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Mon, 6 May 2013 13:21:56 +0000 (15:21 +0200)]
ceph.spec.in: remove twice listed ceph-coverage
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Mon, 6 May 2013 13:09:32 +0000 (15:09 +0200)]
ceph.spec: add some files to ceph
Add installed, but not packaged files to ceph-test (ceph-monstore-tool,
ceph-osdomap-tool) rpm file section.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Sage Weil [Fri, 3 May 2013 23:20:26 +0000 (16:20 -0700)]
mon: fix init sequence when not daemonizing
We made the common_init_finish and chdir conditional on daemonize in commit
2e0dd5ae6c8751e33d456b2b06c1204b63db959a , breaking init (asok at least)
when -f is specified (as with upstart).
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Sage Weil [Fri, 3 May 2013 23:04:31 +0000 (16:04 -0700)]
mon: avoid null deref in Monitor::_mon_status()
mikedawson reports:
*** Caught signal (Segmentation fault) **
in thread
7f40ce270700
ceph version
0.60-801-g7ec0151 (
7ec01513970b5a977bdbdf60052b6f6e257d267e )
1: /usr/bin/ceph-mon() [0x59d550]
2: (()+0xfbd0) [0x7f40d3e38bd0]
3: (operator<<(std::ostream&, entity_name_t const&)+0x16) [0x4d7c46]
4: (operator<<(std::ostream&, entity_inst_t const&)+0x1b) [0x4d837b]
5: (Monitor::_mon_status(std::ostream&)+0x2ce) [0x4d284e]
6: (Monitor::do_admin_command(std::string, std::string, std::ostream&)+0x4f) [0x4d652f]
7: (AdminHook::call(std::string, std::string, ceph::buffer::list&)+0x68) [0x4efa38]
8: (AdminSocket::do_accept()+0x451) [0x64ab81]
9: (AdminSocket::entry()+0x398) [0x64c528]
10: (()+0x7f8e) [0x7f40d3e30f8e]
11: (clone()+0x6d) [0x7f40d237ae1d]
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Sage Weil [Fri, 3 May 2013 20:28:24 +0000 (13:28 -0700)]
ceph.spec: require xfsprogs
This is needed when creating new OSDs (via ceph-disk). At least for most
people. Eventually we'll want to include btrfs here.
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Fri, 3 May 2013 00:18:27 +0000 (17:18 -0700)]
init-ceph: update osd crush map position on start
This is what the upstart ceph-osd.conf does; we need to do the same so that
new OSDs (e.g., that ceph-deploy creates) get added to the crush map.
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Fri, 3 May 2013 18:29:24 +0000 (11:29 -0700)]
mon: fork early to avoid leveldb static env state
leveldb has static state that prevents it from recreating its worker thread
after our fork(), even when we close and reopen the database (tsk tsk!).
Avoid this by forking early, before we touch leveldb.
Hide the details in a Preforker class. This is modeled after what
ceph-fuse already does; we should convert it later.
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Sage Weil [Thu, 2 May 2013 20:32:41 +0000 (13:32 -0700)]
Merge remote-tracking branch 'gh/wip-mon-rank' into next
Reviewed-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
Samuel Just [Thu, 2 May 2013 19:49:34 +0000 (12:49 -0700)]
tools/: add paranoid option to ceph-osdomap-tool
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Sage Weil [Thu, 2 May 2013 19:47:24 +0000 (12:47 -0700)]
osd: default 'osd leveldb paranoid = false'
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Thu, 2 May 2013 19:31:38 +0000 (12:31 -0700)]
librados,client: bump mount timeout to 5 min
30 seconds is pretty short.
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Samuel Just [Thu, 2 May 2013 17:47:55 +0000 (10:47 -0700)]
OSD: also walk maps individually for start_split in consume_map()
We need to go map-by-map to get the parents right in consume_map()
just as we must in load_pgs().
Fixes: 4884
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Sage Weil [Thu, 2 May 2013 18:06:22 +0000 (11:06 -0700)]
rgw: increase startup timeout to 5 min
30s is too short.
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Thu, 2 May 2013 17:18:39 +0000 (10:18 -0700)]
Merge branch 'wip-paranoid' into next
Sage Weil [Thu, 2 May 2013 00:24:40 +0000 (17:24 -0700)]
Merge remote-tracking branch 'gh/wip-doc-cuttlefish' into next
Samuel Just [Wed, 1 May 2013 23:11:47 +0000 (16:11 -0700)]
Merge remote-tracking branch 'upstream/wip_4884' into next
Fixes: #4884
Reviewed-by: Greg Farnum <greg@inktank.com>
Samuel Just [Wed, 1 May 2013 01:11:05 +0000 (18:11 -0700)]
Makefile,gitignore: ceph-monstore-tool, not ceph_monstore_tool
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Wed, 1 May 2013 00:57:56 +0000 (17:57 -0700)]
Makefile: put ceph_monstore_tool in bin_DEBUGPROGRAMS
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Tue, 30 Apr 2013 16:31:26 +0000 (09:31 -0700)]
tools: ceph-osdomap-tool.cc
Add tool for dumping info from osd omap.
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Wed, 1 May 2013 21:59:08 +0000 (14:59 -0700)]
OSD: load_pgs() should fill in start_split honestly
In load_pgs(), we previously called assigned children starting
at the loaded pg created between its stored epoch and the current
osdmap to have that pg as their parent. This is not correct, some
of the children may have been split in subsequent epochs from children
split in earlier epochs. Instead, do each map individually.
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Wed, 1 May 2013 21:56:25 +0000 (14:56 -0700)]
OSD: cancel_pending_splits needs to cancel all descendants
expand_pg_num() and load_pgs() may result in a pg with children
in pending_splits which also have children in pending_splits (etc).
Signed-off-by: Samuel Just <sam.just@inktank.com>
Sage Weil [Wed, 1 May 2013 21:40:33 +0000 (14:40 -0700)]
osd: add --osd-leveldb-paranoid flag
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Wed, 1 May 2013 21:38:59 +0000 (14:38 -0700)]
mon: add --mon-leveldb-paranoid flag
This is sort of equivalent to an fsck.
Signed-off-by: Sage Weil <sage@inktank.com>
Greg Farnum [Wed, 1 May 2013 21:10:31 +0000 (14:10 -0700)]
dumper: fix Objecter locking
Locking expectations changed at some point, and the Dumper wasn't
updated to comply:
1) We need to take the lock for Objecter, as it
doesn't do so on its own any more.
2) We need to drop the lock in several places so that Objecter
can take delivery of messages
Signed-off-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
Sage Weil [Wed, 1 May 2013 05:48:52 +0000 (22:48 -0700)]
Revert "PaxosService: use get and put for version_t"
This reverts commit
e725c3e210b244e090d70c77d937c94f4f63a2be .
These inadvertantely got rid of the prefix portion of the key, which
lead to overwriting the wrong keys.
Fixes: #4872
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
Sage Weil [Wed, 1 May 2013 17:57:35 +0000 (10:57 -0700)]
mon/Paxos: update first_committed when we trim
The Paxos::trim() -> ::trim_to() path trims old states but does not
update first_committed. This misinforms later paxos rounds such that
peers think they can participate and end up with COMMIT messages
following the COLLECT/LAST exchange that are for future commits they
can't do anything with and then crash out when they get the BEGIN:
mon/Paxos.cc: 557: FAILED assert(begin->last_committed == last_committed)
Fixes: #4879
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Sage Weil [Wed, 1 May 2013 04:16:16 +0000 (21:16 -0700)]
mon/Paxos: don't ignore peer first_committed
We go to the effort of keeping a map of the peer's first/last committed
so that we can send the right commits during the first phase of paxos,
but we forgot to record the first value. This appears to simply be an
oversight. It is mostly harmless; it just means we send extra states
that the peer already has.
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Joao Eduardo Luis [Tue, 30 Apr 2013 16:12:05 +0000 (17:12 +0100)]
mon: Monitor: fix bug on _pick_random_mon() that would choose an invalid rank
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
Joao Eduardo Luis [Tue, 30 Apr 2013 15:28:42 +0000 (16:28 +0100)]
mon: Monitor: use rank instead of name when randomly picking monitors
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
Samuel Just [Tue, 30 Apr 2013 22:48:10 +0000 (15:48 -0700)]
OSD: clean up in progress split state on pg removal
There are two cases: 1) The parent pg has not yet initiated the split 2) The
parent pg has initiated the split.
Previously in case 1), _remove_pg left the entry for its children in the
in_progress_splits map blocking subsequent peering attempts.
In case 1), we need to unblock requests on the child pgs for the parent on
parent removal. We don't need to bother waking requests since any requests
received prior to the remove_pg request are necessarily obsolete.
In case 2), we don't need to do anything: the child will complete the split on
its own anyway.
Thus, we now track pending_splits vs in_progress_splits. Children in
pending_splits are in state 1), in_progress_splits in state 2). split_pgs
bumps pgs from pending_splits to in_progress_splits atomically with respect to
_remove_pg since the parent pg lock is held in both places.
Fixes: #4813
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Greg Farnum [Wed, 1 May 2013 01:12:10 +0000 (18:12 -0700)]
mon: communicate the quorum_features properly when declaring victory.
Fixes #4747.
Signed-off-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
John Wilkins [Wed, 1 May 2013 01:04:46 +0000 (18:04 -0700)]
doc: Incorporating Tamil's feedback.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
John Wilkins [Wed, 1 May 2013 00:48:05 +0000 (17:48 -0700)]
doc: Reordered header levels for visual clarity.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
John Wilkins [Wed, 1 May 2013 00:39:50 +0000 (17:39 -0700)]
doc: Fixed a few typos.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
John Wilkins [Wed, 1 May 2013 00:32:15 +0000 (17:32 -0700)]
doc: Updated the upgrade guide for Aronaut and Bobtail to Cuttlefish.
fixes: #4874
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
Greg Farnum [Tue, 30 Apr 2013 22:39:21 +0000 (15:39 -0700)]
Merge branch 'wip-4837-election-syncing' into next
Reviewed-by: Sage Weil <sage@inktank.com>
Sage Weil [Tue, 30 Apr 2013 21:16:04 +0000 (14:16 -0700)]
ceph-disk: tolerate /sbin/service or /usr/sbin/service
CentOS/RH has it in /sbin, others in /usr/sbin.
Backport: bobtail
Signed-off-by: Sage Weil <sage@inktank.com>
Joao Eduardo Luis [Tue, 30 Apr 2013 17:45:22 +0000 (18:45 +0100)]
mon: Monitor: disregard paxos_max_join_drift when deciding whether to sync
We should only rely on whether our paxos version is overlap with whatever
they have -- we'll catch up later with them.
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
Greg Farnum [Tue, 30 Apr 2013 20:35:53 +0000 (13:35 -0700)]
mon: if we get our own sync_start back, drop it on the floor.
We have timeouts that will clean everything up, and this can happen
in some cases that we've decided are legitimate. Hopefully we'll
be able to do something else later.
Signed-off-by: Greg Farnum <greg@inktank.com>