]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
12 years agoFixup usage to reflect options available
Sam Lang [Wed, 19 Sep 2012 21:33:16 +0000 (14:33 -0700)]
Fixup usage to reflect options available

Signed-off-by: Sam Lang <sam.lang@inktank.com>
12 years agoSwap current dir (.) with CEPH_BIN for OOT builds
Sam Lang [Wed, 19 Sep 2012 20:57:53 +0000 (13:57 -0700)]
Swap current dir (.) with CEPH_BIN for OOT builds

With out-of-tree builds, vstart.sh needs CEPH_BIN to be set, and
needs to look for init-ceph in CEPH_BIN rather than just ./init-ceph.

Signed-off-by: Sam Lang <sam.lang@inktank.com>
12 years agoMove keyring option to global section
Sam Lang [Wed, 19 Sep 2012 20:22:59 +0000 (13:22 -0700)]
Move keyring option to global section

Using vstart.sh -n uses ceph-authtool to generate the keyring file
in ./keyring.  The vstart.sh script then writes out the ceph.conf
with a keyring option in the [client] section, so when the monitors
start, they can't find a keyring file.  This commit puts the keyring in
the [global] section.

Signed-off-by: Sam Lang <sam.lang@inktank.com>
12 years agorbd/copy.sh: fix typo
Alex Elder [Wed, 19 Sep 2012 03:51:10 +0000 (22:51 -0500)]
rbd/copy.sh: fix typo

Or maybe it was a spello, or a thinko, or something.  In any case
I'm pretty sure Josh intended to call the function he added in
commit 78d6a60ca, and not the non-existent "test_import_args".

Signed-off-by: Alex Elder <elder@inktank.com>
12 years agoMerge remote-tracking branch 'gh/next'
Sage Weil [Tue, 18 Sep 2012 23:49:58 +0000 (16:49 -0700)]
Merge remote-tracking branch 'gh/next'

12 years agoMerge remote branch 'origin/wip-librbd-locking'
Josh Durgin [Tue, 18 Sep 2012 23:06:25 +0000 (16:06 -0700)]
Merge remote branch 'origin/wip-librbd-locking'

Conflicts:
qa/workunits/rbd/copy.sh

Reviewed-by: Sage Weil <sage.weil@inktank.com>
12 years agolibrbd: bump version
Josh Durgin [Mon, 10 Sep 2012 17:50:44 +0000 (10:50 -0700)]
librbd: bump version

This marks the availability of the cloning and locking functions.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agocls_rbd: remove locking methods
Josh Durgin [Sat, 8 Sep 2012 01:45:22 +0000 (18:45 -0700)]
cls_rbd: remove locking methods

These are unnecessary now that librbd is using the generic cls_lock.

Fixes: #2951
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agorbd: add locking commands
Josh Durgin [Sat, 8 Sep 2012 01:16:25 +0000 (17:16 -0800)]
rbd: add locking commands

The locker (entity_name_t) will be different each time the rbd
command line tool is run, so 'lock remove' is always breaking a lock.

Fixes: #2556
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoqa: update rbd tests and runner
Josh Durgin [Sat, 8 Sep 2012 01:14:39 +0000 (18:14 -0700)]
qa: update rbd tests and runner

* no longer need to wait for watch timeout since #2948 was fixed
* use --format 2 instead of --new-format
* add test_cls_rbd to run-rbd-tests script

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agolibrbd: use generic cls_lock instead of cls_rbd's locking
Josh Durgin [Sat, 1 Sep 2012 00:02:01 +0000 (17:02 -0700)]
librbd: use generic cls_lock instead of cls_rbd's locking

Update the librbd locking api to make more sense:
 * Add an optional tag to shared locking
 * only make shared vs exclusive different functions in the user-visible api
 * return a list of structs instead of a set of pairs
 * fix incorrect range checking in the C api
 * rename locks to lockers to be consistent with the generic locking class
 * rename other_locker parameter to client, to match the list_lockers usage

Fixes: #2952
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agocls_lock_client: add ObjectOperation-based get_lock_info
Josh Durgin [Fri, 31 Aug 2012 23:51:43 +0000 (16:51 -0700)]
cls_lock_client: add ObjectOperation-based get_lock_info

