]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
15 years agov0.12 v0.12
Sage Weil [Wed, 5 Aug 2009 21:12:00 +0000 (14:12 -0700)]
v0.12

15 years agoMakefile: add missing header to noinst_HEADERS
Sage Weil [Wed, 5 Aug 2009 21:11:17 +0000 (14:11 -0700)]
Makefile: add missing header to noinst_HEADERS

15 years agoMakefile: remove java hadoop _SOURCES dep
Sage Weil [Wed, 5 Aug 2009 21:09:59 +0000 (14:09 -0700)]
Makefile: remove java hadoop _SOURCES dep

15 years agoosdmap: kill unused/useless get_num_osds()
Sage Weil [Wed, 5 Aug 2009 18:41:45 +0000 (11:41 -0700)]
osdmap: kill unused/useless get_num_osds()

15 years agomds: show journal entry lengths in debug output
Sage Weil [Wed, 5 Aug 2009 18:40:05 +0000 (11:40 -0700)]
mds: show journal entry lengths in debug output

15 years agokclient: cleanup unused label
Sage Weil [Wed, 5 Aug 2009 18:38:42 +0000 (11:38 -0700)]
kclient: cleanup unused label

15 years agokclient: revamp fsync
Sage Weil [Wed, 5 Aug 2009 18:38:32 +0000 (11:38 -0700)]
kclient: revamp fsync

Be smarter about when we write back caps on fsync, and when we
wait.  Also, wait only for those caps to write back, not for all
caps to be clean, avoiding starvation.

16 years agomds: include mds # in table names
Sage Weil [Tue, 4 Aug 2009 23:41:36 +0000 (16:41 -0700)]
mds: include mds # in table names

Silly us, we were using the same object names for multiple mds's.
That doesn't work so well.

Renamed like so:

mdstable_snaptable   -> mds_snaptable
mdstable_inotable    -> mds0_inotable
sessionmap           -> mds0_sessionmap
mdstable_anchortable -> mds_anchortable

16 years agomds: wait for rejoin_gather_finish to complete before finishing
Sage Weil [Tue, 4 Aug 2009 23:08:32 +0000 (16:08 -0700)]
mds: wait for rejoin_gather_finish to complete before finishing

To do that we add ourselves to the rejoin_ack_gather.  Otherwise
we end up in up:active before we've even finished our
parallel_fetch or finished up our caps!

16 years agomds: set primary lock state to LOCK from strong replica when appropriate
Sage Weil [Tue, 4 Aug 2009 23:07:24 +0000 (16:07 -0700)]
mds: set primary lock state to LOCK from strong replica when appropriate

This is needed only because we identify_files_to_recover() before
sending the rejoin acks, and that may twiddle the lock state, so
we need to be in a compatible state.

16 years agoMakefile: reorg
Sage Weil [Tue, 4 Aug 2009 21:16:03 +0000 (14:16 -0700)]
Makefile: reorg

16 years agomds: fix lock state assert on sync->excl
Sage Weil [Tue, 4 Aug 2009 21:10:50 +0000 (14:10 -0700)]
mds: fix lock state assert on sync->excl

16 years agomds: set up root inode properly on replay
Sage Weil [Tue, 4 Aug 2009 21:10:33 +0000 (14:10 -0700)]
mds: set up root inode properly on replay

16 years agomds: fix reversed conditional on simplelock ->excl transition
Sage Weil [Tue, 4 Aug 2009 20:19:41 +0000 (13:19 -0700)]
mds: fix reversed conditional on simplelock ->excl transition

16 years agoMakefile: no fakefuse
Sage Weil [Tue, 4 Aug 2009 20:09:32 +0000 (13:09 -0700)]
Makefile: no fakefuse

16 years agopsim: calc stddev
Sage Weil [Tue, 4 Aug 2009 19:53:22 +0000 (12:53 -0700)]
psim: calc stddev

16 years agoosdmap: only use domains if ndom > 1
Sage Weil [Tue, 4 Aug 2009 19:52:43 +0000 (12:52 -0700)]
osdmap: only use domains if ndom > 1

