]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
12 years agorgw: more data changes log implementation
Yehuda Sadeh [Mon, 6 May 2013 20:41:29 +0000 (13:41 -0700)]
rgw: more data changes log implementation

Remove a bunch of hard coded stuff. Make renew thread updates
expiration. Only renew if there was more than one request through the
current window.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agoRefCounteCond: keep return val, wait() returns it
Yehuda Sadeh [Mon, 6 May 2013 20:39:43 +0000 (13:39 -0700)]
RefCounteCond: keep return val, wait() returns it

It is necessary in some cases to notify waiters of the
actual return value for the action they were waiting on.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: changed data log renew thread
Yehuda Sadeh [Thu, 2 May 2013 04:34:38 +0000 (21:34 -0700)]
rgw: changed data log renew thread

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: limit num of buckets in data changes log
Yehuda Sadeh [Thu, 2 May 2013 01:10:54 +0000 (18:10 -0700)]
rgw: limit num of buckets in data changes log

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: use shared_ptr instead of RefCountedObject
Yehuda Sadeh [Wed, 1 May 2013 22:40:44 +0000 (15:40 -0700)]
rgw: use shared_ptr instead of RefCountedObject

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agolru_map: infrastructure for a bounded map
Yehuda Sadeh [Wed, 1 May 2013 20:28:43 +0000 (13:28 -0700)]
lru_map: infrastructure for a bounded map

Useful for cache-like maps, where we want to control
the max number of entries in the map.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: data changes log, don't always send new requests
Yehuda Sadeh [Wed, 1 May 2013 20:32:10 +0000 (13:32 -0700)]
rgw: data changes log, don't always send new requests

We may piggy back on older entries that hasn't expired yet.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: data changes log, naive implementation
Yehuda Sadeh [Fri, 26 Apr 2013 02:06:08 +0000 (19:06 -0700)]
rgw: data changes log, naive implementation

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: decouple bucket data pool from bucket index pool
Yehuda Sadeh [Thu, 18 Apr 2013 21:31:50 +0000 (14:31 -0700)]
rgw: decouple bucket data pool from bucket index pool

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: fix get_obj() with zero sized obj
Yehuda Sadeh [Thu, 18 Apr 2013 20:30:45 +0000 (13:30 -0700)]
rgw: fix get_obj() with zero sized obj

Now that even zero sized objs have manifest a
test had to be modified.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: don't set shadow obj attr in object metadata
Yehuda Sadeh [Wed, 17 Apr 2013 19:54:28 +0000 (12:54 -0700)]
rgw: don't set shadow obj attr in object metadata