This will be used by librbd to grab lock info along with
the rest of its header information in a single request.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agocls_lock_types: add missing include
Josh Durgin [Fri, 31 Aug 2012 23:50:06 +0000 (16:50 -0700)]
cls_lock_types: add missing include

msg_types defines entity-related types used here.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agocls_lock_client: return error when decoding fails
Josh Durgin [Fri, 31 Aug 2012 20:06:12 +0000 (13:06 -0700)]
cls_lock_client: return error when decoding fails

Library code shouldn't be using cerr either.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agocls_lock_client: fix indentation
Josh Durgin [Fri, 31 Aug 2012 18:17:17 +0000 (11:17 -0700)]
cls_lock_client: fix indentation

Add indentation settings to header, and reindent.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agocls_lock_client: change modified reference parameters to pointers
Josh Durgin [Fri, 31 Aug 2012 18:14:22 +0000 (10:14 -0800)]
cls_lock_client: change modified reference parameters to pointers

This makes it clear which parameters are modified,
as our style guide states.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agocls_lock_client: clean up reference parameters
Josh Durgin [Fri, 31 Aug 2012 15:18:07 +0000 (08:18 -0700)]
cls_lock_client: clean up reference parameters

These should all be const. The remaining reference parameters
will be converted to pointers in another commit.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agocls_lock: fix some spacing
Josh Durgin [Thu, 30 Aug 2012 23:39:23 +0000 (16:39 -0700)]
cls_lock: fix some spacing

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agocls_lock: specify librados namespace explicitly
Yehuda Sadeh [Tue, 21 Aug 2012 21:56:43 +0000 (14:56 -0700)]
cls_lock: specify librados namespace explicitly

librados namespace was not specified, hence required including
source files to add using namespace. This fixes it.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agoradosgw-admin: fix cli test
Sage Weil [Tue, 18 Sep 2012 22:28:32 +0000 (15:28 -0700)]
radosgw-admin: fix cli test

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agorbd: only open the destination pool for import
Josh Durgin [Tue, 18 Sep 2012 16:37:44 +0000 (09:37 -0700)]
rbd: only open the destination pool for import

Otherwise importing into another pool when the default pool, rbd,
doesn't exist results in an error trying to open the rbd pool.

Reported-by: Sébastien Han <han.sebastien@gmail.com>
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoqa: test args for rbd import
Josh Durgin [Sat, 15 Sep 2012 00:14:47 +0000 (17:14 -0700)]
qa: test args for rbd import

Make sure that --pool/--dest-pool and --image/--dest all work
interchangeably.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agorbd: make --pool/--image args easier to understand for import
Josh Durgin [Sat, 15 Sep 2012 00:13:57 +0000 (17:13 -0700)]
rbd: make --pool/--image args easier to understand for import

There's no need to set the default pool in set_pool_image_name - this
is done later, in a way that doesn't ignore --pool if --dest-pool
is not specified.

This means --pool and --image can be used with import, just like
the rest of the commands. Without this change, --dest and --dest-pool
had to be used, and --pool would be silently ignored for rbd import.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agolibrbd, cls_rbd: close snapshot creation race with old format
Josh Durgin [Mon, 30 Jul 2012 22:19:29 +0000 (15:19 -0700)]
librbd, cls_rbd: close snapshot creation race with old format

If two clients created a snapshot at the same time, the one with the
higher snapshot id might be created first, so the lower snapshot id
would be added to the snapshot context and the snaphot seq would be
set to the lower one.

Instead of allowing this to happen, return -ESTALE if the snapshot id
is lower than the currently stored snapshot sequence number. On the
client side, get a new id and retry if this error is encountered.

Backport: argonaut
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agolibrbd: fix delete[]
Sage Weil [Sat, 25 Aug 2012 02:36:44 +0000 (19:36 -0700)]
librbd: fix delete[]

CID 716902: Non-array delete for scalars (DELETE_ARRAY)
At (15): Deleting array variable "buf" with non-array delete in "delete buf".

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agodoc: clarify rbd man page (esp. layering)
Josh Durgin [Thu, 30 Aug 2012 00:30:17 +0000 (17:30 -0700)]
doc: clarify rbd man page (esp. layering)

