Commit Graph

7748 Commits

Author SHA1 Message Date
Sage Weil
f2160f1ab4 osd: create 'rbd' pool 2010-04-21 14:24:20 -07:00
Sage Weil
476606f483 mds: always use get_newest_seq (not snap) when doing cow 2010-04-20 16:39:13 -07:00
Sage Weil
327432aead mds: rename move_to_realm(), add debugging (cleanup) 2010-04-20 16:39:13 -07:00
Sage Weil
c719f4e442 mds: don't cow already cowed dentry 2010-04-20 16:39:13 -07:00
Sage Weil
93058af345 sample.ceph.conf: updated 2010-04-20 16:38:53 -07:00
Sage Weil
ba5a0d1ff6 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
2010-04-20 16:38:48 -07:00
Sage Weil
5a5cc18374 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.
2010-04-20 10:47:10 -07:00
Sage Weil
f7f6daf1d2 auth: less noisy debug 2010-04-20 10:39:23 -07:00
Sage Weil
34d308770f 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]
2010-04-20 09:58:53 -07:00
Sage Weil
d8f1de5e87 osd: fix snapset loading from _snapdir
Another masked variable!  In the same block as the last one!  Aie.
2010-04-19 20:43:22 -07:00
Sage Weil
1915f2d590 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.
2010-04-19 20:29:14 -07:00
Sage Weil
07c7873dc9 mds: avoid null deref when hiding .ceph dir 2010-04-19 16:38:53 -07:00
Sage Weil
f9225fe642 mds: xlock dentry versionlock to cleanly avoid projected dn linkage replication issues 2010-04-19 15:37:46 -07:00
Sage Weil
463792de06 reorder locks 2010-04-19 15:36:30 -07:00
Sage Weil
c8d7c970e8 mds: always issue lease mask 1; assume CEPH_LOCK_DN
This makes it possible for us to change CEPH_LOCK_DN definition without
breaking the client.
2010-04-19 15:36:21 -07:00
Sage Weil
beb562d9f0 mds: add versionlock to dentry 2010-04-19 15:35:30 -07:00
Greg Farnum
4f402cb45e mds: rename send_message_client to send_message_client_counted 2010-04-19 14:32:36 -07:00
Greg Farnum
09366cbf21 mds: fix erroneous uses of send_message that need to be send_message_client 2010-04-19 14:22:50 -07:00
Greg Farnum
3484b84403 mds: Add new Connection-based send_message_client that uses inc_push_seq too 2010-04-19 14:22:23 -07:00
Greg Farnum
a0e7d8dfba remove references to [group] and [mount] in sample.ceph.conf 2010-04-16 15:51:55 -07:00
Greg Farnum
edf935d1ca mds: Fix bad pointer dereference brought about by switch to Message ref-counting 2010-04-16 14:55:07 -07:00
Sage Weil
d8be246ba3 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.
2010-04-16 13:52:47 -07:00
Greg Farnum
06e5528a1d mds: use Connection-based send_message in handle_discover 2010-04-16 12:30:44 -07:00
Greg Farnum
6a0d0d0612 msg: Remove "asker" data member from MDiscover.
Fix uses.
2010-04-16 12:28:56 -07:00
Greg Farnum
751a4056c7 mds: Fix some compile-time issues. 2010-04-16 12:28:14 -07:00
Greg Farnum
da13000d96 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.
2010-04-16 11:12:30 -07:00
Greg Farnum
05b0e3a5ea mds: create send_message(Message *m, Connection *c) passthrough 2010-04-16 09:36:30 -07:00
Yehuda Sadeh
b4d423151a rados: aio, reorder callback completion handler creation 2010-04-15 17:04:43 -07:00
Greg Farnum
bd34079e86 mds: set trivial uses of send_message to use the Connection version. 2010-04-15 16:34:17 -07:00
Greg Farnum
69682ad837 osd: send_message via Connection when possible 2010-04-15 15:58:18 -07:00
Greg Farnum
b38cebf074 osd: send reply via connection for MOSDSubOps 2010-04-15 15:58:18 -07:00
Greg Farnum
f6d2666492 osd: Send messages via Connection * when possible.
Also, rename a message shadowing its trigger message so that we can.
2010-04-15 15:58:18 -07:00
Greg Farnum
85b67cecdf 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.
2010-04-15 15:58:13 -07:00
Sage Weil
47f5315fca filestore: be thorough about wiping out old osd data content during mkfs
Delete any subvols or directories that we fine.
2010-04-15 14:44:17 -07:00
Greg Farnum
057897e468 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.
2010-04-15 13:43:16 -07:00
Greg Farnum
731414b2c0 msgr: give submit_message new interface. 2010-04-15 13:43:15 -07:00
Greg Farnum
6c9bee4910 msgr: Add a void *pipe to Connection.
This is set on Connection creation and zeroed out in ~Pipe().
2010-04-15 13:43:15 -07:00
Greg Farnum
a9800e7335 msgr: remove unnecessary clone variable from submit_message 2010-04-15 13:43:11 -07:00
Sage Weil
fd28d9a8a4 cephfs: include LAZYIO caps if LAZY file mode bit is set 2010-04-15 11:31:53 -07:00
Sage Weil
06d032e824 filestore: log snap_create error before asserting success 2010-04-15 10:12:40 -07:00
Sage Weil
2cc0ec2937 mon: do not build mon to mon authorizer if cephx is disabled 2010-04-15 10:09:42 -07:00
Greg Farnum
ca74b4bb3d atomic_t: Add a new version based on libatomic_ops.
Hopefully this version will take less CPU since it isn't running Spinlocks, but
we'll need to test for that.
Includes appropriate Makefile and configure changes.
2010-04-14 16:54:48 -07:00
Greg Farnum
d1d6da3b4b atomic_t: Remove (never used) unstable commonc++-based version 2010-04-14 16:54:48 -07:00
Greg Farnum
69b849c4bd buffer: Include Spinlock.h.
This is inherited from one implementation of atomic_t but not necessarily all.
Including the file here is necessary in the case of new, faster atomic_t
implementations that don't use Spinlocks.
2010-04-14 16:54:48 -07:00
Sage Weil
d0213ddd60 mds: allow LAZYIO cap along with WR 2010-04-14 16:16:17 -07:00
Sage Weil
198d710681 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.
2010-04-14 15:18:52 -07:00
Sage Weil
afcee3b07f osd: don't ->put() a null session in _share_map_incoming 2010-04-14 15:08:47 -07:00
Sage Weil
ec8471d623 osd: queue pg update under pg sequencer 2010-04-14 14:47:44 -07:00
Sage Weil
69b108f8ce 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.
2010-04-14 14:47:05 -07:00
Sage Weil
cfabc0208b mds: not dout(0) request latency 2010-04-14 12:40:58 -07:00
Sage Weil
96befd4a5a mds: fix broken snaprealm split optimization for (unlinked) files
Splitting a file is trivial; do it.  No special case for 'stray'.
2010-04-14 11:31:52 -07:00
Greg Farnum
6573493a8d rgw: don't crash if HTTP_HOST isn't set 2010-04-13 15:48:01 -07:00
Sage Weil
a6c80a3a1e osd: avoid PGPool lookup in inner loop
Each PG already has a PGPool *.
2010-04-13 12:27:08 -07:00
Sage Weil
69fda2a9c4 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.
2010-04-13 12:27:08 -07:00
Greg Farnum
e5cd2b72f0 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.
2010-04-13 11:49:34 -07:00
Greg Farnum
50cad81436 osd: add a message_from_mon function 2010-04-13 11:49:34 -07:00
Greg Farnum
c94e490430 Revert "osd: replace the ALLOW_MESSAGES_FROM macro with use of OSDCaps functions"
This reverts commit 9ceb3be9a6.
This will be coming back in another form shortly, but apparently we have
more connections without sessions on the OSD.
2010-04-13 11:03:45 -07:00
Sage Weil
81e748dffd 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.
2010-04-13 10:38:48 -07:00
Greg Farnum
e7547dc7ac 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.
2010-04-12 15:31:16 -07:00
Greg Farnum
9ceb3be9a6 osd: replace the ALLOW_MESSAGES_FROM macro with use of OSDCaps functions 2010-04-12 15:30:13 -07:00
Greg Farnum
4e138c1fc6 osd: Add is_X functions to OSDCaps (where X is mon, osd, mds). 2010-04-12 15:17:15 -07:00
Greg Farnum
17d24513e2 rados: check that given pool name actually exists when deleting 2010-04-12 11:20:12 -07:00
Greg Farnum
d44c26258d mon: OSDMonitor makes sure pool ID is good, preventing crashiness 2010-04-12 11:20:07 -07:00
Sage Weil
c4892bed6f 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.
2010-04-09 15:44:50 -07:00
Sage Weil
6bf54f1041 librados: add lookup_pool() 2010-04-09 15:13:37 -07:00
Sage Weil
6417e6a58f librados: no need to include linux/types.h 2010-04-09 14:52:32 -07:00
Sage Weil
26325b1a29 debian: more librados1-dev deps 2010-04-09 14:52:29 -07:00
Sage Weil
414a6e3e87 spinlock: clean up #include deps 2010-04-09 14:52:27 -07:00
Sage Weil
33e604dd6a monclient: seed RNG so we pick a random monitor 2010-04-09 14:52:01 -07:00
Sage Weil
6ed1f04fa2 todo: move bugs to tracker 2010-04-09 14:52:01 -07:00
Greg Farnum
94307c9ab0 auth: cauthtool now identifies itself properly to common_init 2010-04-09 12:35:08 -07:00
Greg Farnum
d5b392474d mon: add 'get' command to AuthMon, letting you retrive one entity's keyring data 2010-04-09 12:35:08 -07:00
Sage Weil
fa9588ab13 filestore: fix weird references for clone/clone_range
Not sure why that was legal to begin with?
2010-04-09 11:50:43 -07:00
Sage Weil
a9ecb46abc objectstore: fix clone_range() transaction encoding 2010-04-09 11:53:28 -07:00
Greg Farnum
1cfb41f77d osd: rename PGPool::removed_snaps to cached_removed_snaps to clearly identify 2010-04-09 10:04:18 -07:00
Greg Farnum
e2ca9a3019 auth: cauthtool now identifies itself properly to common_init 2010-04-09 10:02:22 -07:00
Greg Farnum
e949931edb mon: add 'get' command to AuthMon, letting you retrive one entity's keyring data 2010-04-09 10:02:22 -07:00
Sage Weil
b4c564c7d9 librados: clean up object listing api 2010-04-08 21:49:17 -07:00
Sage Weil
bb2c0a9298 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.
2010-04-08 21:21:36 -07:00
Sage Weil
1bcdf34816 testrados: create/use own pool 2010-04-08 20:55:36 -07:00
Sage Weil
0f22be7d89 crc32c: ifdef out dead code to shut up warning 2010-04-08 16:42:59 -07:00
Sage Weil
b3cb1cb0d4 Merge branch 'ns' into unstable 2010-04-08 16:42:15 -07:00
Sage Weil
736a271834 filestore: more informative error on current/ rename failure 2010-04-08 16:42:11 -07:00
Sage Weil
c511dd1a42 init-ceph: include 'noatime' btrfs mount option by default 2010-04-08 16:42:11 -07:00
Sage Weil
4a2ca2b194 testrados: test more stuff 2010-04-08 15:52:40 -07:00
Sage Weil
c2987ce40f objecter: cleanup 2010-04-08 15:52:34 -07:00
Sage Weil
f7f38df3d5 librados: clean up c header 2010-04-08 15:52:28 -07:00
Sage Weil
2112d2081d debian: fix up librados1-dev with all necessary headers 2010-04-08 15:23:03 -07:00
Sage Weil
13d6b38c52 librados: move c++ api into librados.hpp; more type cleanup 2010-04-08 15:22:50 -07:00
Sage Weil
1e05d5c099 librados: use std::string, not nstring, in c++ api 2010-04-08 14:19:01 -07:00
Sage Weil
181b81c19a librados: avoid snapid_t type, types.h 2010-04-08 13:00:29 -07:00
Sage Weil
5c00d5f75a filestore: check for SNAP_DESTROY ioctl, and file if not present 2010-04-08 10:39:47 -07:00
Sage Weil
c9cb118330 librados: move librados.h to include/ 2010-04-08 09:54:18 -07:00
Sage Weil
2fae333d05 spinlock: move to include/ 2010-04-08 09:51:14 -07:00
Sage Weil
ee13f60f97 spinlock: move to ceph namespace 2010-04-08 09:49:50 -07:00
Sage Weil
e1896d8da8 atomic: move to ceph namespace 2010-04-08 09:48:08 -07:00
Sage Weil
3ea82baa07 atomic: rename test() -> read()
Make the interface slightly less weird.
2010-04-08 09:40:10 -07:00
Sage Weil
aa55570d32 buffer: avoid including ceph assert directly
If assert isn't defined, include the standard C one.  Internal ceph bits
should include assert.h before buffer.h if they want the ceph one.
2010-04-08 09:16:11 -07:00
Sage Weil
df2422f364 assert: use ceph namespace 2010-04-08 09:09:43 -07:00
Sage Weil
74be67713d crc32c: prefix with ceph_ 2010-04-08 09:04:44 -07:00
Sage Weil
ac70c56300 page: move to ceph namespace, defs to common/page.cc 2010-04-08 08:53:03 -07:00
Sage Weil
fc8e3c354b buffer: move to ceph namespace 2010-04-08 08:49:27 -07:00
Sage Weil
50ea193c95 osd: fix transposed clone_range args
We're cloning ranges _into_ soid (and in fact just deleted any old soid
that may have been lingering).
2010-04-08 08:13:09 -07:00
Sage Weil
250ff72a7e spinlock: avoid lockdep include unless lockdep is on 2010-04-08 07:43:23 -07:00
Sage Weil
0fb8d9318f buffer: avoid spinlock include unless debugging is on 2010-04-08 07:43:12 -07:00
Sage Weil
75699dbb0f librados: reduce #includes 2010-04-08 07:42:54 -07:00
Sage Weil
7f16accaab librados: c binding for rados_tmap_update() 2010-04-07 16:43:22 -07:00
Sage Weil
e5381a5c20 rbdtool: maintain an rbd_directory object; add --list 2010-04-07 16:37:21 -07:00
Sage Weil
a1cf10abcd auth: shut up about loading the key file 2010-04-07 16:35:39 -07:00
Sage Weil
be1e87f3fe librados: add tmap_update to c++ interface 2010-04-07 16:35:28 -07:00
Sage Weil
ba58412678 osd: fix tmap when header update not specified, or initial object dne 2010-04-07 16:35:06 -07:00
Sage Weil
6e28eb3d6e Merge branch 'rbd' into unstable 2010-04-07 15:29:38 -07:00
Sage Weil
25760897ad rbdtool: delete rbd images too 2010-04-07 15:29:08 -07:00
Sage Weil
89b05587fe rbdtool: use shared rbd_types.h 2010-04-07 14:47:04 -07:00
Sage Weil
50fcf793a6 msgr: drop useless was_session_reset() call on lossy channel close
The fail closes out the pipe, no need to do a 'reset'.
2010-04-07 14:23:44 -07:00
Sage Weil
d2d80c6e80 ceph: print output to stdout, not dout
Using cout instead of dout(0) avoids the thread id in the prefix.
2010-04-07 14:23:44 -07:00
Sage Weil
3d4a692b59 msgr: fail on sd < 0
I saw a case where poll(2) was blocking despite being passed an fd of -1.
Since that's clearly invalid, we can fail tcp_{read,write} before that
point.

