]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Sage Weil [Thu, 18 Jun 2009 18:19:47 +0000 (11:19 -0700)]
osd: track last_complete_ondisk over pushes, too.
Sage Weil [Thu, 18 Jun 2009 18:07:03 +0000 (11:07 -0700)]
osd: revamp complete_thru code
Use last_complete_ondisk terminology throughout.
Sage Weil [Thu, 18 Jun 2009 16:37:03 +0000 (09:37 -0700)]
osd: some infrastructure for primary to trim replica logs
Sage Weil [Thu, 18 Jun 2009 03:48:50 +0000 (20:48 -0700)]
osd: fix pg log trim on the non-primary
Sage Weil [Wed, 17 Jun 2009 23:36:08 +0000 (16:36 -0700)]
rados: less chatty
Sage Weil [Wed, 17 Jun 2009 23:35:24 +0000 (16:35 -0700)]
rados: shutdown on exit
Sage Weil [Wed, 17 Jun 2009 23:35:19 +0000 (16:35 -0700)]
librados: add shutdown to c++ interface
Sage Weil [Wed, 17 Jun 2009 23:15:15 +0000 (16:15 -0700)]
kclient: initialize readdir next_offset on dir open
Otherwise we don't compensate for . and .. properly.
Sage Weil [Wed, 17 Jun 2009 23:08:21 +0000 (16:08 -0700)]
kclient: update client for statfs changes
Sage Weil [Wed, 17 Jun 2009 23:00:14 +0000 (16:00 -0700)]
osd: add pg log sizes, bottoms to pg_stat_t et al
This will allow us to see the pg logging overhead, esp once pg
logs are kept for longer on disk.
Sage Weil [Wed, 17 Jun 2009 22:54:18 +0000 (15:54 -0700)]
kclient: clean out old debug cruft
Sage Weil [Wed, 17 Jun 2009 22:46:49 +0000 (15:46 -0700)]
rados: fix statfs definition
Isolate posix lameness to uclient only. Unify 'rados df' and
'rados dfpools'
Sage Weil [Wed, 17 Jun 2009 22:22:54 +0000 (15:22 -0700)]
mds: change readdir wire format again
Do not include dentry offsets; they're not useful.
Sage Weil [Wed, 17 Jun 2009 22:22:12 +0000 (15:22 -0700)]
kclient: fix readdir vs rm
Okay, do not rely on MDS to provide dentry positioning information,
since it is all relative to the start _string_ we provide, and that
can change directory position without notice.
Simplify readdir a bit wrt seeks. A seek to 0, a new frag, or
prior to the current chunk resets buffered state.
For each frag, we walk through chunks, always in order. We set
dentry positions/offsets based on the frag and position within our
sweep across the frag. Successive chunks are grabbed from the MDS
relative to a filename (not offset), so concurrent
insertions/removals don't bother us (although we will not see
insertions lexicographically prior to our position).
Sage Weil [Wed, 17 Jun 2009 20:57:15 +0000 (13:57 -0700)]
objectstore: use nstrings to store all attrs
Holding const char *'s isn't really ever safe, since it's not clear
that they are string constants, or that that is even safe.
Sage Weil [Wed, 17 Jun 2009 20:37:18 +0000 (13:37 -0700)]
rados: prettify dfpools output
Sage Weil [Wed, 17 Jun 2009 20:27:51 +0000 (13:27 -0700)]
kclient: fix dout() macro protection of x, mask
Sage Weil [Wed, 17 Jun 2009 19:53:50 +0000 (12:53 -0700)]
kclient: fix pps calculation to factor in pg pool
This was missed the first time around.
Sage Weil [Wed, 17 Jun 2009 19:50:06 +0000 (12:50 -0700)]
osd: fix pps calculation from pgid.ps() and pgid.pool()
The final placement seed needs to factor in pool, but that can't be
fed into stable_mod or you get weird results (for example, 1.ff and
1.adff won't necessary map to the same thing because of the
stable_mod). Add pool to the stable_mod result, instead. The seed
itself doesn't need to be bounded; it's just an input for CRUSH.
Just so long as there are a limited number of such inputs for a given
pool.
Greg Farnum [Wed, 17 Jun 2009 18:23:00 +0000 (11:23 -0700)]
rados: Now properly writes 0-byte files on a get.
There are more debug statements in librados and Objercter too.
Sage Weil [Wed, 17 Jun 2009 16:53:39 +0000 (09:53 -0700)]
mon: implement 'mds setmap <epoch>' to (re)set mdsmap
Sage Weil [Wed, 17 Jun 2009 16:50:21 +0000 (09:50 -0700)]
mon: clean up some mdsmon stuff
last_beacon should include pending_inc mds's, no more, no
less.
Make the osdmon bcast send to non-in mds's too.
Greg Farnum [Tue, 16 Jun 2009 23:39:10 +0000 (16:39 -0700)]
librados: added a write-full method.
Switched ./rados to use it for put.
Sage Weil [Tue, 16 Jun 2009 23:48:18 +0000 (16:48 -0700)]
rados: clean up output a bit
Sage Weil [Tue, 16 Jun 2009 23:48:10 +0000 (16:48 -0700)]
librados: clean up librados debug output a bit
Sage Weil [Tue, 16 Jun 2009 23:39:58 +0000 (16:39 -0700)]
config: no -p shorthand for --pid-file
It's not used by anything anyway.
Sage Weil [Tue, 16 Jun 2009 23:34:03 +0000 (16:34 -0700)]
Merge commit '
114ad5177f281b96ba6bbebe9ed85e2a4aec783f ' into rados
Conflicts:
src/include/ceph_fs.h
Sage Weil [Tue, 16 Jun 2009 23:31:23 +0000 (16:31 -0700)]
kclient: fix skipped entires in dcache_readdir
I'm not sure why the old code incremented f_pos and looked at the
prev entry, but it was wrong.
Sage Weil [Tue, 16 Jun 2009 23:14:55 +0000 (16:14 -0700)]
kclient: fix non-dcache readdir offset calculation
Needs to factor in frag_is_leftmost to account for . and .., just
like the fi->offset calculation in readdir_prepopulate. Fixes the
problem where an ls on a large dir returns duplicate entries.
Sage Weil [Tue, 16 Jun 2009 23:04:12 +0000 (16:04 -0700)]
kclient: specify smallish blksize for directories
This is mainly just because /bin/ls will use the size, or blocks,
or blksize to decide how big of a buffer to allocate for getdents,
and the default of 4MB is unreasonably big. 64k seems like an
okay number, I guess.
Sage Weil [Tue, 16 Jun 2009 23:00:31 +0000 (16:00 -0700)]
osd: fix cloned object context
Screws up subsequent reads on cloned objects. And the bad ref
counting was leaking memory.
Greg Farnum [Tue, 16 Jun 2009 22:49:34 +0000 (15:49 -0700)]
Objecter: fixed a bug in snaps.
Worked around a situtation where you could delete a callback before it was followed.
Greg Farnum [Tue, 16 Jun 2009 22:22:16 +0000 (15:22 -0700)]
mon/Objecter: Snapshot creation/removal now waits for proper epoch to return.
Sage Weil [Tue, 16 Jun 2009 22:17:41 +0000 (15:17 -0700)]
rev osd disk format, protocol due to crush, osdmap mapping changes
Sage Weil [Tue, 16 Jun 2009 22:07:54 +0000 (15:07 -0700)]
osdmaptool: crush regression test
Sage Weil [Tue, 16 Jun 2009 22:07:26 +0000 (15:07 -0700)]
osd: include pg pool in pg to placement seed mapping
This prevents different pools from overlaying on top of each other.
Sage Weil [Tue, 16 Jun 2009 22:03:50 +0000 (15:03 -0700)]
crush: fix perm_choose bug
We would get incorrect results if we calculated the same mapping
twice in a row in certain cases. Der. Also, the permutation
calculation was basically just wrong.
Greg Farnum [Tue, 16 Jun 2009 22:00:24 +0000 (15:00 -0700)]
rados: submit snap creation and removal to the system.
Greg Farnum [Tue, 16 Jun 2009 21:25:02 +0000 (14:25 -0700)]
mon: Now handles snapshot removals too.
Greg Farnum [Tue, 16 Jun 2009 21:22:32 +0000 (14:22 -0700)]
mon:Added server-side handling of MPoolSnap.
Currently assumes it's a snap-create message.
Sage Weil [Tue, 16 Jun 2009 18:50:45 +0000 (11:50 -0700)]
osd: bail out of backlog generation early if osd is stopping
Currently killing the osd can take a very long time if the backlog
is being built. Fix that.
Greg Farnum [Mon, 15 Jun 2009 23:22:44 +0000 (16:22 -0700)]
Client-side support for creating/removing pool snapshots.
Sage Weil [Mon, 15 Jun 2009 23:16:57 +0000 (16:16 -0700)]
kclient: fix di->off calculation
The dentry dir offset calculation wasn't taking into account the
possibility of multiple readdi requests, which in turn meant bad results
for readdir-from-dcache.
Since doing this on the client side was a mess, the MDS includes a dentry
offset for each readdir dentry within the dirfrag. This value is stored
in di->offset (with adjustment in leftmost frag for . and ..), and that's
the value that's passed back via filldir.
Sage Weil [Mon, 15 Jun 2009 22:35:10 +0000 (15:35 -0700)]
kclient: fix I_COMPLETE
The previous use of I_READDIR vs I_COMPLETE was flawed, mainly because
the state was maintained on a per-inode basis, but readdir proceeds on a
per-file basis.
Instead of flags, maintain a counter in the inode that is incremented each
time a dentry is released. When readdir starts, note the counter, and if
it is the same when readdir completes, AND we did not do any forward
seeks on the file handle, AND prepopulate succeeded on each hunk, then we
can set I_COMPLETE.
Sage Weil [Mon, 15 Jun 2009 17:02:27 +0000 (10:02 -0700)]
mds: mark CDir objects with parent ino, dname
Sage Weil [Mon, 15 Jun 2009 19:15:29 +0000 (12:15 -0700)]
mkcephfs: fix btrfs mount option
Sage Weil [Mon, 15 Jun 2009 19:15:19 +0000 (12:15 -0700)]
mds: lower default cache size (now ~3.5GB on x86_64)
Sage Weil [Mon, 15 Jun 2009 19:14:45 +0000 (12:14 -0700)]
osd: cleanup log trim check
Sage Weil [Mon, 15 Jun 2009 03:29:23 +0000 (20:29 -0700)]
todo
Sage Weil [Sun, 14 Jun 2009 23:11:31 +0000 (16:11 -0700)]
debug: fix log reopen
No need to delete, nothing is on the heap.
Sage Weil [Fri, 12 Jun 2009 22:30:05 +0000 (15:30 -0700)]
osd: fix PGOP check
Yehuda Sadeh [Fri, 12 Jun 2009 23:50:59 +0000 (16:50 -0700)]
s3: return objects mtime
Yehuda Sadeh [Fri, 12 Jun 2009 22:43:20 +0000 (15:43 -0700)]
s3: partial implementation of get bucket
Yehuda Sadeh [Fri, 12 Jun 2009 21:28:59 +0000 (14:28 -0700)]
s3: handle 'get bucket' opereation
Greg Farnum [Fri, 12 Jun 2009 20:29:47 +0000 (13:29 -0700)]
rados:Added basic df functionality to rados and fixed librados.cc to handle statfs_reply messages
Sage Weil [Fri, 12 Jun 2009 19:58:24 +0000 (12:58 -0700)]
objecter: add hook to get notification on new osdmap
Sage Weil [Fri, 12 Jun 2009 19:52:33 +0000 (12:52 -0700)]
debian: add build depends libssl-dev, libfcgi-dev
Sage Weil [Fri, 12 Jun 2009 19:50:09 +0000 (12:50 -0700)]
osd: autodetect PGOP flag if there are PG ops
Avoids requiring the client to specify.
Sage Weil [Fri, 12 Jun 2009 19:49:30 +0000 (12:49 -0700)]
rados: rename radostool -> rados
Yehuda Sadeh [Fri, 12 Jun 2009 19:49:43 +0000 (12:49 -0700)]
rados: external acls [beginning of] implementation
Yehuda Sadeh [Fri, 12 Jun 2009 19:48:09 +0000 (12:48 -0700)]
s3: fastcgi s3 gateway
Sage Weil [Fri, 12 Jun 2009 18:17:19 +0000 (11:17 -0700)]
objecter: unify read and write paths
No longer any reason to segregate read and write paths.
Sage Weil [Fri, 12 Jun 2009 05:55:07 +0000 (22:55 -0700)]
osd: you may, but need not, specify READ|WRITE flag in MOSDOp.
The OSD will implicitly set the bits based on your OSDOps or class method
calls. The client may still find it useful to specify these expicitly
for it's own informational purposes.
Make sure the MOSDOpReply has bits set based on the _actual_ op performed.
Note that as things stand, this will confuse the Objecter, who relies on
these bits to choose read or modify reply paths and doesn't know a priori
what mode a method is.
Greg Farnum [Thu, 11 Jun 2009 23:23:26 +0000 (16:23 -0700)]
uClient: Fixed a copying error and a double lock.
Greg Farnum [Thu, 11 Jun 2009 22:50:21 +0000 (15:50 -0700)]
Switched Client to use objecter's statfs methods.
Greg Farnum [Thu, 11 Jun 2009 22:08:53 +0000 (15:08 -0700)]
Rebase and better naming.
Greg Farnum [Thu, 11 Jun 2009 21:51:12 +0000 (14:51 -0700)]
Added support for MStatfs to librados and Objecter.
Sage Weil [Thu, 11 Jun 2009 21:33:19 +0000 (14:33 -0700)]
mds: turn off mds ref sets
Sage Weil [Thu, 11 Jun 2009 21:33:08 +0000 (14:33 -0700)]
mds: kill unused CInode.last_open_journaled
Sage Weil [Thu, 11 Jun 2009 21:07:28 +0000 (14:07 -0700)]
kclient: include full path names (in parens) in debugfs mdsc
Sage Weil [Thu, 11 Jun 2009 21:03:22 +0000 (14:03 -0700)]
kclient: fix cap reconnect path generation
This was preventing all caps from reconnecting on mds restart.
Sage Weil [Thu, 11 Jun 2009 20:17:06 +0000 (13:17 -0700)]
uclient: mark down failed mds
Sage Weil [Thu, 11 Jun 2009 20:16:32 +0000 (13:16 -0700)]
cosd: one mds for now
Sage Weil [Thu, 11 Jun 2009 19:50:25 +0000 (12:50 -0700)]
mds: use boost::pool for CInode, CDentry, CDir, Capability
Sage Weil [Thu, 11 Jun 2009 19:49:48 +0000 (12:49 -0700)]
osd: fail gracefully if OSDOp.data is empty
This happens for MOSDOpReply, currently.
Sage Weil [Thu, 11 Jun 2009 17:45:37 +0000 (10:45 -0700)]
mon: use pool_stat_t for pool summation in PGMap
pg_stat_t has a lot of pg-specific fields we don't need for the
pool and total summations.
Sage Weil [Thu, 11 Jun 2009 17:18:48 +0000 (10:18 -0700)]
mds: cut back on hash_map usage
These use lots of memory, and aren't necessary for smallish maps.
Sage Weil [Thu, 11 Jun 2009 17:32:31 +0000 (10:32 -0700)]
mds: fix inotable encoding
ALWAYS use proper interval_set encoders (not the .m), or else the
.size() methods won't behave after decoding.
Sage Weil [Mon, 8 Jun 2009 21:36:07 +0000 (14:36 -0700)]
librados: add const to aio_write bl arg
Sage Weil [Thu, 11 Jun 2009 16:49:46 +0000 (09:49 -0700)]
librados: make get pool stats work
Sage Weil [Thu, 11 Jun 2009 16:49:39 +0000 (09:49 -0700)]
mon: process MGetPoolStats
Yehuda Sadeh [Wed, 10 Jun 2009 21:26:11 +0000 (14:26 -0700)]
osd: fix encoding/decoding of [sub]op response
Sage Weil [Thu, 11 Jun 2009 04:28:26 +0000 (21:28 -0700)]
kclient: fix typo
Sage Weil [Thu, 11 Jun 2009 04:21:23 +0000 (21:21 -0700)]
buffer: append individual chars
Sage Weil [Thu, 11 Jun 2009 01:36:16 +0000 (18:36 -0700)]
osd: fix MOSDOp printout
Sage Weil [Thu, 11 Jun 2009 00:52:39 +0000 (17:52 -0700)]
rados: add new headers
Sage Weil [Wed, 10 Jun 2009 23:50:14 +0000 (16:50 -0700)]
librados: client side for getting pg stats
No server side yet!
Sage Weil [Wed, 10 Jun 2009 22:59:35 +0000 (15:59 -0700)]
kclient: make /debug/ceph/client#/mdsc filenames work, cleanup
Just print #ino/path for dentries, since that's what goes over the
wire.
Sage Weil [Wed, 10 Jun 2009 21:30:17 +0000 (14:30 -0700)]
radostool: lssnap
Greg Farnum [Wed, 10 Jun 2009 23:04:12 +0000 (16:04 -0700)]
Added a current bandwidth meter to radostool bench.
Prints out once/second or at every write, whichever is slowest.
Sage Weil [Wed, 10 Jun 2009 21:04:52 +0000 (14:04 -0700)]
osd: destroy messengers on shutdown
Sage Weil [Wed, 10 Jun 2009 21:04:35 +0000 (14:04 -0700)]
monclient: avoid hang during startup
Sage Weil [Wed, 10 Jun 2009 20:37:28 +0000 (13:37 -0700)]
osd: fix huge memory leak (MOSDOp)
Sage Weil [Wed, 10 Jun 2009 19:48:41 +0000 (12:48 -0700)]
radostool: select snaps, rm objects
Yehuda Sadeh [Wed, 10 Jun 2009 19:53:35 +0000 (12:53 -0700)]
rados: get rid of wrcall
Yehuda Sadeh [Wed, 10 Jun 2009 19:16:47 +0000 (12:16 -0700)]
rados: rename rdcall to call
Yehuda Sadeh [Wed, 10 Jun 2009 18:18:17 +0000 (11:18 -0700)]
class: add cls_setxattr
Yehuda Sadeh [Wed, 10 Jun 2009 17:50:25 +0000 (10:50 -0700)]
class: set method flags on registration
Yehuda Sadeh [Wed, 10 Jun 2009 17:26:42 +0000 (10:26 -0700)]
osd: don't call may_read/may_write prematurely (revert previous)
Yehuda Sadeh [Wed, 10 Jun 2009 17:04:11 +0000 (10:04 -0700)]
osd: update rwm flags for incoming ops