* a clone's size can't be overridden
* note which commands require format 2
* clarify details of copy
* add examples for cloning
* add pool to map example for consistency
* fix a couple warnings and re-sync man page with rst

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agorbd: add --format option
Josh Durgin [Wed, 29 Aug 2012 17:58:30 +0000 (10:58 -0700)]
rbd: add --format option

This chooses whether to use the original (supported by krbd)
or the new (supports layering) format.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agolibrbd: prevent racing clone and snap unprotect
Josh Durgin [Wed, 29 Aug 2012 00:24:47 +0000 (17:24 -0700)]
librbd: prevent racing clone and snap unprotect

If the following sequence of events occured,
a clone could be created of an unprotected snapshot:

1. A: begin clone - check that snap foo is protected
2. B: rbd unprotect snap foo
3. B: check that all pools have no clones of foo
4. B: unprotect snap foo
5. A: finish creating clone of foo, add it as a child

To stop this from happening, check at the beginning and end of
cloning that the parent snapshot is protected. If it is not,
or checking protection status fails (possibly because the parent
snapshot was removed), remove the clone and return an error.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agorbd: add "children" command, update cli test files
Dan Mick [Tue, 21 Aug 2012 23:07:25 +0000 (16:07 -0700)]
rbd: add "children" command, update cli test files

Fixes: #2720
Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
12 years agolibrbd: add {rbd_}list_children() methods
Dan Mick [Tue, 21 Aug 2012 22:58:21 +0000 (15:58 -0700)]
librbd: add {rbd_}list_children() methods

These iterate over all pools and check for children of a
particular snapshot.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
12 years agoMerge branch 'master' of https://github.com/ceph/ceph
John Wilkins [Tue, 18 Sep 2012 21:17:19 +0000 (14:17 -0700)]
Merge branch 'master' of https://github.com/ceph/ceph

12 years ago:doc: Changed rados.gateway to radosgw.gateway. Start with /etc/init.d.
John Wilkins [Tue, 18 Sep 2012 21:16:44 +0000 (14:16 -0700)]
:doc: Changed rados.gateway to radosgw.gateway. Start with /etc/init.d.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agoworkqueue: allow thread pool size to be adjusted dynamically
Sage Weil [Tue, 18 Sep 2012 21:16:03 +0000 (14:16 -0700)]
workqueue: allow thread pool size to be adjusted dynamically

Allow thread pool sizes to be adjusted on the fly by telling the
ThreadPool which config option to monitor.  Add some basic unit tests
for resizing.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
12 years ago:doc: Trimmed up the stack diagram and fixed a few hyperlink refs.
John Wilkins [Tue, 18 Sep 2012 20:55:18 +0000 (13:55 -0700)]
:doc: Trimmed up the stack diagram and fixed a few hyperlink refs.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years ago:doc: Modified hostname to hostname -s.
John Wilkins [Tue, 18 Sep 2012 20:44:16 +0000 (13:44 -0700)]
:doc: Modified hostname to hostname -s.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years ago:doc: Modified hostname to hostname -s.
John Wilkins [Tue, 18 Sep 2012 20:43:47 +0000 (13:43 -0700)]
:doc: Modified hostname to hostname -s.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years ago:doc: Modified hostname to hostname -s.
John Wilkins [Tue, 18 Sep 2012 20:43:25 +0000 (13:43 -0700)]
:doc: Modified hostname to hostname -s.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agoMerge branch 'wip-3127'
Yehuda Sadeh [Tue, 18 Sep 2012 20:24:52 +0000 (13:24 -0700)]
Merge branch 'wip-3127'

Conflicts:
src/rgw/rgw_rados.cc

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: fix unused warning message
Yehuda Sadeh [Tue, 18 Sep 2012 20:20:06 +0000 (13:20 -0700)]
rgw: fix unused warning message

Remove unused variable.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: fix uninitialized var in error message
Yehuda Sadeh [Tue, 18 Sep 2012 20:12:06 +0000 (13:12 -0700)]
rgw: fix uninitialized var in error message

Used the wrong variable in error message.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw, cls_rgw: a tool to rebuild bucket stats
Yehuda Sadeh [Thu, 13 Sep 2012 23:20:15 +0000 (16:20 -0700)]
rgw, cls_rgw: a tool to rebuild bucket stats

radosgw-admin bucket check [--fix] --bucket=<bucket>