Weird.
2010-04-07 14:23:44 -07:00
Sage Weil
686192a03e osd: flush store ops after map update
Otherwise we can race:

 - queue delete+rewrite of pg log
 - unblock op queue
 - queue append to log
...
 - apply append
 - apply delete+rewrite
2010-04-07 12:38:48 -07:00
Sage Weil
2f21010659 mds: set laggy in tick() if its been a while 2010-04-07 10:52:52 -07:00
Sage Weil
8741959b8e todo: mds 2010-04-06 14:54:22 -07:00
Sage Weil
03e2019471 mon: set osd up_thru when adjusting pg_temp
This just avoids making the OSD ask again for up_thru.  Fewer osdmap
updates!
2010-04-06 13:30:12 -07:00
Sage Weil
634441e441 osd: distinguish between per-pool snap pools and user-managed snap pools
If removed_snaps is non-empty, then snaps are managed by the
user: snap context is specified for all writes (e.g., MDS or
librados user using the snap context api).

We can enforce this by adding an (unused) snapid (1) to the
removed_snaps the first time a non-pool snap snapid is allocated.
2010-04-06 12:58:59 -07:00
Sage Weil
e52aa5e827 mds: remove null clean stray dentries after dir commit 2010-04-06 12:32:07 -07:00
Sage Weil
be4a797e3e mds: fix purge_stray to be smart about NEW dentries
Mark new stray dentries NEW.

