]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Sage Weil [Fri, 23 Apr 2010 21:22:04 +0000 (14:22 -0700)]
Merge branch 'msgr' into unstable
Conflicts:
src/TODO
src/mds/Server.cc
src/msg/SimpleMessenger.cc
src/msg/SimpleMessenger.h
src/osd/OSD.cc
Sage Weil [Fri, 23 Apr 2010 19:10:24 +0000 (12:10 -0700)]
v0.20
Sage Weil [Fri, 23 Apr 2010 18:07:16 +0000 (11:07 -0700)]
mds: skip client snap notification on unlink
This is cheating a bit, but should be harmless. Basically, we spit off the
snaprealm when we unlink to keep the hierarchy vs snaprealm invariants
intact. But we don't really care if the client does so, so we skip the
client_snap notifications.
That means the client will leave unlinked inodes in the realm they were
in at the time of unlink. I'm pretty sure that won't cause problems
later.
Sage Weil [Thu, 22 Apr 2010 22:05:55 +0000 (15:05 -0700)]
osd: more useful debugging on repop version, out of order completion
Sage Weil [Thu, 22 Apr 2010 21:09:51 +0000 (14:09 -0700)]
osd: print a bit more debug info about compat problems
Sage Weil [Thu, 22 Apr 2010 20:41:17 +0000 (13:41 -0700)]
mds: verify mdsmap compatset on startup
Sage Weil [Thu, 22 Apr 2010 20:41:02 +0000 (13:41 -0700)]
mds: add CompatSet to mdsmap
Yehuda Sadeh [Thu, 22 Apr 2010 21:40:09 +0000 (14:40 -0700)]
rbd: change rbd header disk format, update protocol version
Sage Weil [Thu, 22 Apr 2010 20:10:40 +0000 (13:10 -0700)]
msgr: never (re)open pipe when sending message directly to Connection*
Sage Weil [Thu, 22 Apr 2010 19:04:01 +0000 (12:04 -0700)]
mdsmap: add separate struct version for extended portion of mdsmap
Sage Weil [Thu, 22 Apr 2010 18:43:37 +0000 (11:43 -0700)]
cauthtool: add --gen-print-key
Just generate a random cryptokey and print it out.
Sage Weil [Thu, 22 Apr 2010 18:39:40 +0000 (11:39 -0700)]
auth: take key or file containing key on command line
e.g.
ceph --key AQBggdBLCJwLABAAuPVK/qJ3/ySbRvEnJHNJ8w== -s
ceph --keyfile file_with_key -s
ceph -K file_with_key -s
ceph -k keyring.bin -s
Sage Weil [Thu, 22 Apr 2010 18:27:00 +0000 (11:27 -0700)]
cauthtool: always print entire encoded CryptoKey
Make cauthtool -l output consistent with what you need to feed to
mount.ceph(8).
Sage Weil [Thu, 22 Apr 2010 14:37:13 +0000 (07:37 -0700)]
msgr: increment connect_seq when STANDBY->CONNECTING
Otherwise we get this on the peer:
msg/SimpleMessenger.cc: In function 'int SimpleMessenger::Pipe::accept()':
msg/SimpleMessenger.cc:767: FAILED assert(existing->state == STATE_CONNECTING)
1: (SimpleMessenger::Pipe::accept()+0x14b2) [0x654888]
2: (SimpleMessenger::Pipe::reader()+0x32) [0x65538c]
3: (SimpleMessenger::Pipe::Reader::entry()+0x19) [0x649493]
4: (Thread::_entry_func(void*)+0x20) [0x659b06]
5: /lib/libpthread.so.0 [0x7fcdc782f73a]
6: (clone()+0x6d) [0x7fcdc6a5969d]
NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to interpret this.
Sage Weil [Wed, 21 Apr 2010 22:28:48 +0000 (15:28 -0700)]
Merge remote branch 'origin/mdssnaps' into unstable
Sage Weil [Wed, 21 Apr 2010 22:23:46 +0000 (15:23 -0700)]
filestore: default to writeahead journal, and no btrfs snaps
At least until btrfs snap deletion doesn't require a full commit (i.e. each
commit cycle doesn't do a commit for the snap creation AND another for the
old snap deletion).
Sage Weil [Wed, 21 Apr 2010 21:56:35 +0000 (14:56 -0700)]
rbdtool: add, use prettybyte_t type
Sage Weil [Wed, 21 Apr 2010 21:52:29 +0000 (14:52 -0700)]
rbdtool: add --info, --resize commands
Sage Weil [Wed, 21 Apr 2010 21:52:15 +0000 (14:52 -0700)]
auth: make 'admin' the default user
We don't create a 'guest' user anyway.
Sage Weil [Wed, 21 Apr 2010 21:23:52 +0000 (14:23 -0700)]
librados: adjust C++ aio completion creation api
Sage Weil [Wed, 21 Apr 2010 19:18:19 +0000 (12:18 -0700)]
sample.ceph.conf: add example on writeahead (vs parallel) journal
Sage Weil [Wed, 21 Apr 2010 19:08:59 +0000 (12:08 -0700)]
osd: create 'rbd' pool
Sage Weil [Wed, 21 Apr 2010 17:58:29 +0000 (10:58 -0700)]
debian: require hdparm, recommend btrfs-tools
Sage Weil [Wed, 21 Apr 2010 17:58:29 +0000 (10:58 -0700)]
debian: require hdparm, recommend btrfs-tools
Sage Weil [Tue, 20 Apr 2010 23:06:21 +0000 (16:06 -0700)]
mds: always use get_newest_seq (not snap) when doing cow
Sage Weil [Tue, 20 Apr 2010 19:40:11 +0000 (12:40 -0700)]
mds: rename move_to_realm(), add debugging (cleanup)
Sage Weil [Tue, 20 Apr 2010 19:39:23 +0000 (12:39 -0700)]
mds: don't cow already cowed dentry
Sage Weil [Tue, 20 Apr 2010 23:20:11 +0000 (16:20 -0700)]
sample.ceph.conf: updated
Sage Weil [Tue, 20 Apr 2010 22:25:00 +0000 (15:25 -0700)]
fetch_config: enable fetching ceph.conf from a remote location
fetch_config: always fetch if script exists and is executable
fetch_config: make /etc/ceph/sample.fetch_config +x
Makefile: fix whitespace
Sage Weil [Tue, 20 Apr 2010 17:47:10 +0000 (10:47 -0700)]
osd: don't capture SIGINT/SIGTERM; journal and/or btrfs snaps are sufficient.
We used to do this to avoid corrupting the filestore, but since we can now
either roll forward with the writeahead journal OR roll back using btrfs
snaps, this is useless. It wasn't a full solution anyway.
Sage Weil [Tue, 20 Apr 2010 17:39:23 +0000 (10:39 -0700)]
auth: less noisy debug
Sage Weil [Tue, 20 Apr 2010 16:59:16 +0000 (09:59 -0700)]
mds: drop mutation locks
Saw this one, but fixed others that appear broken as well:
mds/MDCache.h: In function 'virtual Mutation::~Mutation()':
mds/MDCache.h:115: FAILED assert(pins.empty())
1: (Mutation::~Mutation()+0x46) [0x791716]
2: (MDCache::truncate_inode_logged(CInode*, Mutation*)+0x7b) [0x7bd6b7]
3: (C_MDC_TruncateLogged::finish(int)+0x2c) [0x84100e]
4: (finish_contexts(std::list<Context*, std::allocator<Context*> >&, int)+0x1af) [0x74a807]
5: (Journaler::_finish_flush(int, long, utime_t, bool)+0x873) [0x92ea71]
6: (Journaler::C_Flush::finish(int)+0x43) [0x936503]
7: (Objecter::handle_osd_op_reply(MOSDOpReply*)+0xcf5) [0x8ff00f]
8: (MDS::_dispatch(Message*)+0x1ee0) [0x726372]
9: (MDS::ms_dispatch(Message*)+0x2f) [0x7274b9]
10: (Messenger::ms_deliver_dispatch(Message*)+0x55) [0x719949]
11: (SimpleMessenger::dispatch_entry()+0x4f4) [0x7074b2]
12: (SimpleMessenger::DispatchThread::entry()+0x29) [0x7039d1]
13: (Thread::_entry_func(void*)+0x20) [0x71412e]
14: /lib/libpthread.so.0 [0x7f25474e073a]
15: (clone()+0x6d) [0x7f254670a69d]
Sage Weil [Tue, 20 Apr 2010 03:43:22 +0000 (20:43 -0700)]
osd: fix snapset loading from _snapdir
Another masked variable! In the same block as the last one! Aie.
Sage Weil [Tue, 20 Apr 2010 03:29:14 +0000 (20:29 -0700)]
mds: clone dentry for multiversion dir if linkage is changing...
...even if the inode itself doesn't need to be cowed. In particular, we
do the pre_cow_old_inode() thing, so it frequently doesn't need to be cowed,
but the dentry does when we are say unlinking a directory or some such.
Sage Weil [Mon, 19 Apr 2010 23:38:53 +0000 (16:38 -0700)]
mds: avoid null deref when hiding .ceph dir
Greg Farnum [Mon, 19 Apr 2010 21:32:36 +0000 (14:32 -0700)]
mds: rename send_message_client to send_message_client_counted
Greg Farnum [Mon, 19 Apr 2010 21:22:50 +0000 (14:22 -0700)]
mds: fix erroneous uses of send_message that need to be send_message_client
Greg Farnum [Mon, 19 Apr 2010 21:22:23 +0000 (14:22 -0700)]
mds: Add new Connection-based send_message_client that uses inc_push_seq too
Jim Schutt [Fri, 16 Apr 2010 22:25:49 +0000 (16:25 -0600)]
autoconf: Fix detection of sync_file_range.
Without this patch, on CentOS 5.4 ./configure reports that
sync_file_range is missing, but HAVE_SYNC_FILE_RANGE ends
up being defined in src/acconfig.h anyway.
Compile tested on CentOS 5.4 (which does not have sync_file_range(2)
in distro glibc) and Fedora 11 (which does).
Signed-off-by: Jim Schutt <jaschut@sandia.gov>
Greg Farnum [Fri, 16 Apr 2010 22:51:55 +0000 (15:51 -0700)]
remove references to [group] and [mount] in sample.ceph.conf
Greg Farnum [Fri, 16 Apr 2010 22:18:26 +0000 (15:18 -0700)]
add executables to .gitignore
Greg Farnum [Fri, 16 Apr 2010 21:55:07 +0000 (14:55 -0700)]
mds: Fix bad pointer dereference brought about by switch to Message ref-counting
Sage Weil [Fri, 16 Apr 2010 20:51:58 +0000 (13:51 -0700)]
mds: xlock versionlock on rename if witnesses
This ensures that we don't pipeline dentry linkage updates when there
are witnesses. That can cause problems because replicas don't see
projected dentry linkage info, and will get confused when they look at
the replica of the srcdn and it's, say, NULL and not srci.
Greg Farnum [Fri, 16 Apr 2010 19:30:44 +0000 (12:30 -0700)]
mds: use Connection-based send_message in handle_discover
Greg Farnum [Fri, 16 Apr 2010 19:28:56 +0000 (12:28 -0700)]
msg: Remove "asker" data member from MDiscover.
Fix uses.
Greg Farnum [Fri, 16 Apr 2010 19:28:14 +0000 (12:28 -0700)]
mds: Fix some compile-time issues.
Greg Farnum [Fri, 16 Apr 2010 17:39:09 +0000 (10:39 -0700)]
mds: Subsystems generally use the connection-based send_message when possible.
This isn't a very deep change, though -- a lot of the remaining instances
could probably be fixed up just by changing passthrough variables and whatnot.
Greg Farnum [Fri, 16 Apr 2010 16:36:30 +0000 (09:36 -0700)]
mds: create send_message(Message *m, Connection *c) passthrough
Yehuda Sadeh [Fri, 16 Apr 2010 00:04:43 +0000 (17:04 -0700)]
rados: aio, reorder callback completion handler creation
Greg Farnum [Thu, 15 Apr 2010 23:34:17 +0000 (16:34 -0700)]
mds: set trivial uses of send_message to use the Connection version.
Greg Farnum [Thu, 15 Apr 2010 20:38:19 +0000 (13:38 -0700)]
osd: send_message via Connection when possible
Greg Farnum [Thu, 15 Apr 2010 20:24:45 +0000 (13:24 -0700)]
osd: send reply via connection for MOSDSubOps
Greg Farnum [Thu, 15 Apr 2010 20:19:22 +0000 (13:19 -0700)]
osd: Send messages via Connection * when possible.
Also, rename a message shadowing its trigger message so that we can.
Greg Farnum [Thu, 15 Apr 2010 19:23:19 +0000 (12:23 -0700)]
msgr: Implement new send_message[_lazy](Message *m, Connection *con) functions.
These can reduce the number of lookups and should be able to recover
from any pipes being destroyed while the Connection is still active.
Sage Weil [Thu, 15 Apr 2010 21:44:17 +0000 (14:44 -0700)]
filestore: be thorough about wiping out old osd data content during mkfs
Delete any subvols or directories that we fine.
Greg Farnum [Thu, 15 Apr 2010 19:07:37 +0000 (12:07 -0700)]
msgr: if a pipe** is passed in to submit_message, it's used.
This is a double pointer because it's possible that a Pipe has
been destroyed since the send_message call, so we want to check
that the Pipe * remains set after we've taken the main lock.
Greg Farnum [Thu, 15 Apr 2010 20:10:47 +0000 (13:10 -0700)]
msgr: give submit_message new interface.
Greg Farnum [Thu, 15 Apr 2010 18:58:43 +0000 (11:58 -0700)]
msgr: Add a void *pipe to Connection.
This is set on Connection creation and zeroed out in ~Pipe().
Greg Farnum [Thu, 15 Apr 2010 20:08:51 +0000 (13:08 -0700)]
msgr: remove unnecessary clone variable from submit_message
Sage Weil [Thu, 15 Apr 2010 17:12:40 +0000 (10:12 -0700)]
filestore: log snap_create error before asserting success
Sage Weil [Thu, 15 Apr 2010 17:09:42 +0000 (10:09 -0700)]
mon: do not build mon to mon authorizer if cephx is disabled
Sage Weil [Wed, 14 Apr 2010 22:18:52 +0000 (15:18 -0700)]
osd: fix source type checks (osd, mon)
The peer type is on the connection, no need to look at Session. Also, we
don't currently have Sessions for outgoing connections.
Sage Weil [Wed, 14 Apr 2010 22:08:47 +0000 (15:08 -0700)]
osd: don't ->put() a null session in _share_map_incoming
Sage Weil [Wed, 14 Apr 2010 21:47:44 +0000 (14:47 -0700)]
osd: queue pg update under pg sequencer
Sage Weil [Wed, 14 Apr 2010 21:47:05 +0000 (14:47 -0700)]
osd: queue pg creation under pg sequencer
Avoids pg log, metadata writes from being reordered. Had to refactor
try_create_pg to be less annoying.
Sage Weil [Wed, 14 Apr 2010 17:08:57 +0000 (10:08 -0700)]
mds: not dout(0) request latency
Sage Weil [Wed, 14 Apr 2010 17:08:42 +0000 (10:08 -0700)]
qa: set -e in workunits
Sage Weil [Wed, 14 Apr 2010 18:08:38 +0000 (11:08 -0700)]
mds: fix broken snaprealm split optimization for (unlinked) files
Splitting a file is trivial; do it. No special case for 'stray'.
Greg Farnum [Tue, 13 Apr 2010 22:47:31 +0000 (15:47 -0700)]
rgw: don't crash if HTTP_HOST isn't set
Sage Weil [Tue, 13 Apr 2010 19:26:32 +0000 (12:26 -0700)]
osd: avoid PGPool lookup in inner loop
Each PG already has a PGPool *.
Sage Weil [Tue, 13 Apr 2010 19:23:36 +0000 (12:23 -0700)]
osd: fix loading of snapset from _snapdir object attr
This happens when the head is deleted but we still have snaps. A nested
bufferlist declaration was masking things.
Greg Farnum [Tue, 13 Apr 2010 18:39:30 +0000 (11:39 -0700)]
osd: replace the ALLOW_MESSAGES_FROM macro with use of OSDCaps functions.
Now with less null pointer exception! Code checks for session
before dereferencing it.
Greg Farnum [Tue, 13 Apr 2010 18:49:24 +0000 (11:49 -0700)]
osd: add a message_from_mon function
Greg Farnum [Tue, 13 Apr 2010 18:03:07 +0000 (11:03 -0700)]
Revert "osd: replace the ALLOW_MESSAGES_FROM macro with use of OSDCaps functions"
This reverts commit
9ceb3be9a62f7b777b23a4d65b1cc302ec834e6b .
This will be coming back in another form shortly, but apparently we have
more connections without sessions on the OSD.
Sage Weil [Tue, 13 Apr 2010 17:38:48 +0000 (10:38 -0700)]
mds: only recover files from stale clients when auth
Replicas have client_ranges defined too, but only the auth MDS should do
the file size/mtime recovery.
Also rename clear_client_caps_after_export() for clarity, and assert inode
is_auth throughout file recover code.
Greg Farnum [Mon, 12 Apr 2010 22:31:06 +0000 (15:31 -0700)]
osd: add some put()s of Session * that weren't being used properly.
This fixes a memory leak that could have caused problems in the future.
Greg Farnum [Mon, 12 Apr 2010 22:16:52 +0000 (15:16 -0700)]
osd: replace the ALLOW_MESSAGES_FROM macro with use of OSDCaps functions
Greg Farnum [Mon, 12 Apr 2010 21:37:47 +0000 (14:37 -0700)]
osd: Add is_X functions to OSDCaps (where X is mon, osd, mds).
Greg Farnum [Mon, 12 Apr 2010 18:13:46 +0000 (11:13 -0700)]
rados: check that given pool name actually exists when deleting
Greg Farnum [Mon, 12 Apr 2010 18:09:51 +0000 (11:09 -0700)]
mon: OSDMonitor makes sure pool ID is good, preventing crashiness
Sage Weil [Fri, 9 Apr 2010 22:44:50 +0000 (15:44 -0700)]
osdmap: move pool names into first part of encoding; add version to second part
This gives the kclient access to pool names while still ignoring the
osd_info_t crap. And also will make adding more stuff to the second half
later possible without breaking the kclient.
Sage Weil [Fri, 9 Apr 2010 22:13:37 +0000 (15:13 -0700)]
librados: add lookup_pool()
Sage Weil [Fri, 9 Apr 2010 19:40:51 +0000 (12:40 -0700)]
librados: no need to include linux/types.h
Sage Weil [Fri, 9 Apr 2010 19:00:53 +0000 (12:00 -0700)]
debian: more librados1-dev deps
Sage Weil [Fri, 9 Apr 2010 18:59:26 +0000 (11:59 -0700)]
spinlock: clean up #include deps
Sage Weil [Fri, 9 Apr 2010 21:50:12 +0000 (14:50 -0700)]
monclient: seed RNG so we pick a random monitor
Sage Weil [Fri, 9 Apr 2010 21:03:47 +0000 (14:03 -0700)]
todo: move bugs to tracker
Greg Farnum [Tue, 6 Apr 2010 18:08:45 +0000 (11:08 -0700)]
auth: cauthtool now identifies itself properly to common_init
Greg Farnum [Tue, 6 Apr 2010 17:44:06 +0000 (10:44 -0700)]
mon: add 'get' command to AuthMon, letting you retrive one entity's keyring data
Sage Weil [Fri, 9 Apr 2010 18:13:03 +0000 (11:13 -0700)]
filestore: fix weird references for clone/clone_range
Not sure why that was legal to begin with?
Sage Weil [Fri, 9 Apr 2010 18:29:09 +0000 (11:29 -0700)]
objectstore: fix clone_range() transaction encoding
Sage Weil [Fri, 9 Apr 2010 04:49:17 +0000 (21:49 -0700)]
librados: clean up object listing api
Sage Weil [Fri, 9 Apr 2010 04:21:36 +0000 (21:21 -0700)]
osd: clear initial interval_set in build_removed_snaps
Caller may pass a non-empty set, in which case we crashed or returned a bad
result.
Sage Weil [Fri, 9 Apr 2010 03:55:36 +0000 (20:55 -0700)]
testrados: create/use own pool
Sage Weil [Thu, 8 Apr 2010 23:42:59 +0000 (16:42 -0700)]
crc32c: ifdef out dead code to shut up warning
Sage Weil [Thu, 8 Apr 2010 23:42:15 +0000 (16:42 -0700)]
Merge branch 'ns' into unstable
Sage Weil [Thu, 8 Apr 2010 16:35:43 +0000 (09:35 -0700)]
filestore: more informative error on current/ rename failure
Sage Weil [Thu, 8 Apr 2010 16:26:54 +0000 (09:26 -0700)]
init-ceph: include 'noatime' btrfs mount option by default
Sage Weil [Thu, 8 Apr 2010 22:52:40 +0000 (15:52 -0700)]
testrados: test more stuff
Sage Weil [Thu, 8 Apr 2010 22:52:34 +0000 (15:52 -0700)]
objecter: cleanup