The command will dump the existing bucket header stats,
and the calculated bucket header stats. If --fix is provided
the bucket stats will be overwritten by the recalculated
stats.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years ago:doc: Changed title to RBD from RADOS. Clearer.
John Wilkins [Tue, 18 Sep 2012 20:02:17 +0000 (13:02 -0700)]
:doc: Changed title to RBD from RADOS. Clearer.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years ago:doc: Made notice to stop i/o a warning. Initial format clean up.
John Wilkins [Tue, 18 Sep 2012 20:01:50 +0000 (13:01 -0700)]
:doc: Made notice to stop i/o a warning. Initial format clean up.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years ago:doc: Added discussion and stack diagram. Initial format cleanup.
John Wilkins [Tue, 18 Sep 2012 20:00:58 +0000 (13:00 -0700)]
:doc: Added discussion and stack diagram. Initial format cleanup.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years ago:doc: Remove legacy usage. Initial format cleanup.
John Wilkins [Tue, 18 Sep 2012 20:00:07 +0000 (13:00 -0700)]
:doc: Remove legacy usage. Initial format cleanup.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agorgw: obj_stat() returns object version (epoch), use it
Yehuda Sadeh [Thu, 13 Sep 2012 21:47:16 +0000 (14:47 -0700)]
rgw: obj_stat() returns object version (epoch), use it

We now pass the object version returned by obj_stat. We use that
epoch for setting the object version through the index suggestion
mechanism. This was broken by a recent change that switched from
reading the obj stats by (wrongly) calling directly to ioctx->stat()
to calling get_obj_state().

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agocls_rgw: complete_op() only skip update if epoch is non zero
Yehuda Sadeh [Thu, 13 Sep 2012 21:42:06 +0000 (14:42 -0700)]
cls_rgw: complete_op() only skip update if epoch is non zero

An update shouldn't be skipped if epoch is zero. We'd see a zero
epoch if we tried to read an object and it didn't exist. That
could happen e.g., when a delete object operation failed to
call the complete earlier, and now we're recalling delete on
the (now non-existent object).
However, note that the zero epoch is racy. We may end up racing
with an object creation. This will be taken care of by a new
rados change that will set the returned object version even if
it didn't exist.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agocls_rgw: update index stats based on correct category
Yehuda Sadeh [Thu, 13 Sep 2012 21:01:43 +0000 (14:01 -0700)]
cls_rgw: update index stats based on correct category

only refer to the on-disk category if the object existed.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: fix suggested object size
Yehuda Sadeh [Thu, 13 Sep 2012 00:11:54 +0000 (17:11 -0700)]
rgw: fix suggested object size

We can't just stat the head object, we need to go through
get_obj_state() to get obj attributes.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: set exists flag when suggesting existing bucket entry
Yehuda Sadeh [Wed, 12 Sep 2012 23:49:06 +0000 (16:49 -0700)]
rgw: set exists flag when suggesting existing bucket entry

We weren't setting the 'exists' flag on the bucket entry,
so we ended up not updating the index correctly.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agocls_rgw: change scoping of suggested changes vars
Yehuda Sadeh [Wed, 12 Sep 2012 23:41:17 +0000 (16:41 -0700)]
cls_rgw: change scoping of suggested changes vars