16 years agocrush: fix grammar so we can recompile what we decompiled
Sage Weil [Tue, 4 Aug 2009 17:22:39 +0000 (10:22 -0700)]
crush: fix grammar so we can recompile what we decompiled

16 years agomds: start resolve with root as UNKNOWN (if it's not ours)
Sage Weil [Tue, 4 Aug 2009 04:34:15 +0000 (21:34 -0700)]
mds: start resolve with root as UNKNOWN (if it's not ours)

Anything that's not ours should be unknown, including the root dir frag,
which normally starts out as mds0.

If we leave it as 0, then when mds0 claims a subset of /, its bounds are
left as 0 as well instead of being set to unknown.  Which leads to
incorrect resolve stage results.

16 years agomds: fix typo (C_Locker_Eval crash)
Sage Weil [Tue, 4 Aug 2009 03:00:08 +0000 (20:00 -0700)]
mds: fix typo (C_Locker_Eval crash)

16 years agokclient: fix locking snafu in ESTALE handling
Sage Weil [Tue, 4 Aug 2009 00:29:39 +0000 (17:29 -0700)]
kclient: fix locking snafu in ESTALE handling

16 years agokclient: choose mds based on dentry parent, if needed
Sage Weil [Tue, 4 Aug 2009 00:28:03 +0000 (17:28 -0700)]
kclient: choose mds based on dentry parent, if needed

16 years agomds: adjust mds state asserts to include clientreplay
Sage Weil [Tue, 4 Aug 2009 00:19:49 +0000 (17:19 -0700)]
mds: adjust mds state asserts to include clientreplay

16 years agomds: twiddle missing locks on export
Sage Weil [Mon, 3 Aug 2009 23:46:20 +0000 (16:46 -0700)]
mds: twiddle missing locks on export

16 years agomds: open_root only after up:active
Sage Weil [Mon, 3 Aug 2009 21:25:35 +0000 (14:25 -0700)]
mds: open_root only after up:active

Otherwise our lock states get totally out of whack.

16 years agomds: issue caps on non-auth inodes
Sage Weil [Mon, 3 Aug 2009 21:25:16 +0000 (14:25 -0700)]
mds: issue caps on non-auth inodes

Not sure how that && is_auth() snuck in there.

16 years agokclient: use caps, fragtree only to choose mds (not hierarchy)
Sage Weil [Mon, 3 Aug 2009 18:39:27 +0000 (11:39 -0700)]
kclient: use caps, fragtree only to choose mds (not hierarchy)

Since we require caps for all inodes in our cache, no need to consider
parents when identifying where to sent a request.  Just look at fragtree
(for fragmented dirs) or caps.

16 years agokclient: remove stray ; in dout macro
Sage Weil [Mon, 3 Aug 2009 19:10:29 +0000 (12:10 -0700)]
kclient: remove stray ; in dout macro

16 years agoHadoop: Replaced some unclean file references.
Greg Farnum [Tue, 4 Aug 2009 21:34:17 +0000 (14:34 -0700)]
Hadoop: Replaced some unclean file references.
Hey cool, it can do a map-reduce now!

16 years agouClient: chmod now protects unchangeable bits.
Greg Farnum [Tue, 4 Aug 2009 21:11:59 +0000 (14:11 -0700)]
uClient: chmod now protects unchangeable bits.

16 years agouClient: _rename doesn't remove nodes from cache.
Greg Farnum [Tue, 4 Aug 2009 19:43:34 +0000 (12:43 -0700)]
uClient: _rename doesn't remove nodes from cache.
Sage says this is unnecessary.

16 years agoHadoop: Added a setPermissions method.
Greg Farnum [Tue, 4 Aug 2009 07:54:21 +0000 (00:54 -0700)]
Hadoop: Added a setPermissions method.

16 years agoHadoop: CephFSInterface cleans up memory better on errors.
Greg Farnum [Tue, 4 Aug 2009 07:18:49 +0000 (00:18 -0700)]
Hadoop: CephFSInterface cleans up memory better on errors.

16 years agoHadoop: Is much more careful with filepath sanitizing in BOTH directions.
Greg Farnum [Tue, 4 Aug 2009 01:38:05 +0000 (18:38 -0700)]
Hadoop: Is much more careful with filepath sanitizing in BOTH directions.
Also has a minor interface change allowing it to build in Hadoop .20

16 years agouClient: Unmounting now waits on mds_requests.
Greg Farnum [Tue, 4 Aug 2009 00:36:35 +0000 (17:36 -0700)]
uClient: Unmounting now waits on mds_requests.

16 years agoHadoop: All configuration is now done through Hadoop's config mechanism.
Greg Farnum [Fri, 31 Jul 2009 21:17:29 +0000 (14:17 -0700)]
Hadoop: All configuration is now done through Hadoop's config mechanism.

This includes debug on CephFileSystem/n, passing it to ceph's Client,
and the monitor address.

16 years agoHadoop: Now does a proper stat.
Greg Farnum [Fri, 31 Jul 2009 20:03:31 +0000 (13:03 -0700)]
Hadoop: Now does a proper stat.

16 years agokclient: less noisy about mds session timeouts
Sage Weil [Mon, 3 Aug 2009 16:37:50 +0000 (09:37 -0700)]
kclient: less noisy about mds session timeouts

In particular, we don't want to print this multiple times.  Use
state to note when session appears to be hung, and pr_info on
transitions.

16 years agomsgr: avoid closing fd twice
Sage Weil [Fri, 31 Jul 2009 22:45:18 +0000 (15:45 -0700)]
msgr: avoid closing fd twice

Set fd to -1 after so we don't close it again later.  Otherwise
we get EBADF in random other places and are unhappy.

16 years agotodo
Sage Weil [Fri, 31 Jul 2009 23:08:25 +0000 (16:08 -0700)]
todo

16 years agokclient: debug peer_reset thing
Sage Weil [Thu, 30 Jul 2009 22:39:41 +0000 (15:39 -0700)]
kclient: debug peer_reset thing

I saw ceph_peer_reset with a bad entity_name.. wtf.

16 years agokclient: maintain per-cap-bit tid map to fix pipelined cap updates
Sage Weil [Thu, 30 Jul 2009 22:08:44 +0000 (15:08 -0700)]
kclient: maintain per-cap-bit tid map to fix pipelined cap updates

We want to allow pipelined cap updates, like

 client->mds  writeback Fw 1
dirty FwAx
 client->mds  writeback FwAx 2
dirty Ax
 client->mds  writeback Ax 3
 mds->client  ack 1
 mds->client  ack 2
 mds->client  ack 3

We need to make sure that the Fw bit is only cleaned after ack 2,
and Ax after ack 3.  A single tid for the inode isn't sufficient,
since that would e.g. ignore ack 2... we need a tid per cap bit so
we can pipeline writeback of different caps.

Note that we can't simply write back dirty | flushing caps every
time, since the write may also be releasing the cap.  And it would
gum up the MDS locking.

Move the last_tid to the inode, and only pay attention to 16 bits
per cap bit.. that's 17*2 bytes, vs the old 16.  Could be worse.
An 8 bit tid is probably also sufficient (that's 256 pipelined
writes) if we're concerned about inode size down the road.

16 years agokclient: maintain list of flushing snaps; reflush after reconnect
Sage Weil [Wed, 29 Jul 2009 22:52:41 +0000 (15:52 -0700)]
kclient: maintain list of flushing snaps; reflush after reconnect

16 years agokclient: fix queue_cap_snap refs, calls in handle_snap
Sage Weil [Wed, 29 Jul 2009 22:51:54 +0000 (15:51 -0700)]
kclient: fix queue_cap_snap refs, calls in handle_snap

Call on correct ci.  Skip past dropping inodes without dropping
our spinlock.  Hold ref on prior inode until we traverse to the
next one.  (We can't iput while holding our spinlock.)

16 years agoHadoop: Moved ceph debug level set into Java code; disabled CephIOStream debugs.
Greg Farnum [Thu, 30 Jul 2009 21:39:02 +0000 (14:39 -0700)]
Hadoop: Moved ceph debug level set into Java code; disabled CephIOStream debugs.

16 years agouClient: Whoops! Made Inode get/put dout at a lower importance.
Greg Farnum [Thu, 30 Jul 2009 21:37:21 +0000 (14:37 -0700)]
uClient: Whoops! Made Inode get/put dout at a lower importance.

16 years agoHadoop: Much cleanup of methods.
Greg Farnum [Thu, 30 Jul 2009 20:20:00 +0000 (13:20 -0700)]
Hadoop: Much cleanup of methods.

Many no-longer-required methods are now private and renamed; overrides and deprecated methods are clearly marked and mostly justified.

16 years agoHadoop: This method no longer exists in the FileSystem API.
Greg Farnum [Thu, 30 Jul 2009 19:36:09 +0000 (12:36 -0700)]
Hadoop: This method no longer exists in the FileSystem API.

16 years agoHadoop: No good reason to overwrite these copy/move functions that I can see
Greg Farnum [Thu, 30 Jul 2009 19:35:27 +0000 (12:35 -0700)]
Hadoop: No good reason to overwrite these copy/move functions that I can see

16 years agoHadoop: Since Client is behaving, put back in the close.
Greg Farnum [Thu, 30 Jul 2009 19:33:25 +0000 (12:33 -0700)]
Hadoop: Since Client is behaving, put back in the close.

16 years agouclient: Fixes refcounting bug when you chdir to cwd.
Greg Farnum [Thu, 30 Jul 2009 19:18:15 +0000 (12:18 -0700)]
uclient: Fixes refcounting bug when you chdir to cwd.

16 years agoHadoop: More work with deprecated and inappropriately-overridden functions.
Greg Farnum [Thu, 30 Jul 2009 03:11:15 +0000 (20:11 -0700)]
Hadoop: More work with deprecated and inappropriately-overridden functions.

16 years agoHadoop: Removed deprecated functions
Greg Farnum [Thu, 30 Jul 2009 02:29:36 +0000 (19:29 -0700)]
Hadoop: Removed deprecated functions

16 years agoHadoop: moveFromLocalFile uses copyFromLocalFile; is more robust.
Greg Farnum [Thu, 30 Jul 2009 02:27:02 +0000 (19:27 -0700)]
Hadoop: moveFromLocalFile uses copyFromLocalFile; is more robust.

16 years agoHadoop: More debugging output changes.
Greg Farnum [Thu, 30 Jul 2009 00:01:54 +0000 (17:01 -0700)]
Hadoop: More debugging output changes.

16 years agoHadoop: getFileStatus behaves better with folders.
Greg Farnum [Wed, 29 Jul 2009 21:47:51 +0000 (14:47 -0700)]
Hadoop: getFileStatus behaves better with folders.

16 years agouclient: removed cout debug statement
Greg Farnum [Wed, 29 Jul 2009 21:23:21 +0000 (14:23 -0700)]
uclient: removed cout debug statement

16 years agokclient: don't croak on mds request will NULL r_request
Sage Weil [Thu, 30 Jul 2009 20:42:45 +0000 (13:42 -0700)]
kclient: don't croak on mds request will NULL r_request

16 years agomds: process session msgs during clientreplay
Sage Weil [Thu, 30 Jul 2009 20:37:52 +0000 (13:37 -0700)]
mds: process session msgs during clientreplay

16 years agomds: no need to take mds_lock in truncate callback
Sage Weil [Thu, 30 Jul 2009 20:00:49 +0000 (13:00 -0700)]
mds: no need to take mds_lock in truncate callback

It's already held when the Objecter message handler is called.

16 years agomds: defer caps msgs until clientreplay or active
Sage Weil [Thu, 30 Jul 2009 19:58:04 +0000 (12:58 -0700)]
mds: defer caps msgs until clientreplay or active

16 years agoosd: adjust debug output
Sage Weil [Wed, 29 Jul 2009 20:50:54 +0000 (13:50 -0700)]
osd: adjust debug output

16 years agomds: tolerate a missing directory object
Sage Weil [Wed, 29 Jul 2009 17:39:58 +0000 (10:39 -0700)]
mds: tolerate a missing directory object

Including error in log, mark dir complete.  Some metadata may
be missing!

16 years agokclient: release unused caps, but keep some reserve
Sage Weil [Wed, 29 Jul 2009 23:11:04 +0000 (16:11 -0700)]
kclient: release unused caps, but keep some reserve

Release unused caps.  Keep some reserve so we can do a readdir
(which reserves lots of caps) quickly, without reallocating a
zillion new caps.

16 years agokclient: nofail mode for osd writes
Sage Weil [Wed, 29 Jul 2009 20:28:23 +0000 (13:28 -0700)]
kclient: nofail mode for osd writes

If nofail is specified, allocate request from mempool, and do not
return error on message send failure.  Instead, mark the request,
and periodically retry.

This isn't perfect: we can still starve indefinitely trying to
send the write, but it'll do until we have a better way to reserve
resources for writeback messages.

16 years agokclient: use mempool for osd req in writeback paths
Sage Weil [Tue, 28 Jul 2009 20:01:49 +0000 (13:01 -0700)]
kclient: use mempool for osd req in writeback paths

Only in writeback path.  For reads and sync writes, avoid the
mempool.

16 years agoHadoop: Removed unnecessary reload of hadoopcephfs.
Greg Farnum [Wed, 29 Jul 2009 01:26:59 +0000 (18:26 -0700)]
Hadoop: Removed unnecessary reload of hadoopcephfs.

16 years agoHadoop: More debugging statements, converted to use a method we can flag off.
Greg Farnum [Wed, 29 Jul 2009 01:24:16 +0000 (18:24 -0700)]
Hadoop: More debugging statements, converted to use a method we can flag off.

16 years agolibceph: add a check in ceph_deinitialize to prevent badness on multiple calls.
Greg Farnum [Wed, 29 Jul 2009 01:22:00 +0000 (18:22 -0700)]
libceph: add a check in ceph_deinitialize to prevent badness on multiple calls.

16 years agouclient: getcwd fixes
Greg Farnum [Tue, 28 Jul 2009 18:45:15 +0000 (11:45 -0700)]
uclient: getcwd fixes

16 years agokclient: bug on back kmap
Sage Weil [Wed, 29 Jul 2009 00:02:22 +0000 (17:02 -0700)]
kclient: bug on back kmap

16 years agoosd: fail gracefully when problems reading /proc/loadavg
Sage Weil [Tue, 28 Jul 2009 21:44:48 +0000 (14:44 -0700)]
osd: fail gracefully when problems reading /proc/loadavg

16 years agoauth: compat with old struct
Sage Weil [Tue, 28 Jul 2009 18:31:43 +0000 (11:31 -0700)]
auth: compat with old struct

16 years agoinitscript: skip if auto start = no/false/0 and nothing or type specified
Sage Weil [Tue, 28 Jul 2009 18:18:17 +0000 (11:18 -0700)]
initscript: skip if auto start = no/false/0 and nothing or type specified

16 years agokclient: avoid overflow in mds reconnect msg size calc
Sage Weil [Tue, 28 Jul 2009 18:12:48 +0000 (11:12 -0700)]
kclient: avoid overflow in mds reconnect msg size calc

16 years agomon: allow osd down->out interval to be 0 (i.e., manual)
Sage Weil [Mon, 27 Jul 2009 23:14:09 +0000 (16:14 -0700)]
mon: allow osd down->out interval to be 0 (i.e., manual)

16 years agoosd: remove bad osdmap access
Sage Weil [Mon, 27 Jul 2009 23:13:34 +0000 (16:13 -0700)]
osd: remove bad osdmap access

osd may not exist

16 years agoauth: add ClientTicket
Sage Weil [Tue, 28 Jul 2009 18:05:14 +0000 (11:05 -0700)]
auth: add ClientTicket

16 years agouclient: use lookup parent in getcwd()
Sage Weil [Tue, 28 Jul 2009 17:37:59 +0000 (10:37 -0700)]
uclient: use lookup parent in getcwd()

16 years agomds: add lookup parent op
Sage Weil [Tue, 28 Jul 2009 17:37:51 +0000 (10:37 -0700)]
mds: add lookup parent op

16 years agoHadoop: Many silly debug statements.
Greg Farnum [Tue, 28 Jul 2009 16:27:53 +0000 (09:27 -0700)]
Hadoop: Many silly debug statements.

16 years agoHadoop: Minor fixes to the still-unworking Hadoop code.
Greg Farnum [Tue, 28 Jul 2009 00:20:21 +0000 (17:20 -0700)]
Hadoop: Minor fixes to the still-unworking Hadoop code.

16 years agoHadoop: hadoopcephfs is now self-contained instead of requiring other libs.
Greg Farnum [Tue, 28 Jul 2009 00:19:39 +0000 (17:19 -0700)]
Hadoop: hadoopcephfs is now self-contained instead of requiring other libs.

16 years agouclient/libceph: add a getcwd function
Greg Farnum [Tue, 28 Jul 2009 00:17:47 +0000 (17:17 -0700)]
uclient/libceph: add a getcwd function

16 years agokclient: replace osdc request_tree with rbtree
Sage Weil [Mon, 27 Jul 2009 22:05:56 +0000 (15:05 -0700)]
kclient: replace osdc request_tree with rbtree

This avoids a possible memory allocation in writeout path.

16 years agoauth: remove ceph_client_ticket struct
Sage Weil [Mon, 27 Jul 2009 21:12:33 +0000 (14:12 -0700)]
auth: remove ceph_client_ticket struct

Ticket is generally opaque to client anyway.

16 years agoosd: generate primary backlog independent of master log
Sage Weil [Mon, 27 Jul 2009 18:09:39 +0000 (11:09 -0700)]
osd: generate primary backlog independent of master log

We may have the master log (i.e. know the correct pg state), but
still need a backlog to recover some peers.

16 years agokclient: set mapping error on writepage error
Sage Weil [Mon, 27 Jul 2009 18:57:07 +0000 (11:57 -0700)]
kclient: set mapping error on writepage error

16 years agokclient: debugfs mounts on /sys/kernel/debug
Sage Weil [Mon, 27 Jul 2009 17:11:36 +0000 (10:11 -0700)]
kclient: debugfs mounts on /sys/kernel/debug

16 years agoMakefile: skip hadoop client if jni.h not present
Sage Weil [Thu, 23 Jul 2009 23:17:41 +0000 (16:17 -0700)]
Makefile: skip hadoop client if jni.h not present

16 years agokclient: use a mempool for page vector in writepages
Sage Weil [Thu, 23 Jul 2009 19:50:34 +0000 (12:50 -0700)]
kclient: use a mempool for page vector in writepages

16 years agokclient: put writepages pagevec on the stack
Sage Weil [Thu, 23 Jul 2009 19:30:59 +0000 (12:30 -0700)]
kclient: put writepages pagevec on the stack

16 years agodebian: upload packages as sage
Sage Weil [Thu, 23 Jul 2009 18:45:16 +0000 (11:45 -0700)]
debian: upload packages as sage

16 years agokclient: fix bad kmalloc
Sage Weil [Thu, 23 Jul 2009 17:39:32 +0000 (10:39 -0700)]
kclient: fix bad kmalloc

16 years agokclient: rewrite layout ioctls
Sage Weil [Thu, 23 Jul 2009 17:39:17 +0000 (10:39 -0700)]
kclient: rewrite layout ioctls

16 years agomds: only set striping component of file layout, for now.
Sage Weil [Thu, 23 Jul 2009 18:49:44 +0000 (11:49 -0700)]
mds: only set striping component of file layout, for now.

16 years agofix compat
Sage Weil [Thu, 23 Jul 2009 17:39:06 +0000 (10:39 -0700)]
fix compat

16 years agokclient: define compat_ioctl too
Sage Weil [Wed, 22 Jul 2009 23:41:03 +0000 (16:41 -0700)]
kclient: define compat_ioctl too

16 years agoosd: actually adjust rd/wr accounting values
Sage Weil [Wed, 22 Jul 2009 23:22:45 +0000 (16:22 -0700)]
osd: actually adjust rd/wr accounting values

16 years agoosd: add rd/wr ops/bytes stats to pgs, pools
Sage Weil [Wed, 22 Jul 2009 23:15:38 +0000 (16:15 -0700)]
osd: add rd/wr ops/bytes stats to pgs, pools