]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
14 years agodumpjnl: call msgr->register_entity before start
Colin Patrick McCabe [Sat, 4 Jun 2011 01:45:22 +0000 (18:45 -0700)]
dumpjnl: call msgr->register_entity before start

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agosimple_spin: use file-scope global not function
Colin Patrick McCabe [Sat, 4 Jun 2011 01:15:11 +0000 (18:15 -0700)]
simple_spin: use file-scope global not function

function-scoped globals are protected by a mutex, and taking a mutex
inside a spin lock implementation kind of defeats the point...

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agosimple_spin: fix linker error
Sage Weil [Fri, 3 Jun 2011 23:36:13 +0000 (16:36 -0700)]
simple_spin: fix linker error

For some stupid reason the linker is pulling this in twice, resulting in

/bin/sh ../libtool --tag=CXX   --mode=link g++  -Wall -D__CEPH__ -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D_THREAD_SAFE -rdynamic -Wtype-limits -Wignored-qualifiers -Winit-self -Wpointer-arith -fno-strict-aliasing -Wnon-virtual-dtor -Wno-invalid-offsetof -Wstrict-null-sentinel  -g -Wextra -Wno-missing-field-initializers -Wno-missing-declarations -Wno-unused-parameter -Wl,--as-needed -latomic_ops  -o radosgw_admin radosgw_admin-rgw_fs.o radosgw_admin-rgw_rados.o radosgw_admin-rgw_user.o radosgw_admin-rgw_access.o radosgw_admin-rgw_op.o radosgw_admin-rgw_rest.o radosgw_admin-rgw_rest_os.o radosgw_admin-rgw_rest_s3.o radosgw_admin-rgw_common.o radosgw_admin-rgw_cache.o radosgw_admin-rgw_os.o radosgw_admin-rgw_os_auth.o radosgw_admin-rgw_formats.o radosgw_admin-rgw_log.o rgw_escape.o radosgw_admin-rgw_admin.o librgw.a librados.a -lfcgi -lcurl -lexpat -lpthread -lm -lcrypto++
libcommon.a(libcommon_a-simple_spin.o):(.data+0x8): multiple definition of `foo'
test_trans.o:/home/sage/ceph/src/./common/debug.h:51: first defined here

...which points to some larger linking issue.  However, this fixes it for
now.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agofix the MonClient problems for --with-debug programs.
Greg Farnum [Sat, 4 Jun 2011 00:13:47 +0000 (17:13 -0700)]
fix the MonClient problems for --with-debug programs.
Still doesn't compile, though.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agoRefactor MonClient, KeyRing
Colin Patrick McCabe [Thu, 2 Jun 2011 22:50:22 +0000 (15:50 -0700)]
Refactor MonClient, KeyRing

MonClient should contain a KeyRing and a RotatingKeyRing. All the
MonClient users, except possibly csyn, don't want to manage those
objects themselves.

Don't chdir until after we have opened the KeyRing. If the KeyRing is at
a relative path, a chdir may make it inaccessible. Separate the chdir
function from the daemonize function.

Refactor the cmds argument parsing a little bit. Separate the special
actions from the normal operations of the daemon.

This should allow librados and libceph to support CephX finally! yay!

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoremove g_keyring
Colin Patrick McCabe [Wed, 1 Jun 2011 21:17:55 +0000 (14:17 -0700)]
remove g_keyring

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agodout:remove stream from dout_emerg_streams earlier
Colin Patrick McCabe [Wed, 1 Jun 2011 18:52:31 +0000 (11:52 -0700)]
dout:remove stream from dout_emerg_streams earlier

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoDoutStreambuf: de-globalize dout lock
Colin Patrick McCabe [Wed, 1 Jun 2011 18:13:45 +0000 (11:13 -0700)]
DoutStreambuf: de-globalize dout lock

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoDoutStreambuf: de-globalize emergency logging
Colin Patrick McCabe [Wed, 1 Jun 2011 17:08:19 +0000 (10:08 -0700)]
DoutStreambuf: de-globalize emergency logging

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoAdd simple_spin
Colin Patrick McCabe [Wed, 1 Jun 2011 16:35:30 +0000 (09:35 -0700)]
Add simple_spin

Add simple spinlock implementation that is safe to use from anywhere.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoRevert "cfuse.cc: use safe_write"
Greg Farnum [Fri, 3 Jun 2011 21:29:35 +0000 (14:29 -0700)]
Revert "cfuse.cc: use safe_write"

This reverts commit e8ac5aa2a4c4e3ce84ed553dbebfb1cccf5679a9.

This commit is just erroneous. It adds checks on a pipe write
for the result and an abort if the write failed. But that's broken
in the desired case where we succeed, block on ceph_fuse_ll_main(),
and the parent process is long-gone by the time we get to this code!

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agorados_bencher: re-add written objects constraint to read benchmark.
Greg Farnum [Fri, 3 Jun 2011 18:53:10 +0000 (11:53 -0700)]
rados_bencher: re-add written objects constraint to read benchmark.

Somehow, in the last major change, the constraints that kept the
bencher from trying to read non-existent objects got removed. Put
a check back in the main bench loop to fix that.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agomds: remove now-erroneous comment
Greg Farnum [Fri, 3 Jun 2011 17:49:44 +0000 (10:49 -0700)]
mds: remove now-erroneous comment

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agoMerge branch 'next'
Greg Farnum [Fri, 3 Jun 2011 17:02:32 +0000 (10:02 -0700)]
Merge branch 'next'

Conflicts:
src/mds/Server.cc

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agomds: Clean up _rename_prepare journaling
Greg Farnum [Fri, 3 Jun 2011 16:53:20 +0000 (09:53 -0700)]
mds: Clean up _rename_prepare journaling

This has been broken for a while in terms of journaling
things the MDS isn't auth for. This patch should fix that, and
adds a few asserts to that effect.

Also adds a new not_journaling flag to _rename_prepare
for those cases which call the function and then discard
the bufferlist results.
Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agomds: _rename_prepaer should only journal dest if auth for it
Greg Farnum [Fri, 3 Jun 2011 16:46:48 +0000 (09:46 -0700)]
mds: _rename_prepaer should only journal dest if auth for it

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agouclient: reset flushing_caps on (mds) cap import.
Greg Farnum [Thu, 2 Jun 2011 21:27:23 +0000 (14:27 -0700)]
uclient: reset flushing_caps on (mds) cap import.

Previously, we could get stuck thinking that we'd flushed caps
(that went to the original MDS, waited on freeze for export,
and then were dropped) without ever telling the auth MDS that we
wanted to do so. This caused hung shutdowns:
1) during shutdown we drop all our caps
2) we get stuck and notice that we have a flushing cap
3) we send cap flush
4) MDS ignores it (I think because actual data already got updated?
and now we don't have the proper caps either)

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agouclient: don't use racy check for uncommitted data.
Greg Farnum [Thu, 2 Jun 2011 18:43:05 +0000 (11:43 -0700)]
uclient: don't use racy check for uncommitted data.

Previously we used a check for if there were CEPH_CAP_FILE_BUFFER refs,
but that was racy if we had other threads (they could hold caps for
sync writes or something). Instead, see if we have any in-flight
writes or uncommitted objects.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agouclient: call the right function pointer on truncate
Greg Farnum [Wed, 1 Jun 2011 21:46:15 +0000 (14:46 -0700)]
uclient: call the right function pointer on truncate

fixes 67533e14439e9b to do what it meant to.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agomds: fail out of path_traverse if we have a null dentry.
Greg Farnum [Wed, 1 Jun 2011 19:18:21 +0000 (12:18 -0700)]
mds: fail out of path_traverse if we have a null dentry.

Previously if we had a null dentry which we were not auth for,
we would go into a loop of discover lookups on that dentry.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agorados_sync: add test for temp file deletion, fix
Colin Patrick McCabe [Thu, 2 Jun 2011 23:59:51 +0000 (16:59 -0700)]
rados_sync: add test for temp file deletion, fix

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agorados_sync: in export, download, then rename
Colin Patrick McCabe [Thu, 2 Jun 2011 23:40:44 +0000 (16:40 -0700)]
rados_sync: in export, download, then rename

Download files to a 'temporary' name and then rename them when they are
complete. If the download gets aborted halfway through, this prevents
rados sync from getting confused next time when it sees the downloaded
file. This is similar to how rsync operates.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoRemove unneeded libcrush1 files
Laszlo Boszormenyi [Sun, 29 May 2011 19:19:52 +0000 (21:19 +0200)]
Remove unneeded libcrush1 files

14 years agomds: journal parents of srci when srcdn is remote
Sage Weil [Thu, 2 Jun 2011 22:13:42 +0000 (15:13 -0700)]
mds: journal parents of srci when srcdn is remote

If srcdn is a remote dentry, we will be journaling the src inode to update
the mtime, but we need to ensure the parent dirs are in the metablob.

Fixes: #1132
Signed-off-by: Sage Weil <sage@newdream.net>
14 years agojournaler: also initialize safe_pos
Sage Weil [Thu, 2 Jun 2011 21:51:20 +0000 (14:51 -0700)]
journaler: also initialize safe_pos

on reread_head.  Keep consistent across the two methods.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agojournaler: fix trim crash after standby-replay -> active
Sage Weil [Thu, 2 Jun 2011 21:50:45 +0000 (14:50 -0700)]
journaler: fix trim crash after standby-replay -> active

The reread_head method needs to initialize trimming_pos (like read_head
does) or else we get confused later.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: cleanup rename_prepare a bit
Sage Weil [Thu, 2 Jun 2011 21:14:15 +0000 (14:14 -0700)]
mds: cleanup rename_prepare a bit

Use *srci tmp.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agovstart.sh: turn down debug ms
Sage Weil [Thu, 2 Jun 2011 20:57:55 +0000 (13:57 -0700)]
vstart.sh: turn down debug ms

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: pin inode while one renamed_files list
Sage Weil [Thu, 2 Jun 2011 20:14:48 +0000 (13:14 -0700)]
mds: pin inode while one renamed_files list

Make sure the inode is pinned while it is on the LogSegment::renamed_files
list.  Avoids a crash when an inode on that list is wrongly trimmed.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomon: make sure osd paxos is writeable before doing timeouts
Sage Weil [Thu, 2 Jun 2011 04:20:58 +0000 (21:20 -0700)]
mon: make sure osd paxos is writeable before doing timeouts

The osd paxos machine has to be writeable before we can update it.

Fixes: #1130
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoboto_tool: add get_bucket_acl
Matthew Wodrich [Wed, 1 Jun 2011 23:35:11 +0000 (16:35 -0700)]
boto_tool: add get_bucket_acl

Signed-off-by: "Colin McCabe" <colin.mcccabe@dreamhost.com>
14 years agoMerge branch 'stable' into next
Sage Weil [Wed, 1 Jun 2011 23:28:17 +0000 (16:28 -0700)]
Merge branch 'stable' into next

14 years agoMerge branch 'stable'
Sage Weil [Wed, 1 Jun 2011 23:23:17 +0000 (16:23 -0700)]
Merge branch 'stable'

14 years agodout: use recursive mutex for dout
Colin Patrick McCabe [Wed, 1 Jun 2011 18:37:34 +0000 (11:37 -0700)]
dout: use recursive mutex for dout

Using a recursive mutex for dout is desirable because it allows us to
survive situations like this:

> foo() { dout << "foo" << dendl; }
> dout(0) << foo() << dendl;

These cases should be fixed because they produce garbled output.
However, with this change, at least they will not cause deadlock.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agolockdep: fix shadowed global, add printout
Colin Patrick McCabe [Wed, 1 Jun 2011 18:18:01 +0000 (11:18 -0700)]
lockdep: fix shadowed global, add printout

Fix a bug that was keeping lockdep from starting. Add a printout that
lets the user know that lockdep is enabled.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoAllow embedded '\0' in bufferlists when copying to std::string.
Tommi Virtanen [Wed, 1 Jun 2011 16:36:12 +0000 (09:36 -0700)]
Allow embedded '\0' in bufferlists when copying to std::string.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agorados_sync: don't hash paths with periods
Colin Patrick McCabe [Wed, 1 Jun 2011 00:03:23 +0000 (17:03 -0700)]
rados_sync: don't hash paths with periods

A period is not such a bad character.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agotest_rados_tool.sh: test hashed paths
Colin Patrick McCabe [Tue, 31 May 2011 23:57:08 +0000 (16:57 -0700)]
test_rados_tool.sh: test hashed paths

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agorados export: better name mangling rules, fix test
Colin Patrick McCabe [Tue, 31 May 2011 22:47:13 +0000 (15:47 -0700)]
rados export: better name mangling rules, fix test

Introduce a versioning scheme for name mangling, so that we can change
it in the future if we want to.

For names that require no mangling, don't do anything (don't add any
hash at the end, etc.) Make the hash 16 bytes long rather than 8 bytes.

Fix the unit test to take into account the new rules.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agorados_sync: prefix user extended attributes
Colin Patrick McCabe [Tue, 31 May 2011 22:01:26 +0000 (15:01 -0700)]
rados_sync: prefix user extended attributes

Start user extended attributes with USER_XATTR_PREFIX.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agolibrados: implement aio_flush
Sage Weil [Thu, 28 Apr 2011 04:28:26 +0000 (21:28 -0700)]
librados: implement aio_flush

Implement a per-ioctx flush that blocks until all previously submitted
aio operations on the ioctx are safe.  Each aio gets a sequence number and
is put on a linked list attached to the ioctx.  The flush operation waits
for it to drain to the watermark set when flush is first called.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agocrushtool: error out if uniform weights vary
Sage Weil [Tue, 31 May 2011 20:45:51 +0000 (13:45 -0700)]
crushtool: error out if uniform weights vary

Fixes: #1075
Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoosd: fix ScrubFinalizeWQ::_clear condition
Josh Durgin [Tue, 31 May 2011 20:26:58 +0000 (13:26 -0700)]
osd: fix ScrubFinalizeWQ::_clear condition

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agodebian: depend on libboost-dev >= 1.34
Sage Weil [Tue, 31 May 2011 19:58:35 +0000 (12:58 -0700)]
debian: depend on libboost-dev >= 1.34

for statechart.  Partially fixes #1124.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoosd: don't leak Connection reference
Sage Weil [Wed, 25 May 2011 23:22:19 +0000 (16:22 -0700)]
osd: don't leak Connection reference

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoosd: ignore old/stale heartbeat messages
Sage Weil [Wed, 25 May 2011 23:22:06 +0000 (16:22 -0700)]
osd: ignore old/stale heartbeat messages

If we get heartbeat messages from old epochs from peers that are not
current, drop them and mark the connection down.  Even if they are peers
we _should_ have (because we haven't gotten a notify yet to learn about
a pg we should have but don't yet) we have a newer map epoch and will learn
about them shortly, reopening the connection.

Fixes: #1107
Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoosd: fix map sharing due to heartbeats
Sage Weil [Wed, 25 May 2011 23:20:26 +0000 (16:20 -0700)]
osd: fix map sharing due to heartbeats

- share the map with the cluster addr
- use the new {note,get}_peer_epoch helpers to do it sanely
- don't share if we're booting; see 818fa33a661

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoosd: protect recovery_wq ops with the recovery lock
Greg Farnum [Fri, 27 May 2011 19:55:22 +0000 (12:55 -0700)]
osd: protect recovery_wq ops with the recovery lock

We were calling recovery_item.remove_myself() without holding the
recoveryWQ::lock. Naughty naughty!

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agocrushtool: add -v verbose for --test mode
Sage Weil [Mon, 30 May 2011 19:37:31 +0000 (12:37 -0700)]
crushtool: add -v verbose for --test mode

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoAdd content to obsync package
Laszlo Boszormenyi [Sun, 29 May 2011 19:42:54 +0000 (21:42 +0200)]
Add content to obsync package

14 years agov0.28.2 v0.28.2
Sage Weil [Sat, 28 May 2011 16:14:31 +0000 (09:14 -0700)]
v0.28.2

14 years agohadoop: track Hadoop API changes
Colin Patrick McCabe [Fri, 27 May 2011 21:46:19 +0000 (14:46 -0700)]
hadoop: track Hadoop API changes

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoSimpleMessenger: allow multiple calls to shutdown
Colin Patrick McCabe [Fri, 27 May 2011 21:04:36 +0000 (14:04 -0700)]
SimpleMessenger: allow multiple calls to shutdown

Fixes a case where radostool crashed on an error shutdown.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agocommon/Thread.h: const cleanup
Colin Patrick McCabe [Fri, 27 May 2011 21:01:45 +0000 (14:01 -0700)]
common/Thread.h: const cleanup

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoMerge branch 'wip-obsync'
Colin Patrick McCabe [Fri, 27 May 2011 17:59:21 +0000 (10:59 -0700)]
Merge branch 'wip-obsync'

14 years agomkcephfs: pass config to osdmaptool
Sage Weil [Fri, 27 May 2011 04:37:03 +0000 (21:37 -0700)]
mkcephfs: pass config to osdmaptool

This lets OSDMap::create_simple() see g_conf.osd_pool_default_size when
creating the initial data, metadata, and rbd pools.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agodrop useless cm.txt
Sage Weil [Fri, 27 May 2011 04:31:18 +0000 (21:31 -0700)]
drop useless cm.txt

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoosdmap: take default pool size from config
Sage Weil [Fri, 27 May 2011 04:20:55 +0000 (21:20 -0700)]
osdmap: take default pool size from config

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agocrushtool: update help
Sage Weil [Thu, 26 May 2011 22:07:37 +0000 (15:07 -0700)]
crushtool: update help

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoobysnc: rgw target: validate all users
Colin Patrick McCabe [Thu, 26 May 2011 20:28:39 +0000 (13:28 -0700)]
obysnc: rgw target: validate all users

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoMerge branch 'wip-obsync'
Colin Patrick McCabe [Thu, 26 May 2011 20:17:03 +0000 (13:17 -0700)]
Merge branch 'wip-obsync'

14 years agomon: remove pg_temp mappings when we delete pools
Sage Weil [Thu, 26 May 2011 20:17:12 +0000 (13:17 -0700)]
mon: remove pg_temp mappings when we delete pools

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agotest-obsync: test sync directly from s3->rgw
Colin Patrick McCabe [Thu, 26 May 2011 20:15:50 +0000 (13:15 -0700)]
test-obsync: test sync directly from s3->rgw

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agocrushtool: fix --add-item weight being zero when parent bucket(s) created
Sage Weil [Thu, 26 May 2011 20:12:04 +0000 (13:12 -0700)]
crushtool: fix --add-item weight being zero when parent bucket(s) created

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoobsync: fix bucket creation through rgw target
Colin Patrick McCabe [Thu, 26 May 2011 18:21:23 +0000 (11:21 -0700)]
obsync: fix bucket creation through rgw target

The rgw: target can now create buckets. Add a test.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoMerge branch 'stable'
Sage Weil [Thu, 26 May 2011 18:04:03 +0000 (11:04 -0700)]
Merge branch 'stable'

14 years agotest-obsync: test big objects, user-defined xattr
Colin Patrick McCabe [Thu, 26 May 2011 17:25:40 +0000 (10:25 -0700)]
test-obsync: test big objects, user-defined xattr

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agomkcephfs: set rdir for local mon setup
Sage Weil [Thu, 26 May 2011 17:19:04 +0000 (10:19 -0700)]
mkcephfs: set rdir for local mon setup

Fixes: #1113
Reported-by: Bernard Grymonpon <bernard@openminds.be>
Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoinit-ceph: ssh
Sage Weil [Thu, 26 May 2011 16:55:37 +0000 (09:55 -0700)]
init-ceph: ssh

Another bell/whistle.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoobysnc: fix content-type on RGWStore
Colin Patrick McCabe [Thu, 26 May 2011 00:48:02 +0000 (17:48 -0700)]
obysnc: fix content-type on RGWStore

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agotest-obsync: compare_directory now compares xattrs
Colin Patrick McCabe [Thu, 26 May 2011 00:36:36 +0000 (17:36 -0700)]
test-obsync: compare_directory now compares xattrs

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoceph-pybind-test: test embedded NULLs in data
Colin Patrick McCabe [Wed, 25 May 2011 22:55:22 +0000 (15:55 -0700)]
ceph-pybind-test: test embedded NULLs in data

Test embedded nulls in rados data. Fix a bug in rados.Object.__str__

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoobsync: more fixes for RgwStore
Colin Patrick McCabe [Wed, 25 May 2011 22:49:10 +0000 (15:49 -0700)]
obsync: more fixes for RgwStore

* Fix content-type handling

* add vvprint and use it in Object::equals.

* support RgwStore::prefix

* more tests

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agopybind/rados: correctly return data with NULLs
Colin Patrick McCabe [Wed, 25 May 2011 22:48:31 +0000 (15:48 -0700)]
pybind/rados: correctly return data with NULLs

Correctly handle returning data with embedded NULLs in it.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agopybind/rados.py: throw NoData on ENODATA
Colin Patrick McCabe [Wed, 25 May 2011 22:21:37 +0000 (15:21 -0700)]
pybind/rados.py: throw NoData on ENODATA

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agomds: fix canceled lock attempt
Sage Weil [Wed, 25 May 2011 21:54:15 +0000 (14:54 -0700)]
mds: fix canceled lock attempt

If client tries to lock a file, has to wait, and then cancels the attempt,
the client will send an unlock request to unwind its state.

 - the unlock now removes the waiting lock attempt from the wait list
 - when the lock request retries and finds it is no longer on the wait
   list it will fail.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agopybind/rados.py: rados.Object.key should be string
Colin Patrick McCabe [Wed, 25 May 2011 21:22:51 +0000 (14:22 -0700)]
pybind/rados.py: rados.Object.key should be string

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoobysnc: RgwStore: make sure destination users exist
Colin Patrick McCabe [Wed, 25 May 2011 19:58:39 +0000 (12:58 -0700)]
obysnc: RgwStore: make sure destination users exist

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoobsync: fix DST_OWNER
Colin Patrick McCabe [Wed, 25 May 2011 19:36:37 +0000 (12:36 -0700)]
obsync: fix DST_OWNER

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agorgw: return EACCES if acl xattr doesn't exist
Yehuda Sadeh [Wed, 25 May 2011 19:32:50 +0000 (12:32 -0700)]
rgw: return EACCES if acl xattr doesn't exist

14 years agoobsync: Add boto_retries, remove rgw_store.prefix
Colin Patrick McCabe [Wed, 25 May 2011 19:05:15 +0000 (12:05 -0700)]
obsync: Add boto_retries, remove rgw_store.prefix

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agorados python bindings: handle xattrs with NULL
Colin Patrick McCabe [Wed, 25 May 2011 18:01:16 +0000 (11:01 -0700)]
rados python bindings: handle xattrs with NULL

Handle extended attributes that contain NULL bytes correctly, rather
than treating everything as zero-terminated C strings.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoPG: fix race in _activate_committed
Samuel Just [Wed, 25 May 2011 17:54:27 +0000 (10:54 -0700)]
PG: fix race in _activate_committed

Previously, _activate_committed would access the osdmap epoch racing
with handle_osd_map's osdmap update.  This would allow a message to be
sent from a replica to the primary tagged with the same epoch as
last_warm_restart, though the event actually occured before
last_warm_restart.  Thus the primary would fail to ignore the event and
transition to crashed.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agoRgwStore: fix some ACL issues
Colin Patrick McCabe [Wed, 25 May 2011 17:50:15 +0000 (10:50 -0700)]
RgwStore: fix some ACL issues

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agotest-obysnc.py: support librgw testing
Colin Patrick McCabe [Tue, 24 May 2011 22:39:58 +0000 (15:39 -0700)]
test-obysnc.py: support librgw testing

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoRename RadosStore to RgwStore
Colin Patrick McCabe [Tue, 24 May 2011 21:15:53 +0000 (14:15 -0700)]
Rename RadosStore to RgwStore

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agotest-obsync: refactor a little bit
Colin Patrick McCabe [Thu, 19 May 2011 23:33:13 +0000 (16:33 -0700)]
test-obsync: refactor a little bit

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoProper ACL support for rados targets
Colin Patrick McCabe [Wed, 18 May 2011 23:39:18 +0000 (16:39 -0700)]
Proper ACL support for rados targets

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agomds: do not shift to EXCL or MIX while rdlocked
Sage Weil [Wed, 18 May 2011 04:29:33 +0000 (21:29 -0700)]
mds: do not shift to EXCL or MIX while rdlocked

There was an old change in file_eval() that was allowing us to switch from
SYNC to MIX or EXCL while there were rdlocks, which either caused lots of
lock thrashing or could (I think) hang things up completely.  This was
from ea10a672, an ancient fix for something related that appears to have
taken out the rdlocked check by accident.

In my tests (one writer, one stat-er), this took things from long stalls
(up to 20 seconds) to very responsive stats.  Yay!

Fixes: #791
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agocrushtool: clean up add-item a bit; don't add item to same bucket twice
Sage Weil [Wed, 25 May 2011 04:14:59 +0000 (21:14 -0700)]
crushtool: clean up add-item a bit; don't add item to same bucket twice

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agocrushtool: fix remove-item
Sage Weil [Wed, 25 May 2011 04:05:47 +0000 (21:05 -0700)]
crushtool: fix remove-item

Scan all buckets instead of doing a tree traverse.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoradosgw_admin: update clitest
Sage Weil [Wed, 25 May 2011 03:30:38 +0000 (20:30 -0700)]
radosgw_admin: update clitest

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomkcephfs.in: print out usage if no actions given
Colin Patrick McCabe [Wed, 25 May 2011 01:16:08 +0000 (18:16 -0700)]
mkcephfs.in: print out usage if no actions given

If the user didn't specify any actions, print out a usage message rather
than silently exiting.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agorgw: Fix RGWAccess::init_storage_provider
Colin Patrick McCabe [Wed, 25 May 2011 00:50:24 +0000 (17:50 -0700)]
rgw: Fix RGWAccess::init_storage_provider

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agomkcephfs: error out on bad usage
Sage Weil [Wed, 25 May 2011 00:05:30 +0000 (17:05 -0700)]
mkcephfs: error out on bad usage

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomake: fix build for rgw
Yehuda Sadeh [Tue, 24 May 2011 23:40:12 +0000 (16:40 -0700)]
make: fix build for rgw

14 years agorgw_admin: clean warning
Yehuda Sadeh [Tue, 24 May 2011 23:33:11 +0000 (16:33 -0700)]
rgw_admin: clean warning

14 years agoMerge commit 'origin/master' into rgw-multiuser
Yehuda Sadeh [Tue, 24 May 2011 22:30:17 +0000 (15:30 -0700)]
Merge commit 'origin/master' into rgw-multiuser

14 years agorgw_admin: add key create
Yehuda Sadeh [Tue, 24 May 2011 21:29:50 +0000 (14:29 -0700)]
rgw_admin: add key create

14 years agorgw_admin: subuser and key removal
Yehuda Sadeh [Tue, 24 May 2011 21:17:59 +0000 (14:17 -0700)]
rgw_admin: subuser and key removal