Fixes: #3127
Bad variable scoping made it so that specific variables
weren't initialized between suggested changes iterations.
This specifically affected a case where in a specific
change we had an updated followed by a remove, and the
remove was on a non-existent key (e.g., was already
removed earlier). We ended up re-substracting the
object stats, as the entry wasn't reset between
the iterations (and we didn't read it because the
key didn't exist).

backport:argonaut
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agotest/rgw: add a test for index suggest
Yehuda Sadeh [Wed, 12 Sep 2012 23:34:45 +0000 (16:34 -0700)]
test/rgw: add a test for index suggest

test the bucket index suggest api

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agoMerge branch 'master' of https://github.com/ceph/ceph
John Wilkins [Tue, 18 Sep 2012 19:55:35 +0000 (12:55 -0700)]
Merge branch 'master' of https://github.com/ceph/ceph

12 years agocls_rgw: configurable tag timeout
Yehuda Sadeh [Wed, 12 Sep 2012 22:12:23 +0000 (15:12 -0700)]
cls_rgw: configurable tag timeout

we'll be using that for bucket index unitest

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agotest/rgw: add bucket index unitest
Yehuda Sadeh [Wed, 12 Sep 2012 21:48:04 +0000 (14:48 -0700)]
test/rgw: add bucket index unitest

Tests objects creation, removal, prepare, complete

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agocpeh.spec.in: Don't package boto_tool.
Gary Lowell [Tue, 18 Sep 2012 19:43:36 +0000 (12:43 -0700)]
cpeh.spec.in:  Don't package boto_tool.

12 years agocls_rgw: client api for bucket index init
Yehuda Sadeh [Wed, 12 Sep 2012 21:47:11 +0000 (14:47 -0700)]
cls_rgw: client api for bucket index init

create a client api function for bucket index init.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agocls_rgw: add client api calls for index suggest
Yehuda Sadeh [Wed, 12 Sep 2012 18:10:57 +0000 (11:10 -0700)]
cls_rgw: add client api calls for index suggest

This is needed for unitest creation.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agodoc/config-cluster/*: update recently added/changed config options
Sage Weil [Tue, 18 Sep 2012 19:20:30 +0000 (12:20 -0700)]
doc/config-cluster/*: update recently added/changed config options

Signed-off-by: Sage Weil <sage@inktank.com>
12 years ago:doc: Title change for clarity. Initial formatting cleanup.
John Wilkins [Tue, 18 Sep 2012 18:41:32 +0000 (11:41 -0700)]
:doc: Title change for clarity. Initial formatting cleanup.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agoMerge branch 'master' of https://github.com/ceph/ceph
John Wilkins [Tue, 18 Sep 2012 18:23:55 +0000 (11:23 -0700)]
Merge branch 'master' of https://github.com/ceph/ceph

12 years ago:doc: Removed old rec section.
John Wilkins [Tue, 18 Sep 2012 18:23:22 +0000 (11:23 -0700)]
:doc: Removed old rec section.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodocs: add radosgw internals and usage testing section
Yehuda Sadeh [Tue, 18 Sep 2012 18:14:17 +0000 (11:14 -0700)]
docs: add radosgw internals and usage testing section

Document the current tests that are being done on the
radosgw usage feature.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years ago:doc: Notes to add data directory. Notes to address key with escape char.
John Wilkins [Tue, 18 Sep 2012 18:15:37 +0000 (11:15 -0700)]
:doc: Notes to add data directory. Notes to address key with escape char.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years ago:doc: Added note to clarify use of host=shortname.
John Wilkins [Tue, 18 Sep 2012 18:14:54 +0000 (11:14 -0700)]
:doc: Added note to clarify use of host=shortname.

Fixes: #3155
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years ago:doc: Rewrote architecture paper. Still needs some work.
John Wilkins [Tue, 18 Sep 2012 18:08:23 +0000 (11:08 -0700)]
:doc: Rewrote architecture paper. Still needs some work.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years ago:doc: Removing old control.rst. New one is in ceph/docs/cluster-ops.rst
John Wilkins [Tue, 18 Sep 2012 18:05:30 +0000 (11:05 -0700)]
:doc: Removing old control.rst. New one is in ceph/docs/cluster-ops.rst

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years ago:doc: Removing old init section.
John Wilkins [Tue, 18 Sep 2012 18:02:41 +0000 (11:02 -0700)]
:doc: Removing old init section.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agorbd: only open the destination pool for import
Josh Durgin [Tue, 18 Sep 2012 16:37:44 +0000 (09:37 -0700)]
rbd: only open the destination pool for import

Otherwise importing into another pool when the default pool, rbd,
doesn't exist results in an error trying to open the rbd pool.

Reported-by: Sébastien Han <han.sebastien@gmail.com>
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoceph.spec.in: Add new rados libraries, libcls_kvs.so and libcls_refcount.so.
Gary Lowell [Tue, 18 Sep 2012 05:21:15 +0000 (22:21 -0700)]
ceph.spec.in:  Add new rados libraries, libcls_kvs.so and libcls_refcount.so.

12 years agoosd: default journal size to 1 GB
Sage Weil [Wed, 12 Sep 2012 00:08:51 +0000 (17:08 -0700)]
osd: default journal size to 1 GB

The default is used to create or extend the journal when it is a file.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agofilejournal: do not enforce that bdev size >= osd journal size
Sage Weil [Wed, 12 Sep 2012 00:12:06 +0000 (17:12 -0700)]
filejournal: do not enforce that bdev size >= osd journal size

If the configure osd journal size is > the block device size, warn, but
do not generate an error and abort startup.  This makes it safe to have
a default 'osd journal size' value of, say, 1 GB without fear of breaking
existing clusters with smaller jouranl block devices.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Tommi Virtanen <tv@inktank.com>
12 years agoremove obsync
Sage Weil [Wed, 12 Sep 2012 22:50:10 +0000 (15:50 -0700)]
remove obsync

This now lives at http://github.com/ceph/obsync

Signed-off-by: Sage Weil <sage@inktank.com>
12 years ago:doc: Changed from bullet list to section titles.
John Wilkins [Mon, 17 Sep 2012 23:25:54 +0000 (16:25 -0700)]
:doc: Changed from bullet list to section titles.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years ago:doc: Usage consistent with Tyler's notes.
John Wilkins [Mon, 17 Sep 2012 23:01:36 +0000 (16:01 -0700)]
:doc: Usage consistent with Tyler's notes.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years ago:doc: Corrected a path.
John Wilkins [Mon, 17 Sep 2012 23:00:58 +0000 (16:00 -0700)]
:doc: Corrected a path.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years ago:doc: Addresses DOCUMENTATION #3155
John Wilkins [Mon, 17 Sep 2012 22:59:45 +0000 (15:59 -0700)]
:doc: Addresses DOCUMENTATION #3155

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agoMerge branch 'wip-rbd-import'
Josh Durgin [Mon, 17 Sep 2012 15:27:03 +0000 (08:27 -0700)]
Merge branch 'wip-rbd-import'

12 years agorgw: update cache interface
Yehuda Sadeh [Sat, 15 Sep 2012 22:21:56 +0000 (15:21 -0700)]
rgw: update cache interface

RGWRados::delete_obj() was updated in commit
93218aeab7615ced131f0f1af49f6cda41b4a661, but we
failed to update the corresponding RGWCache api.
This commit fixes it.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agoMerge branch 'wip-2923'
Yehuda Sadeh [Sat, 15 Sep 2012 22:17:08 +0000 (15:17 -0700)]
Merge branch 'wip-2923'

Conflicts:
src/rgw/rgw_admin.cc
src/rgw/rgw_log.cc
src/rgw/rgw_log.h
src/rgw/rgw_main.cc
src/rgw/rgw_op.cc
src/rgw/rgw_rados.cc
src/rgw/rgw_rados.h

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw-admin: add cluster info command
Yehuda Sadeh [Thu, 30 Aug 2012 19:46:02 +0000 (12:46 -0700)]
rgw-admin: add cluster info command

A new radosgw-admin command to dump cluster info

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: simplify create_pool
Yehuda Sadeh [Thu, 30 Aug 2012 18:31:41 +0000 (11:31 -0700)]
rgw: simplify create_pool

create_pool should only create pool. A pool is not a bucket,
so we don't need to attach any attrs to it. Also, no reason
to make it exclusive.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: store cluster params in a special object
Yehuda Sadeh [Wed, 29 Aug 2012 22:34:17 +0000 (15:34 -0700)]
rgw: store cluster params in a special object

We now have a cluster root pool that should hold the
cluster params. The cluster params are now read from
this object on startup, if object does not exist we
set its defaults and write it.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agoMerge branch 'wip-rgw-refcount'
Yehuda Sadeh [Sat, 15 Sep 2012 20:02:54 +0000 (13:02 -0700)]
Merge branch 'wip-rgw-refcount'

12 years agorgw: document how refcount objclass works
Yehuda Sadeh [Sat, 15 Sep 2012 19:43:05 +0000 (12:43 -0700)]
rgw: document how refcount objclass works

Added some explanations in the client header.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agocls_refcount: add a unitest
Yehuda Sadeh [Wed, 5 Sep 2012 21:54:51 +0000 (14:54 -0700)]
cls_refcount: add a unitest

test cls_refcount functionality.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw_rados: adjustments for refcount objclass
Yehuda Sadeh [Wed, 5 Sep 2012 19:56:43 +0000 (12:56 -0700)]
rgw_rados: adjustments for refcount objclass

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: set atomic context for copy operation src and dest
Yehuda Sadeh [Fri, 31 Aug 2012 05:21:15 +0000 (22:21 -0700)]
rgw: set atomic context for copy operation src and dest

This is required so that we handle both src and dest atomically. We
also set the prefetch flag on the src object, so that we read the
first chunk along with its attrs.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: copy of objects using refcount
Yehuda Sadeh [Fri, 31 Aug 2012 00:12:55 +0000 (17:12 -0700)]
rgw: copy of objects using refcount

For objects with manifest that have a tail, we
copy only the head, and the manifest, and increasing
the reference count on the tail objects.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: use refcount put instead of obj delete where needed
Yehuda Sadeh [Thu, 30 Aug 2012 21:36:03 +0000 (14:36 -0700)]
rgw: use refcount put instead of obj delete where needed

Tie in new refcount objclass methods.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agoqa: test args for rbd import
Josh Durgin [Sat, 15 Sep 2012 00:14:47 +0000 (17:14 -0700)]
qa: test args for rbd import

Make sure that --pool/--dest-pool and --image/--dest all work
interchangeably.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agorbd: make --pool/--image args easier to understand for import
Josh Durgin [Sat, 15 Sep 2012 00:13:57 +0000 (17:13 -0700)]
rbd: make --pool/--image args easier to understand for import

There's no need to set the default pool in set_pool_image_name - this
is done later, in a way that doesn't ignore --pool if --dest-pool
is not specified.

This means --pool and --image can be used with import, just like
the rest of the commands. Without this change, --dest and --dest-pool
had to be used, and --pool would be silently ignored for rbd import.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agodoc: fix indentation
Josh Durgin [Thu, 13 Sep 2012 23:51:54 +0000 (16:51 -0700)]
doc: fix indentation

Before this the list of steps was split into two lists
after the conf example.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoAdding RBD CLI test automation script, RbdLib and cephscrub.sh
tamil [Thu, 13 Sep 2012 20:54:23 +0000 (13:54 -0700)]
Adding RBD CLI test automation script, RbdLib and cephscrub.sh

Signed-off-by: tamil <tamil.muthamizhan@inktank.com>
12 years agotest/rados-api/aio.cc: use read operation for omap cmp test
Samuel Just [Wed, 12 Sep 2012 23:34:01 +0000 (16:34 -0700)]
test/rados-api/aio.cc: use read operation for omap cmp test

The error code field is not filled in on writes.

Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoosd/OSD.cc: Fix typo in OSD::heartbeat_check()
Yan, Zheng [Fri, 7 Sep 2012 05:49:27 +0000 (13:49 +0800)]
osd/OSD.cc: Fix typo in OSD::heartbeat_check()

The check 'p->second.last_tx > cutoff' should always be false
since last_tx is periodically updated by OSD::heartbeat()

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoosd/ReplicatedPG: set truncate_seq when handling CEPH_OSD_OP_APPEND
Yan, Zheng [Tue, 11 Sep 2012 03:15:26 +0000 (11:15 +0800)]
osd/ReplicatedPG: set truncate_seq when handling CEPH_OSD_OP_APPEND

We need set truncate_seq when redirect the newop to CEPH_OSD_OP_WRITE,
otherwise the code handles CEPH_OSD_OP_WRITE may quietly drop the data.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMakefile: rename 'core' -> 'base', add a few things
Sage Weil [Thu, 6 Sep 2012 20:57:33 +0000 (13:57 -0700)]
Makefile: rename 'core' -> 'base', add a few things

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agolibrbd, cls_rbd: close snapshot creation race with old format
Josh Durgin [Mon, 30 Jul 2012 22:19:29 +0000 (15:19 -0700)]
librbd, cls_rbd: close snapshot creation race with old format

If two clients created a snapshot at the same time, the one with the
higher snapshot id might be created first, so the lower snapshot id
would be added to the snapshot context and the snaphot seq would be
set to the lower one.

Instead of allowing this to happen, return -ESTALE if the snapshot id
is lower than the currently stored snapshot sequence number. On the
client side, get a new id and retry if this error is encountered.

Backport: argonaut
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #23 from javacruft/master
Sage Weil [Wed, 12 Sep 2012 15:07:29 +0000 (08:07 -0700)]
Merge pull request #23 from javacruft/master

Refactor the way that dh_makeshlibs is called to be slightly more elegant