After purge, remove new dentries immediately; leave others as NULL and
dirty so they get removed from the ondisk stray dir properly.
2010-04-06 12:32:07 -07:00
Sage Weil
0efe4fbd0d mds: fix ref count check in eval_stray, purge_stray_purged
Dentry gets pin for any inode pins, and on purge has PIN_PURGING.
2010-04-06 12:32:07 -07:00
Sage Weil
50b177287f osd: return more useful errno (ENOENT) on missing base 2010-04-06 12:32:07 -07:00
Sage Weil
985a981059 mds: move new stray dentries to end of lru 2010-04-06 12:32:07 -07:00
Sage Weil
4de289f5f1 mds: use send_dentry_unlink helper for remote unlink 2010-04-06 12:32:07 -07:00
Sage Weil
07e3984641 mds: journal oldest client tid
Journal the client's safe tid with new requests.  This keeps the client
completed_requests list trimmed, so that we don't build up a ginormous
list of all requests over the entire journal.

Forward rolling mds format change.
2010-04-06 12:32:07 -07:00
Sage Weil
2c2ea0a233 todo: updates 2010-04-06 12:32:07 -07:00
Greg Farnum
190067ebec rgw: rgw_admin checks that it hasn't regenerated user ids 2010-04-05 13:59:52 -07:00
Greg Farnum
4ee4ba7f0f mon: add new command 'lspools [uid]' to OSDMonitor 2010-04-05 13:45:41 -07:00
Greg Farnum
4b6e4fa87c osd: pg_pool_t prints out its owner 2010-04-05 12:50:41 -07:00
Sage Weil
2b92ddce5d mds: fix snap purging during commit
Use the helper!

