]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Yehuda Sadeh [Thu, 29 Jan 2009 23:01:25 +0000 (15:01 -0800)]
ceph.sh: can specify remote modules
Yehuda Sadeh [Thu, 29 Jan 2009 21:55:33 +0000 (13:55 -0800)]
ceph.sh: startup script that uses conf file
Sage Weil [Thu, 29 Jan 2009 18:16:12 +0000 (10:16 -0800)]
osd: rev internal osd protocol
Sage Weil [Wed, 28 Jan 2009 21:06:05 +0000 (13:06 -0800)]
osd: push wrlocks into object_info_t
Sage Weil [Wed, 28 Jan 2009 19:10:21 +0000 (11:10 -0800)]
osd: remove inc_lock
Sage Weil [Wed, 28 Jan 2009 19:08:14 +0000 (11:08 -0800)]
osd: combine all internal object state into single '_' object_info_t xattr
Sage Weil [Tue, 27 Jan 2009 19:20:37 +0000 (11:20 -0800)]
osd: replace version attr with oi (object_info_t) (disk format change)
Includes last reqid, mtime. Makes backlog log entries include
a real reqid, which makes the client_reqs IndexedLog map meaningful.
Otherwise, the first backlog item we 'unindex' means the remaining
ops with reqid unknown0.0:0 aren't in the map.
This revs the osd ondisk format.
Yehuda Sadeh [Thu, 29 Jan 2009 00:35:54 +0000 (16:35 -0800)]
Merge branch 'unstable' of ssh://ceph.newdream.net/git/ceph into unstable
Yehuda Sadeh [Thu, 29 Jan 2009 00:35:39 +0000 (16:35 -0800)]
cconf: able to specify multiple sections
Sage Weil [Thu, 29 Jan 2009 00:11:07 +0000 (16:11 -0800)]
dstart: --ramjournal option
Sage Weil [Thu, 29 Jan 2009 00:10:57 +0000 (16:10 -0800)]
scripts: osd latency check script
Sage Weil [Wed, 28 Jan 2009 23:52:58 +0000 (15:52 -0800)]
kclient: start writeback without blocking
We just want to make sure writeback starts; we don't need/want
to wait for it to complete in the writeback thread.
Yehuda Sadeh [Wed, 28 Jan 2009 18:51:18 +0000 (10:51 -0800)]
cconf: set default conf filename
Yehuda Sadeh [Wed, 28 Jan 2009 18:49:37 +0000 (10:49 -0800)]
cconf: added utility to read configuration
Sage Weil [Wed, 28 Jan 2009 17:25:37 +0000 (09:25 -0800)]
mds: fix open file rejounal in try_to_expire
We were invalidating the iterator.
Sage Weil [Wed, 28 Jan 2009 17:32:16 +0000 (09:32 -0800)]
kclient: fix nocrc behavior
Only disable data crc. Don't check crc if either we or the peer
didn't calculate it.
Sage Weil [Wed, 28 Jan 2009 00:29:10 +0000 (16:29 -0800)]
mds: shorten mds beacon grace to 15 seconds
Sage Weil [Wed, 28 Jan 2009 00:18:06 +0000 (16:18 -0800)]
todo
Sage Weil [Tue, 27 Jan 2009 23:20:49 +0000 (15:20 -0800)]
vstart: fix btrfs test
Sage Weil [Tue, 27 Jan 2009 22:56:25 +0000 (14:56 -0800)]
msgr: make nocrc only apply to data payload; and set flag if no crc
Sage Weil [Tue, 27 Jan 2009 22:42:31 +0000 (14:42 -0800)]
todo
Sage Weil [Tue, 27 Jan 2009 22:42:27 +0000 (14:42 -0800)]
mon: clean mon monmap cons
Sage Weil [Tue, 27 Jan 2009 22:42:17 +0000 (14:42 -0800)]
dstart: no preload gprof helper
Sage Weil [Tue, 27 Jan 2009 22:15:00 +0000 (14:15 -0800)]
config: avoid wonky times in g_config
Sage Weil [Tue, 27 Jan 2009 22:19:46 +0000 (14:19 -0800)]
mon: disable pgmap_dumps
This aren't trimmed!
Sage Weil [Tue, 27 Jan 2009 21:51:51 +0000 (13:51 -0800)]
mds: optimize EMetaBlob::fullbit, remotebit, nullbit encoding
Encode in constructor to avoid intermediate representation during
journaling.
Sage Weil [Tue, 27 Jan 2009 21:23:57 +0000 (13:23 -0800)]
buffer: optimize append()
Avoid repeatedly dereferencing list tail.
Sage Weil [Tue, 27 Jan 2009 18:46:18 +0000 (10:46 -0800)]
kclient: fix osd timeout merge error
Sage Weil [Tue, 27 Jan 2009 18:42:55 +0000 (10:42 -0800)]
dstart: less debug output
Sage Weil [Tue, 27 Jan 2009 18:27:39 +0000 (10:27 -0800)]
osd: throttle sub_ops too
Sage Weil [Tue, 27 Jan 2009 17:48:37 +0000 (09:48 -0800)]
osd: adjust pending_ops when requeuing opq
Sage Weil [Tue, 27 Jan 2009 00:30:11 +0000 (16:30 -0800)]
mds: show which segment trimming is blocked on
Sage Weil [Tue, 27 Jan 2009 18:40:11 +0000 (10:40 -0800)]
osd: locally requeue on repeer if still primary
kclient osd_client and Objecter need only resend when primary
changes.
Sage Weil [Mon, 26 Jan 2009 20:13:26 +0000 (12:13 -0800)]
kclient: fix RETRY_SESSION seq value
Should be existing session's seq, not new sessions. Error causes
SimpleMessenger to throw an assertion
msg/SimpleMessenger.cc:1283: FAILED assert(reply.connect_seq > connect_seq)
Sage Weil [Tue, 27 Jan 2009 04:57:06 +0000 (20:57 -0800)]
kclient: only send one ping per laggy osd
Sage Weil [Tue, 27 Jan 2009 04:21:17 +0000 (20:21 -0800)]
mds: include xattr updates in cap messages; accept xattr cap updates
Sage Weil [Tue, 27 Jan 2009 03:56:40 +0000 (19:56 -0800)]
mds: adjust some debug levels
Sage Weil [Sat, 24 Jan 2009 05:23:38 +0000 (21:23 -0800)]
todo
Sage Weil [Tue, 27 Jan 2009 00:21:36 +0000 (16:21 -0800)]
osd: drop osd_lock while pausing/requeueing opq
An in-progress op may need to take osd_lock.
Sage Weil [Tue, 27 Jan 2009 00:05:17 +0000 (16:05 -0800)]
osd: fix merge_old_entry assertion
Object may not be missing if it was later deleted.
Sage Weil [Mon, 26 Jan 2009 23:25:56 +0000 (15:25 -0800)]
osd: fix up_thru_pending conditional
up_thru_pending only meaningful if non-zero.
Sage Weil [Mon, 26 Jan 2009 23:24:04 +0000 (15:24 -0800)]
osd: requeue instead of draining op_queue on map update
Also clean up waiter helpers.
Sage Weil [Mon, 26 Jan 2009 21:50:53 +0000 (13:50 -0800)]
osd: keep peer_info.last_{update,complete} up to date in case we get later stray
We need to be able to call peer() again after going active and get
meaningful results.
Sage Weil [Mon, 26 Jan 2009 20:42:36 +0000 (12:42 -0800)]
osd: bit more verbose in oldest_update calculation
Sage Weil [Mon, 26 Jan 2009 20:42:14 +0000 (12:42 -0800)]
osd: adjust generate_backlog assertions
We should never generate a backlog while active.
Sage Weil [Mon, 26 Jan 2009 20:06:12 +0000 (12:06 -0800)]
mds: clean up EUpdate output
Sage Weil [Mon, 26 Jan 2009 20:06:03 +0000 (12:06 -0800)]
mds: do not trim log during recovery
Sage Weil [Mon, 26 Jan 2009 19:51:43 +0000 (11:51 -0800)]
osd: only check replicas in recover_replicas
Sage Weil [Mon, 26 Jan 2009 19:22:25 +0000 (11:22 -0800)]
osd: clean up activate, peer recovery debug output
Yehuda Sadeh [Mon, 26 Jan 2009 20:47:13 +0000 (12:47 -0800)]
messenger: added a no-crc option
Sage Weil [Mon, 26 Jan 2009 19:23:25 +0000 (11:23 -0800)]
osd: fix pg log trimming
Log entries rarely ever fall on block boundaries. Behave
accordingly.
Also, decide whether to trim on primary only, at a high level in
op_modify.
Sage Weil [Mon, 26 Jan 2009 19:06:42 +0000 (11:06 -0800)]
paxos: tolerate commits for older states
We may have races if paxos recovery restarts.
Sage Weil [Mon, 26 Jan 2009 18:14:07 +0000 (10:14 -0800)]
osd: fix repop cleanup in on_change, _shutdown
Sage Weil [Mon, 26 Jan 2009 18:13:44 +0000 (10:13 -0800)]
ceph: warn when we get message with wrong fsid
Sage Weil [Sat, 24 Jan 2009 00:47:18 +0000 (16:47 -0800)]
todos
Sage Weil [Fri, 23 Jan 2009 23:21:04 +0000 (15:21 -0800)]
paxos: ignore LAST message if pn is old
And old PN means that it's from a prior COLLECT attempt.
Sage Weil [Sat, 24 Jan 2009 00:39:46 +0000 (16:39 -0800)]
mds: increase ino prealloc limit to 1000
Ideally this should self-tune, somehow...
Sage Weil [Sat, 24 Jan 2009 00:39:26 +0000 (16:39 -0800)]
osd: remove RepGather::put() debug print
Sage Weil [Sat, 24 Jan 2009 00:39:03 +0000 (16:39 -0800)]
crush: remote list builder printf
Sage Weil [Fri, 23 Jan 2009 20:53:18 +0000 (12:53 -0800)]
dstart: mount btrfs with new options
Sage Weil [Sat, 24 Jan 2009 00:43:09 +0000 (16:43 -0800)]
kclient: statfs_request_tree alloc context is NOFS, not ATOMIC
Yehuda Sadeh [Fri, 23 Jan 2009 23:37:12 +0000 (15:37 -0800)]
config: added include, misc stuff
Sage Weil [Fri, 23 Jan 2009 22:50:13 +0000 (14:50 -0800)]
kclient: do sync writepages if FILE_WRBUFFER is being revoked
This doesn't capture the case where we already started writeout
and _then_ the MDS tries to revoke, but that's probably not worth
the complexity.
Sage Weil [Fri, 23 Jan 2009 22:40:26 +0000 (14:40 -0800)]
mds: fix max_size update
Force wrlock if client is issued WR cap; whether they are flushing
dirty data is irrelevant to whether we can safely force a wrlock.
Sage Weil [Fri, 23 Jan 2009 22:18:16 +0000 (14:18 -0800)]
kclient: initiate a sync when doing writepages for O_SYNC writers
Include 'startsync' osd op in write if there are any O_SYNC writers
pending on the inode.
We should eventually do the same if our WRBUFFER cap is being
revoked.
Sage Weil [Fri, 23 Jan 2009 21:43:17 +0000 (13:43 -0800)]
mds: set straydn.first properly for rename overwrite
Also reorder unlink_local a bit to match rename_prepare pattern.
Sage Weil [Fri, 23 Jan 2009 21:23:22 +0000 (13:23 -0800)]
mds: only update cap wanted if seq matches
Sage Weil [Fri, 23 Jan 2009 20:52:19 +0000 (12:52 -0800)]
Sage Weil [Fri, 23 Jan 2009 20:43:00 +0000 (12:43 -0800)]
mds: take straydn.first form inode.first during unlink
Sage Weil [Fri, 23 Jan 2009 20:16:02 +0000 (12:16 -0800)]
kclient: resend osd ops when pg membership changes
Previously we resent only when the primary OSD changed. See
f49f78d03ba9786f4e8423c530f0e016a8d814fa .
Yehuda Sadeh [Fri, 23 Jan 2009 20:40:16 +0000 (12:40 -0800)]
config: read configuration file before parsing command line
also does not write configuration unless specified
Yehuda Sadeh [Fri, 23 Jan 2009 20:38:29 +0000 (12:38 -0800)]
mount.ceph: fix segfault when port is not specified
Yehuda Sadeh [Fri, 23 Jan 2009 00:42:16 +0000 (16:42 -0800)]
confutils: complete config.cc configuration and adjustments
Yehuda Sadeh [Thu, 22 Jan 2009 23:44:31 +0000 (15:44 -0800)]
confutils: cleanup, bug fixes
Yehuda Sadeh [Thu, 22 Jan 2009 21:41:56 +0000 (13:41 -0800)]
confutils: can flush config, preliminary config.cc integration
Yehuda Sadeh [Thu, 22 Jan 2009 20:09:06 +0000 (12:09 -0800)]
confutils: some cleanup
Yehuda Sadeh [Thu, 22 Jan 2009 19:20:37 +0000 (11:20 -0800)]
confutils: encoding/decoding using templates
Yehuda Sadeh [Thu, 22 Jan 2009 01:09:04 +0000 (17:09 -0800)]
confutils: going forward
Yehuda Sadeh [Wed, 21 Jan 2009 22:23:15 +0000 (14:23 -0800)]
confutils: adding missing file
Yehuda Sadeh [Wed, 21 Jan 2009 22:02:03 +0000 (14:02 -0800)]
confutils: some more
Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
Yehuda Sadeh [Wed, 21 Jan 2009 21:54:51 +0000 (13:54 -0800)]
confutils: some more changes
Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
Yehuda Sadeh [Wed, 21 Jan 2009 00:41:40 +0000 (16:41 -0800)]
config: some more changes
Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
Yehuda Sadeh [Fri, 9 Jan 2009 05:46:02 +0000 (21:46 -0800)]
confutils: still not usable
Sage Weil [Thu, 22 Jan 2009 23:48:18 +0000 (15:48 -0800)]
config: remove some old cruft
Sage Weil [Fri, 23 Jan 2009 00:14:52 +0000 (16:14 -0800)]
osd: reset peering, in-flight repops on every pg change
Instead of complicated (and flawed) logic for letting in-progress rep ops
complete while the PG changes (but primary remains the same), reset the
pg state entirely. Apply any ops we have in hand, but drop everything
else, including PUSH/PULL ops.
This vastly simplifies the logic in the OSD and makes it easy to reason
about things.
Fix clients (Objecter, osd_client) to resubmit ops when PG membership
changes (not just on primary change).
Sage Weil [Thu, 22 Jan 2009 19:22:04 +0000 (11:22 -0800)]
mds: eval_cap_gather in handle_client_caps even if no update
We may have recalled caps and journaled an update for some but
not all locks. We should check for cap gathers even if something
(else) is journaled.
Sage Weil [Thu, 22 Jan 2009 19:04:54 +0000 (11:04 -0800)]
script: find high latency requests in mds log
Sage Weil [Thu, 22 Jan 2009 00:44:21 +0000 (16:44 -0800)]
mds: fix xattr projection
Sage Weil [Thu, 22 Jan 2009 00:23:00 +0000 (16:23 -0800)]
mds: drop rdlocks _after_ journaling; use new journal_and_reply helper
If we drop locks earlier we may run contexts that journal _other_
items out of order. Badness.
Sage Weil [Wed, 21 Jan 2009 23:34:47 +0000 (15:34 -0800)]
mds: make cdentry debug print nicer
Sage Weil [Wed, 21 Jan 2009 23:34:31 +0000 (15:34 -0800)]
mds: unique (per mds) cap_id
A new cap_id is issued each time an MDS creates a new capability,
and is checked when releasing a capability to ensure it is the same
capability instance. This specifically avoids a race like:
1- mds issues cap
2- mds sends cap message
3- mds and client time out cap
4- client receives cap message, sends release
5- mds reissues cap on same inode
6- mds receives release, doesn't realize the release is for the
old capability
Checking seq numbers isn't enough because the MDS may reissue the
cap any number of times between 3 and 6.
Sage Weil [Wed, 21 Jan 2009 22:52:38 +0000 (14:52 -0800)]
mds: set straydn.first correctly during unlink
We need to do this in _unlink_local, not get_or_create_stray, just
as we set dn->first elsewhere in Server.cc.
Sage Weil [Wed, 21 Jan 2009 19:47:04 +0000 (11:47 -0800)]
mds: make straydn.first match the inode
Sage Weil [Wed, 21 Jan 2009 18:42:57 +0000 (10:42 -0800)]
uclient: flush/release buffered data on umount
Sage Weil [Wed, 21 Jan 2009 18:38:06 +0000 (10:38 -0800)]
uclient: update caps code to match kclient logic
Sage Weil [Wed, 21 Jan 2009 18:37:26 +0000 (10:37 -0800)]
kclient: some caps cleanup
Sage Weil [Wed, 21 Jan 2009 00:35:43 +0000 (16:35 -0800)]
kclient: improve snap locking scheme
Because snap_rwsem is taken for read on every write, we want to
minimize contention. We:
- allow cap removal to occur without snap_rwsem (read or write)
- allow fill_trace and add_cap with snap_rwsem (read)
- require write really only for update_snap_trace and on snap
updates from the mds.
Dropping realm references without snap_rwsem gets a bit tricky. We
keep an empty (nref==0) realm list and purge it periodically to
avoid contention in the general case.
Sage Weil [Tue, 20 Jan 2009 19:52:50 +0000 (11:52 -0800)]
v0.6
Sage Weil [Tue, 20 Jan 2009 19:19:42 +0000 (11:19 -0800)]
Merge branch 'unstable'
Sage Weil [Tue, 20 Jan 2009 18:34:00 +0000 (10:34 -0800)]
kclient: rename lookup_mds_session get_mds_session
Since it bumps the ref count.