This is incorrect, was only right for pre-manifest objects.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw-admin: object stat also decodes policy
Yehuda Sadeh [Wed, 17 Apr 2013 19:49:01 +0000 (12:49 -0700)]
rgw-admin: object stat also decodes policy

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: update cli test for radosgw-admin
Yehuda Sadeh [Wed, 17 Apr 2013 18:47:54 +0000 (11:47 -0700)]
rgw: update cli test for radosgw-admin

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agoMakefile.am: add missing header file
Yehuda Sadeh [Wed, 17 Apr 2013 18:21:56 +0000 (11:21 -0700)]
Makefile.am: add missing header file

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw-admin: add object stat command
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>
12 years agorgw-admin: bucket list also specifies object namespace
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>
12 years agorgw: copy_obj uses req_id as tag
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>
12 years agorgw: radosgw-admin bucket list --bucket lists bucket objects
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>
12 years agorgw: call rgw_store_user_info() with objv_tracker
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>
12 years agorgw-admin: fix some more merge issues
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>
12 years agorgw-admin: fix user_id initialization
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>
12 years agorgw: share object tag and index tag
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>
12 years agorgw: bucket index log fixes
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>
12 years agoradosgw-admin: bilog list gets marker and max-entries params
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>
12 years agoradosgw-admin, cls_rgw: list bucket index log
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>
12 years agocls_rgw: bucket index versioning
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>
12 years agorgw: fix broken radosgw-admin user * commands
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>
12 years agocls_rgw, rgw: bucket index logs modifications
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>
12 years agorgw: metadata rm
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>
12 years agorgw: cls_log_trim boundary change
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>
12 years agorgw: show metadata log through radosgw-admin
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>
12 years agorgw: use new cls_log listing interface
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>
12 years agocls_log: adjust listing api
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>
12 years agorgw: log user operations
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>
12 years agorgw: track object versions between reads and writes
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>
12 years agorgw: initialize meta_mgr earlier
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>
12 years agotest_cls_log: remove warning
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>
12 years agocls_log: extend unitest
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>
12 years agocls_log: more fixes
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>
12 years agocls_log: unitest
Yehuda Sadeh [Thu, 14 Mar 2013 20:42:44 +0000 (13:42 -0700)]
cls_log: unitest

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agocls_log: fixes, other adjustments
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>
12 years agoobjclass: provide new api for unique subop versioning
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>
12 years agoosd: keep track of current osd subop num
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>
12 years agocls_log: trim works in chunks, returns -ENODATA when done
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>
12 years agocls_log: a class to handle info sorted by timestamp
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>
12 years agorgw: metadata list user, only show uids
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>
12 years agorgw: user metadata updates also key version
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>
12 years agorgw: add top level metadata handler
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>
12 years agorgw: put metadata, other cleanups
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>
12 years agorgw: metadata manager, api to list keys
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>
12 years agorgw: metadata set/get infrastructure
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>
12 years agorgw: rgw_get_system_obj() can return obj_version
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>
12 years agocls_version: add cls_version_read(ObjectReadOpeation&)
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>
12 years agolibrados: add two more ObjectOperation::exec()
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>
12 years agorgw: start tying metadata objs to version objclass
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>
12 years agocls_version: unitest
Yehuda Sadeh [Wed, 27 Feb 2013 02:01:46 +0000 (18:01 -0800)]
cls_version: unitest

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agocls_version: various fixes
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>
12 years agocls_version: create a new objclass
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>
12 years agorgw: fix json decoding of rgw_bucket
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>
12 years agorgw: regionmap update
Yehuda Sadeh [Fri, 22 Feb 2013 20:42:18 +0000 (12:42 -0800)]
rgw: regionmap update

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: get/set region map
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>
12 years agorgw: zone list, setup changes
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>
12 years agocommon/ceph_parser.cc: cleanup
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>
12 years agorgw: set region info, default region
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>
12 years agorgw: can list regions, show default region info
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>
12 years agorgw: some region/zone related cleanups/fixes
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>
12 years agorgw: admin command to show region info
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>
12 years agorgw: derr -> lderr
Yehuda Sadeh [Fri, 15 Feb 2013 17:25:24 +0000 (09:25 -0800)]
rgw: derr -> lderr

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: region creation
Yehuda Sadeh [Thu, 14 Feb 2013 21:20:08 +0000 (13:20 -0800)]
rgw: region creation

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: region management encoding/decoding changes
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>
12 years agorgw: define region/zone data structures
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>
12 years agov0.61 v0.61
Gary Lowell [Mon, 6 May 2013 20:18:56 +0000 (13:18 -0700)]
v0.61

12 years agoos/: default to dio for non-block journals
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>
12 years agoceph-disk: use separate lock files for prepare, activate
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>
12 years agoceph-test.install: add ceph-monstore-tool and ceph-osdomap-tool
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>
12 years agoceph.spec.in: remove twice listed ceph-coverage
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>
12 years agoceph.spec: add some files to ceph
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>
12 years agomon: fix init sequence when not daemonizing
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>
12 years agomon: avoid null deref in Monitor::_mon_status()
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>
12 years agoceph.spec: require xfsprogs
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>
12 years agoinit-ceph: update osd crush map position on start
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>
12 years agomon: fork early to avoid leveldb static env state
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>
12 years agoMerge remote-tracking branch 'gh/wip-mon-rank' into next
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>
12 years agotools/: add paranoid option to ceph-osdomap-tool
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>
12 years agoosd: default 'osd leveldb paranoid = false'
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>
12 years agolibrados,client: bump mount timeout to 5 min
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>
12 years agoOSD: also walk maps individually for start_split in consume_map()
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>
12 years agorgw: increase startup timeout to 5 min
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>
12 years agoMerge branch 'wip-paranoid' into next
Sage Weil [Thu, 2 May 2013 17:18:39 +0000 (10:18 -0700)]
Merge branch 'wip-paranoid' into next

12 years agoMerge remote-tracking branch 'gh/wip-doc-cuttlefish' 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

12 years agoMerge remote-tracking branch 'upstream/wip_4884' 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>
12 years agoMakefile,gitignore: ceph-monstore-tool, not ceph_monstore_tool
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>
12 years agoMakefile: put ceph_monstore_tool in bin_DEBUGPROGRAMS
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>
12 years agotools: ceph-osdomap-tool.cc
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>
12 years agoOSD: load_pgs() should fill in start_split honestly
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>
12 years agoOSD: cancel_pending_splits needs to cancel all descendants
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>
12 years agoosd: add --osd-leveldb-paranoid flag
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>
12 years agomon: add --mon-leveldb-paranoid flag
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>
12 years agodumper: fix Objecter locking
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>
12 years agoRevert "PaxosService: use get and put for version_t"
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>