The commit_partial is still incomplete.. we need to purge the
dentry after the commit completes?
2010-04-05 10:53:17 -07:00
Sage Weil
e9f4a6c7d7 mds: streamline stray checks with helper 2010-04-05 10:26:42 -07:00
Sage Weil
955cfdb712 mds: make beacon output more informative 2010-04-02 20:07:37 -07:00
Sage Weil
4d5ce888f2 qa: run tests in random order 2010-04-02 20:07:34 -07:00
Sage Weil
fd60670bb7 mds: allow reconnect as long as we are in reconnect state
This used to work.. I think this is fallout from the mds session state
simplification (CLOSED was != NEW before).
2010-04-02 20:07:29 -07:00
Anton Blanchard
2cb112890f Add missing Makefile dependency for debug.cc
We were missing a Makefile dependency for debug.cc, without it make -j fails
because ceph_ver.h hasn't been created.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Sage Weil <sage@newdream.net>
2010-04-02 20:05:15 -07:00
Greg Farnum
d08ef701e1 rgw: radosgw_admin can delete users from the system 2010-04-02 16:51:19 -07:00
Greg Farnum
473c22a7f3 rgw: call url_decode in more appropriate places 2010-04-02 16:51:19 -07:00
Greg Farnum
fa8b9b9714 rgw: convert + to space in url_decode 2010-04-02 16:51:19 -07:00
Greg Farnum
1f3431ac62 rgw: send an error response if reading an ACL off disk fails 2010-04-02 16:51:19 -07:00
Greg Farnum
9cb74b9e37 rgw: remove bad local variable shadowing class member variable 2010-04-02 16:51:19 -07:00
Greg Farnum
a9620631d4 rgw: remove some invalid FIXMEs 2010-04-02 16:51:19 -07:00
Yehuda Sadeh
a98f8116de rbdtool: don't create empty object data 2010-04-02 14:20:28 -07:00
Yehuda Sadeh
00f1ec8182 rbd: created a userspace tool for creating rbd objects 2010-04-02 14:20:28 -07:00
Sage Weil
fdd5709afc mds: set laggy flag if dispatch takes too long
This prevents, e.g., tick() from coming in immediately after and
closing out client sessions after we chew through something particularly
slow.
2010-04-01 16:13:41 -07:00
Sage Weil
ea035fea80 msgr: set OPEN state after accepting connection
Not doing so can eventually lead to

