]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
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
Sage Weil [Wed, 10 Jun 2009 03:51:07 +0000 (20:51 -0700)]
radostool: clean up bench args, usage
Sage Weil [Wed, 10 Jun 2009 03:33:15 +0000 (20:33 -0700)]
osd: include size in object_info_t
The main advantage here, aside from slightly decluttering the
code, is to avoid a stat() in get_object_context. We just
getxattr and that will implicitly tell us if the object
exists. (If the file exists but the OI_ATTR xattr doesn't,
the object is busted anyway.)
Sage Weil [Wed, 10 Jun 2009 03:29:34 +0000 (20:29 -0700)]
osd: include ondisk magic in encoding for key ondisk state structs
This will eventually allow us to incrementally migrate to
updated ondisk structures by making the decoding conditional
(dependent on the encoded version). At least in some cases.
Sage Weil [Wed, 10 Jun 2009 03:17:13 +0000 (20:17 -0700)]
rados: remove testradoscio[pp] targets
Sage Weil [Wed, 10 Jun 2009 01:53:16 +0000 (18:53 -0700)]
rados: add helper to header
Sage Weil [Wed, 10 Jun 2009 01:53:00 +0000 (18:53 -0700)]
buffer: remove unused field
Sage Weil [Wed, 10 Jun 2009 01:52:43 +0000 (18:52 -0700)]
osd: fix up OSDOp printing
Greg Farnum [Wed, 10 Jun 2009 00:01:37 +0000 (17:01 -0700)]
radostool now includes benchmarking functionality from testradosciopp.cc
Sage Weil [Tue, 9 Jun 2009 23:48:41 +0000 (16:48 -0700)]
osd: rev osd protocol
Sage Weil [Tue, 9 Jun 2009 23:20:37 +0000 (16:20 -0700)]
kclient: include tid in osdc debugfs dump
Yehuda Sadeh [Tue, 9 Jun 2009 23:33:30 +0000 (16:33 -0700)]
osd: hold op data on the specific op
Sage Weil [Tue, 9 Jun 2009 23:02:15 +0000 (16:02 -0700)]
msgr: calculate data crc after encode_payload, in worker thread
Faster (bc crc calc is in msgr worker thread). Also allows
encode_payload() to manipulate data.
Greg Farnum [Tue, 9 Jun 2009 22:59:54 +0000 (15:59 -0700)]
Removed time_t -> int conversion warnings.
Sage Weil [Tue, 9 Jun 2009 22:22:55 +0000 (15:22 -0700)]
mds: fix dir frag split replay
is_complete() may not be set, but split is still allowed.
Sage Weil [Tue, 9 Jun 2009 22:22:18 +0000 (15:22 -0700)]
osd: don't clobber pg_stats.reported when repairing stats
Sage Weil [Tue, 9 Jun 2009 22:07:24 +0000 (15:07 -0700)]
mds: do not fragment dirs if mds_bal_fragment_interval <= 0
Sage Weil [Tue, 9 Jun 2009 21:58:53 +0000 (14:58 -0700)]
radostool: cleanup
greg [Tue, 9 Jun 2009 21:49:21 +0000 (14:49 -0700)]
Hurray, this file works properly as a standalone.
It takes concurrent writes to maintain, minimum runtime, size of the writes, and whether or not to check for consistency. Reports total runtime, writes made, bandwidth, average & max latency, and time waiting for Rados.
greg [Tue, 9 Jun 2009 00:06:42 +0000 (17:06 -0700)]
Added initial testradosciopp.cc.