msg/SimpleMessenger.cc: In function 'int SimpleMessenger::Pipe::accept()':
msg/SimpleMessenger.cc:765: FAILED assert(existing->state == STATE_CONNECTING)
2010-04-01 16:12:49 -07:00
Sage Weil
5fa165881a mds: fix file recovery
This was broken by commit d5574993f.
2010-04-01 13:18:00 -07:00
Sage Weil
4d56710ff3 mds: remove dir from 'new' list on any commit, not just on clean
A dir may be redirtied after the commit, such that it never becomes clean.
It only needs to stay on the 'new' list until it's been written to disk
at least once, though.
2010-04-01 13:17:56 -07:00
Sage Weil
96262fcb9d filejournal: fix journal full handling
We would block on journal full, but then try to continue where we left off,
which broke thoroughly.  Add return codes, and wait at the proper times:

 - if journal if full on first event, wait. otherwise, write what we have
   so far.
 - wait in write_thread_entry(), not check_for_full().

Also fix up 'room' calculation.
2010-04-01 11:39:16 -07:00
Sage Weil
4f8a353278 mds: remove dentry AND inode when dropping snap metadata; add helper
We should only drop obsolete snapped metadata when it is unreferenced, and
at that point we need to drop the dentry AND inode, not just the dentry.
This delays things until caps are released, among other things.
2010-04-01 07:34:24 -07:00
Sage Weil
74980486d1 osd: improve print of snapc in MOSDOp 2010-04-01 07:28:41 -07:00
Sage Weil
3f094f7b70 osd: fix snap trimmer SnapSet adjustment
AFAICS it's totally wrong?
2010-04-01 07:27:59 -07:00
Sage Weil
bd43b3a263 todo: updates 2010-03-31 15:30:29 -07:00
Sage Weil
4bb676d6d3 osd: improve snap trimmer debug output 2010-03-31 15:30:17 -07:00
Sage Weil
bca73ed71a mds: clear old snap_trace before building new one
Otherwise we just build up a big stack of historical information and send
it all to the client.
2010-03-31 15:00:23 -07:00
Greg Farnum
ad840edae5 msg: Fix a few invalid asserts.
Previously, only the messenger did refcounting so any incoming messages
better have nref==0. This is no longer the case, so adjust. For now,
we're just making sure nref==1 to check that our conversion worked properly.
2010-03-31 14:59:44 -07:00
Greg Farnum
b74962f969 msg: Message::nref now starts at 1; remove a get() in SimpleMessenger to adjust 2010-03-31 14:59:44 -07:00
Greg Farnum
7d23bb4e3a msg: Remove dead MExportDirWarning/Ack 2010-03-31 14:59:44 -07:00
Greg Farnum
9c179586c7 msg: Remove dead MMDSOffloadComplete 2010-03-31 14:59:44 -07:00
Greg Farnum
92a4049684 msg: Remove dead MMDSBoot 2010-03-31 14:59:44 -07:00
Greg Farnum
daf2e2c748 msg: MClassAck has a private destructor 2010-03-31 14:59:44 -07:00
Greg Farnum
157ecf6672 msg: Add MClassAck to Message.cc so it will decode properly 2010-03-31 14:59:44 -07:00
Greg Farnum
26182892cb msg: fix uses of MClass destructor to use put() 2010-03-31 14:59:43 -07:00
Greg Farnum
d43fad3161 msg: MClass has a private destructor 2010-03-31 14:59:43 -07:00
Greg Farnum
7fd1197617 msg: fix uses of MLock destructor to use put() 2010-03-31 14:59:43 -07:00
Greg Farnum
9c2816280e msg: MLock has a private destructor 2010-03-31 14:59:43 -07:00
Greg Farnum
943bb0055f msg: fix uses of MInodeFileCaps destructor to use put() 2010-03-31 14:59:43 -07:00
Greg Farnum
124bcc2667 msg: MInodeFileCaps has a private destructor 2010-03-31 14:59:43 -07:00
Greg Farnum
4b89e7bad8 msg: fix uses of MCacheExpire destructor to use put() 2010-03-31 14:59:43 -07:00
Greg Farnum
0b3c9496e0 msg: MCacheExpire has a private destructor 2010-03-31 14:59:43 -07:00
Greg Farnum
c392b16599 msg: fix uses of MMDSTableRequest destructor to use put() 2010-03-31 14:59:43 -07:00
Greg Farnum
07cc53a212 msg: MMDSTableRequest has a private destructor 2010-03-31 14:59:43 -07:00
Greg Farnum
806aaca8e1 msg: fix uses of MHeartbeat destructor to use put() 2010-03-31 14:59:43 -07:00
Greg Farnum
6511d4ec59 msg: MHeartbeat has a private destructor 2010-03-31 14:59:43 -07:00
Greg Farnum
63fb33e6bd msg: fix uses of MDentryLink destructor to use put() 2010-03-31 14:59:43 -07:00
Greg Farnum
eeabbb7acd msg: MDentryLink has a private destructor 2010-03-31 14:59:43 -07:00
Greg Farnum
0a237483bc msg: fix uses of MDentryUnlink destructor to use put() 2010-03-31 14:59:43 -07:00
Greg Farnum
e32f9c62a8 msg: MDentryUnlink has a private destructor 2010-03-31 14:59:43 -07:00
Greg Farnum
833aebfce1 msg: fix uses of MExportCapsAck destructor to use put() 2010-03-31 14:59:43 -07:00
Greg Farnum
666e23a9ef msg: MExportCapsAck has a private destructor 2010-03-31 14:59:43 -07:00
Greg Farnum
804d2329ce msg: fix uses of MExportCaps destructor to use put() 2010-03-31 14:59:43 -07:00
Greg Farnum
58c680aa49 msg: MExportCaps has a private destructor 2010-03-31 14:59:43 -07:00
Greg Farnum
9efa0cf79a msg: fix uses of MExportDirFinish destructor to use put() 2010-03-31 14:59:43 -07:00
Greg Farnum
b52dc99f6d msg: MExportDirFinish has a private destructor 2010-03-31 14:59:43 -07:00
Greg Farnum
aa25b7eb6e msg: fix uses of MExportDirNotify destructor to use put() 2010-03-31 14:59:43 -07:00
Greg Farnum
93b751b91d msg: MExportDirNotifyAck has a private destructor 2010-03-31 14:59:43 -07:00
Greg Farnum
d2959c379b msg: fix uses of MExportDirNotify destructor to use put() 2010-03-31 14:59:43 -07:00
Greg Farnum
2b54b55bf5 msg: MExportDirNotify has a private destructor 2010-03-31 14:59:43 -07:00
Greg Farnum
ff460ea22a msg: fix uses of MExportDirAck destructor to use put() 2010-03-31 14:59:42 -07:00
Greg Farnum
36058ceb13 msg: MExportDirAck has a private destructor 2010-03-31 14:59:42 -07:00
Greg Farnum
f722386bbb msg: fix uses of MExportDir destructor to use put() 2010-03-31 14:59:42 -07:00
Greg Farnum
cbe16f7b43 msg: MExportDir has a private destructor 2010-03-31 14:59:42 -07:00
Greg Farnum
f10c816550 msg: MExportDirWarningAck has a private destructor 2010-03-31 14:59:42 -07:00
Greg Farnum
a571f9f1d3 msg: MExportDirWarning has a private destructor 2010-03-31 14:59:42 -07:00
Greg Farnum
1641130077 msg: fix uses of MExportDirPrepAck destructor to use put() 2010-03-31 14:59:42 -07:00
Greg Farnum
1af2f4cd41 msg: MExportDirPrepAck has a private destructor 2010-03-31 14:59:40 -07:00
Greg Farnum
4fc722afb9 msg: fix uses of MExportDirPrep destructor to use put() 2010-03-31 14:59:40 -07:00
Greg Farnum
76174f46b3 msg: MExportDirPrep has a private destructor 2010-03-31 14:59:40 -07:00
Greg Farnum
7862fd44f5 msg: fix uses of MExportDirCancel destructor to use put() 2010-03-31 14:59:40 -07:00
Greg Farnum
5899fcc754 msg: MExportDirCancel has a private destructor 2010-03-31 14:59:40 -07:00
Greg Farnum
e48ccde061 msg: fix uses of MExportDirDiscoverAck destructor to use put() 2010-03-31 14:59:40 -07:00
Greg Farnum
95c24a9e74 msg: MExportDirDiscoverAck has a private destructor 2010-03-31 14:59:40 -07:00
Greg Farnum
d9b57aa617 msg: fix uses of MExportDirDiscover destructor to use put() 2010-03-31 14:59:40 -07:00
Greg Farnum
723923afb4 msg: MExportDirDiscover has a private destructor 2010-03-31 14:59:40 -07:00
Greg Farnum
35fce2755e msg: fix uses of MMDSFragmentNotify destructor to use put() 2010-03-31 14:59:40 -07:00
Greg Farnum
2e42b9b969 msg: MMDSFragmentNotify has a private destructor 2010-03-31 14:59:40 -07:00
Greg Farnum
7bb62db415 msg: fix uses of MDiscoverReply destructor to use put() 2010-03-31 14:59:40 -07:00
Greg Farnum
8b85aa3c22 msg: MDiscoverReply has a private destructor 2010-03-31 14:59:40 -07:00
Greg Farnum
a9afd9e2e6 msg: MDiscover has a private destructor 2010-03-31 14:59:40 -07:00
Greg Farnum
ed68080281 msg: fix uses of MDirUpdate destructor to use put() 2010-03-31 14:59:40 -07:00
Greg Farnum
3e91bf8265 msg: MDirUpdate has a private destructor 2010-03-31 14:59:39 -07:00
Greg Farnum
c8eb706822 msg: fix uses of MMDSCacheRejoin destructor to use put() 2010-03-31 14:59:39 -07:00
Greg Farnum
5c5831cd51 msg: MMDSCacheRejoin has a private destructor 2010-03-31 14:59:39 -07:00
Greg Farnum
224423aa26 msg: MMDSResolveAck has a private destructor 2010-03-31 14:59:39 -07:00
Greg Farnum
88cfb939cb msg: fix uses of MMDSResolve destructor to use put() 2010-03-31 14:59:39 -07:00
Greg Farnum
b5e4475196 msg: MMDSResolve has a private destructor 2010-03-31 14:59:39 -07:00
Greg Farnum
3bd67ca07e msg: MMDSLoadTargets has a private destructor 2010-03-31 14:59:39 -07:00
Greg Farnum
7f83723d89 msg: fix uses of MMDSBeacon destructor to use put() 2010-03-31 14:59:39 -07:00
Greg Farnum
95609f2529 msg: MMDSBeacon has a private destructor 2010-03-31 14:59:39 -07:00
Greg Farnum
cda652b69f msg: fix uses of MMDSMap destructor to use put() 2010-03-31 14:59:39 -07:00
Greg Farnum
241be82ec3 msg: MMDSMap has a private destructor 2010-03-31 14:59:39 -07:00
Greg Farnum
375c87fdc0 msg: fix uses of MMDSSlaveRequest destructor to use put() 2010-03-31 14:59:39 -07:00
Greg Farnum
48259443ac msg: MMDSSlaveRequest has a private destructor 2010-03-31 14:59:39 -07:00
Greg Farnum
d5c4f0ea73 msg: fix uses of MClientSnap destructor to use put() 2010-03-31 14:59:39 -07:00
Greg Farnum
cbe66c71e8 msg: MClientSnap has a private destructor 2010-03-31 14:59:39 -07:00
Greg Farnum
51db4d9ef7 msg: fix uses of MClientLease destructor to use put() 2010-03-31 14:59:39 -07:00
Greg Farnum
fa6d8d8cb0 msg: MClientLease has a private destructor 2010-03-31 14:59:39 -07:00
Greg Farnum
4c911b58cb msg: fix uses of MClientCapRelease destructor to use put() 2010-03-31 14:59:39 -07:00
Greg Farnum
f94a49b6fb msg: MClientCapRelease has a private destructor 2010-03-31 14:59:39 -07:00
Greg Farnum
2fb219aa23 msg: fix uses of MClientCaps destructor to use put() 2010-03-31 14:59:39 -07:00
Greg Farnum
565fcb5537 msg: MClientCaps has a private destructor 2010-03-31 14:59:39 -07:00
Greg Farnum
63ecb925dc msg: fix uses of MClientReply destructor to use put() 2010-03-31 14:59:39 -07:00
Greg Farnum
c31d5b0f29 msg: MClientReply has a private destructor 2010-03-31 14:59:38 -07:00
Greg Farnum
62d676bb69 msg: fix uses of MClientRequestForward destructor to use put() 2010-03-31 14:59:38 -07:00
Greg Farnum
698315cfc7 msg: MClientRequestForward has a private destructor 2010-03-31 14:59:38 -07:00
Greg Farnum
5ab622fb56 msg: fix uses of MClientRequest destructor to use put() 2010-03-31 14:59:38 -07:00
Greg Farnum
1d8680423a msg: MClientRequest has a private destructor 2010-03-31 14:59:38 -07:00
Greg Farnum
9f1dfedae0 msg: fix uses of MClientReconnect destructor to use put() 2010-03-31 14:59:38 -07:00
Greg Farnum
a9f616b50e msg: MClientReconnect has a private destructor 2010-03-31 14:59:38 -07:00
Greg Farnum
72dbbfb8b3 msg: fix uses of MClientSession destructor to use put() 2010-03-31 14:59:38 -07:00
Greg Farnum
609a4accb5 msg: MClientSession has a private destructor 2010-03-31 14:59:38 -07:00
Greg Farnum
f2b8309ceb msg: MMonGlobalID has a private destructor 2010-03-31 14:59:38 -07:00
Greg Farnum
565ac002f2 msg: fix uses of MMonSubscribeAck destructor to use put() 2010-03-31 14:59:38 -07:00
Greg Farnum
568ad65fcb msg: MMonSubscribeAck has a private destructor 2010-03-31 14:59:38 -07:00
Greg Farnum
7f5202b172 msg: fix uses of MMonSubscribe destructor to use put() 2010-03-31 14:59:38 -07:00
Greg Farnum
9abc2f2d12 msg: MMonSubscribe has a private destructor 2010-03-31 14:59:38 -07:00
Greg Farnum
8b7dae0657 msg: fix uses of MAuthReply destructor to use put() 2010-03-31 14:59:38 -07:00