]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Yehuda Sadeh [Wed, 27 May 2009 22:53:15 +0000 (15:53 -0700)]
class: utility to load classes
Sage Weil [Wed, 27 May 2009 21:40:45 +0000 (14:40 -0700)]
kclient: fix cap resv BUG
Sage Weil [Wed, 27 May 2009 21:06:25 +0000 (14:06 -0700)]
filer: fix probing when recovered size is 0
Fixes a bug where it wraps around to a negative (large)
file size.
Sage Weil [Wed, 27 May 2009 21:06:13 +0000 (14:06 -0700)]
kclient: put readdir max entries in mount options
Sage Weil [Wed, 27 May 2009 20:58:20 +0000 (13:58 -0700)]
kclient: rework cap reservation accounting a bit
Invariants:
total = used + reserved + avail
len(caps_list) = reserved + avail
Previously, reserved was part of avail, which was confusing. Also
fixed up the reserve func such that the above invariants are always
true.
Sage Weil [Wed, 27 May 2009 18:49:02 +0000 (11:49 -0700)]
initscript: fix instance check
Sage Weil [Wed, 27 May 2009 19:07:41 +0000 (12:07 -0700)]
cosd: journal to a dedicated disk
Sage Weil [Wed, 27 May 2009 19:07:07 +0000 (12:07 -0700)]
osd: fix PG::IndexLog unindex()
The REMOVE entries won't be in the objects map.
Sage Weil [Wed, 27 May 2009 19:06:38 +0000 (12:06 -0700)]
initscript: remove notreelog by default
This screws us if we put the journal file on the same btrfs volume. Not
that it works that well anyway, but it works even worse this way. And
since FileStore never calls fsync(), it's fine.
Sage Weil [Wed, 27 May 2009 17:34:41 +0000 (10:34 -0700)]
script: fix req format in osd latency check
Sage Weil [Wed, 27 May 2009 17:43:25 +0000 (10:43 -0700)]
filestore: stop sync thread before journal
Otherwise we get sync thread interaction with freed journal.
Sage Weil [Wed, 27 May 2009 17:03:26 +0000 (10:03 -0700)]
osd: create journal of specified size during mkfs
Sage Weil [Tue, 26 May 2009 23:09:34 +0000 (16:09 -0700)]
kclient: avoid d_time reuse s.t. leases and dir rdcache can coexist
We want to be able to remember a lease even when we are issued
RDCACHE on the entire dir. (Otherwise, we fail to release the
dentry when doing an op, and have to wait for the revoke round
trip.)
So avoid reusing d_time for the rdcache_gen. Unconditionally set
it in update_dentry_lease.
Also, force inclusion of a no-op inode update if we need to include
the dentry lease release, even when the dir caps aren't changing.
Sage Weil [Tue, 26 May 2009 22:51:01 +0000 (15:51 -0700)]
mds: look at loner issued|wanted in file_eval
Sage Weil [Wed, 27 May 2009 03:19:56 +0000 (20:19 -0700)]
rados: aio prototypes
Yehuda Sadeh [Tue, 26 May 2009 20:41:35 +0000 (13:41 -0700)]
librados: display result _after_ wait
Yehuda Sadeh [Tue, 26 May 2009 18:40:50 +0000 (11:40 -0700)]
class: don't add a class when no valid binary is supplied
Yehuda Sadeh [Tue, 26 May 2009 18:28:05 +0000 (11:28 -0700)]
osd: don't send reply on message that got EAGAIN
Sage Weil [Tue, 26 May 2009 17:33:42 +0000 (10:33 -0700)]
osd: show error string in reply msg printout
Sage Weil [Tue, 26 May 2009 17:28:42 +0000 (10:28 -0700)]
mds: fix EXCL -> * check in file_eval to use loner_wanted, not issued
We should leave EXCL if the loner doesn't want the EXCL bits
(WR, EXCL, BUFFER), not if it's not issued (which is transitory).
Sage Weil [Tue, 26 May 2009 17:27:53 +0000 (10:27 -0700)]
vstart: set debug levels in conf, not cmd line
This lets you restart things more easily.
Sage Weil [Tue, 26 May 2009 16:39:30 +0000 (09:39 -0700)]
librados: remove length args from C++ interface
The bufferlists remove any need for an additional length arg.
Return ERANGE when buffers are too small.
Sage Weil [Tue, 26 May 2009 16:10:10 +0000 (09:10 -0700)]
makefile: don't build fakesyn
Sage Weil [Mon, 25 May 2009 21:34:08 +0000 (14:34 -0700)]
osd: some cleanup, todos
Sage Weil [Mon, 25 May 2009 21:20:34 +0000 (14:20 -0700)]
kclient: fix READ|WRITE check
FLAG, not OP.
Sage Weil [Mon, 25 May 2009 21:20:03 +0000 (14:20 -0700)]
osd: remove some dead code
Sage Weil [Mon, 25 May 2009 21:19:26 +0000 (14:19 -0700)]
osd: prepare clone before write op
This simplifies tracking (no need to set values aside we'll need for
clone). Instead, we just make_writeable() before any write op to ensure
the clone exists.
Sage Weil [Mon, 25 May 2009 20:18:14 +0000 (13:18 -0700)]
osd: track ObjectContext for cloned objects
This orders access to a newly cloned object. This is really only important
when you have a racing clone creation and a clone read. The read will
look at the head's context and expect the clone to be there, but we may
not have applied the write to disk yet. So, we set up an obc for the
cloned object too (with the same mode as the head).
Sage Weil [Mon, 25 May 2009 19:22:05 +0000 (12:22 -0700)]
osd: implement rmw mode
Sage Weil [Mon, 25 May 2009 19:21:40 +0000 (12:21 -0700)]
osd: move everything into do_op, log helper
Sage Weil [Mon, 25 May 2009 18:12:06 +0000 (11:12 -0700)]
osd: only register the ObjectContext if we go on to write
We only need it to be registered if we are carrying state over some period
of time, which isn't the case for reads.
Sage Weil [Mon, 25 May 2009 17:57:59 +0000 (10:57 -0700)]
osd: unify read and write paths
Sage Weil [Sat, 23 May 2009 01:17:46 +0000 (18:17 -0700)]
osd: break apart write stages, transactions
We break the write preparation into three stages. First we run the ops
vector and build the op_t transaction. If it is non-empty, we build a
clone_t transaction to run before it, and a local_t that updates the osd's
PG log and metadata.
Take care to preserve old exists, size, and version values before running
the ops vector as those are clobbered but need to be send to the replica
osds.
Sage Weil [Sat, 23 May 2009 00:53:44 +0000 (17:53 -0700)]
filestore: apply multiple Transactions as a unit
This lets the user build a few different Transactions and submit them to
the store for commit as a unit.
Sage Weil [Fri, 22 May 2009 22:42:35 +0000 (15:42 -0700)]
osd: clean out zero->delete munging
Sage Weil [Fri, 22 May 2009 19:36:45 +0000 (12:36 -0700)]
osd: clean up op_modify a bit
Yehuda Sadeh [Fri, 22 May 2009 23:57:52 +0000 (16:57 -0700)]
class: when class not found, don't wait forever
Yehuda Sadeh [Fri, 22 May 2009 22:30:44 +0000 (15:30 -0700)]
class: fix class removal via classmon
Yehuda Sadeh [Fri, 22 May 2009 22:02:01 +0000 (15:02 -0700)]
class: cmon doesn't crash if can't find requested class
Yehuda Sadeh [Fri, 22 May 2009 21:58:27 +0000 (14:58 -0700)]
class: some cleanup
Yehuda Sadeh [Fri, 22 May 2009 21:52:25 +0000 (14:52 -0700)]
class: paxos distribution of class operations fixes
Yehuda Sadeh [Fri, 22 May 2009 19:39:51 +0000 (12:39 -0700)]
class: some fixes, testrados works again
Yehuda Sadeh [Fri, 22 May 2009 18:28:40 +0000 (11:28 -0700)]
class: same version, multiple archs work
Sage Weil [Fri, 22 May 2009 19:16:08 +0000 (12:16 -0700)]
osd: unify ReadOpContext and WriteOpContext -> OpContext
Sage Weil [Fri, 22 May 2009 18:43:38 +0000 (11:43 -0700)]
osd: refactor pick_read_snap into find_object_context
This gets us a bit closer to unifying the read and write paths.
Sage Weil [Fri, 22 May 2009 17:30:26 +0000 (10:30 -0700)]
osd: always set snapid in MOSDOp
This reverts
ced9929bffc36347a6521a861a482433249e978c .
Sage Weil [Fri, 22 May 2009 17:16:08 +0000 (10:16 -0700)]
osd: check/change object mode in response to ops; fixes.
Yehuda Sadeh [Fri, 22 May 2009 16:40:32 +0000 (09:40 -0700)]
make: fix libtestclass.so name
Yehuda Sadeh [Thu, 21 May 2009 23:55:16 +0000 (16:55 -0700)]
class: fix class storage
Yehuda Sadeh [Thu, 21 May 2009 23:40:05 +0000 (16:40 -0700)]
class: add architecture to version
Sage Weil [Thu, 21 May 2009 19:35:26 +0000 (12:35 -0700)]
osd: some ObjectContext changes
Sage Weil [Thu, 21 May 2009 19:33:43 +0000 (12:33 -0700)]
osd: don't look at snapid if may_write().. it's not defined (see snapc!)
Sage Weil [Thu, 21 May 2009 19:22:46 +0000 (12:22 -0700)]
osd: fix pg locking in handle_op
Yehuda Sadeh [Thu, 21 May 2009 18:02:29 +0000 (11:02 -0700)]
class: remove default test class
Yehuda Sadeh [Thu, 21 May 2009 17:41:31 +0000 (10:41 -0700)]
class: osd specifies class version when fetching class
Sage Weil [Thu, 21 May 2009 16:52:24 +0000 (09:52 -0700)]
osd: ProjectedObject -> ObjectContext; object access mode state notes
Sage Weil [Thu, 21 May 2009 14:52:13 +0000 (07:52 -0700)]
osd: reorg handle_op; turn off preprocess_op
None of the preprocess stuff is working at the moment.. just skip it all
for now.
Yehuda Sadeh [Wed, 20 May 2009 23:26:37 +0000 (16:26 -0700)]
class: fix a class version issue
Yehuda Sadeh [Wed, 20 May 2009 23:00:03 +0000 (16:00 -0700)]
class: string class version can be specified
Yehuda Sadeh [Wed, 20 May 2009 21:13:43 +0000 (14:13 -0700)]
rados: add 'remove' operation
Yehuda Sadeh [Wed, 20 May 2009 20:35:50 +0000 (13:35 -0700)]
rados: supply a C++ api
Yehuda Sadeh [Wed, 20 May 2009 18:16:22 +0000 (11:16 -0700)]
class: don't return nonexisting method
Sage Weil [Wed, 20 May 2009 19:10:12 +0000 (12:10 -0700)]
osd: describe osd ops as READ, WRITE, or READ|WRITE
An op is either a pure read (read, stat), a pure (blind) write (write
extent, delete), or read+write (e.g., read/modify/write).
Writes with read portions that are captured by ProjectedObjectInfo (size,
truncate attr) can pretend to be purely write (as they are now).
Sage Weil [Wed, 20 May 2009 18:48:32 +0000 (11:48 -0700)]
objecter: kill inc_locks.
These aren't needed or used since there is a generic blacklist mechanism
in the osdmap (that is simpler and more robust).
Sage Weil [Wed, 20 May 2009 16:52:49 +0000 (09:52 -0700)]
osd: add WriteOpContext; some refactoring
Push as much write state into the WriteOpContext as possible; use
RepGather only for addition items necessary for the op replication.
Sage Weil [Wed, 20 May 2009 03:57:38 +0000 (20:57 -0700)]
osd: push all the read state into OpContext
Instead of referencing items on the stack, put everything important
directly in the OpContext.
Sage Weil [Tue, 19 May 2009 23:56:17 +0000 (16:56 -0700)]
librados: don't care about mds messages
Sage Weil [Tue, 19 May 2009 23:55:25 +0000 (16:55 -0700)]
librados: use generic C_SafeCond and wait safely for acks
Sage Weil [Tue, 19 May 2009 23:28:49 +0000 (16:28 -0700)]
class: fix warning
Yehuda Sadeh [Tue, 19 May 2009 23:34:38 +0000 (16:34 -0700)]
osd: return immediately after -EAGAIN
Yehuda Sadeh [Tue, 19 May 2009 23:25:13 +0000 (16:25 -0700)]
osd: don't free message on EAGAIN after get_class
Yehuda Sadeh [Tue, 19 May 2009 22:30:22 +0000 (15:30 -0700)]
librados: keep bufferlist on the stack
Yehuda Sadeh [Tue, 19 May 2009 22:13:23 +0000 (15:13 -0700)]
class: pass context to method execution
Yehuda Sadeh [Tue, 19 May 2009 22:09:14 +0000 (15:09 -0700)]
osd: some interface change in do_read_ops, uses context
Sage Weil [Tue, 19 May 2009 22:42:26 +0000 (15:42 -0700)]
rados: look up pool by name
Sage Weil [Tue, 19 May 2009 21:44:29 +0000 (14:44 -0700)]
kclient: import into fs/staging
Sage Weil [Tue, 19 May 2009 21:44:03 +0000 (14:44 -0700)]
makefile: remove unneeded libtestclass_so_SOURCES
Sage Weil [Tue, 19 May 2009 21:42:18 +0000 (14:42 -0700)]
header comments
Yehuda Sadeh [Tue, 19 May 2009 20:36:25 +0000 (13:36 -0700)]
osd: get rid of the grep op
Yehuda Sadeh [Tue, 19 May 2009 19:44:14 +0000 (12:44 -0700)]
class: able to list loaded classes on the monitor
Sage Weil [Tue, 19 May 2009 20:20:14 +0000 (13:20 -0700)]
Merge branch 'unstable' into rados
Conflicts:
src/client/SyntheticClient.cc
src/kernel/bookkeeper.h
src/osd/ReplicatedPG.cc
src/osdc/Filer.cc
src/osdc/Objecter.h
Sage Weil [Tue, 19 May 2009 19:43:04 +0000 (12:43 -0700)]
kclient: kill dput/d_drop debug cruft
Sage Weil [Tue, 19 May 2009 19:26:12 +0000 (12:26 -0700)]
kclient: remove bookkeeper
Sage Weil [Tue, 19 May 2009 18:23:35 +0000 (11:23 -0700)]
kclient: fix kbuild.patch for 2.6.30
Sage Weil [Tue, 19 May 2009 18:17:11 +0000 (11:17 -0700)]
changelog
Sage Weil [Tue, 19 May 2009 17:29:12 +0000 (10:29 -0700)]
osd: factor out do_read_ops helper
Sage Weil [Tue, 19 May 2009 17:18:29 +0000 (10:18 -0700)]
todo'd
Sage Weil [Tue, 19 May 2009 17:18:16 +0000 (10:18 -0700)]
initscript: fix instance check
Sage Weil [Tue, 19 May 2009 16:58:15 +0000 (09:58 -0700)]
mon: send mount error to client on EPERM or protocol version mismatch
Sage Weil [Tue, 19 May 2009 16:57:53 +0000 (09:57 -0700)]
kclient: fix mount err reporting
No more delay
Sage Weil [Tue, 19 May 2009 01:40:44 +0000 (18:40 -0700)]
osd: handle errors on rdcall
Sage Weil [Mon, 18 May 2009 23:51:29 +0000 (16:51 -0700)]
filer: make probe recover size and/or mtime; fix some bugs
This fixes up MDS recovery to find the file size. And makes
probe actually work.. it was pretty broken before.
Sage Weil [Mon, 18 May 2009 22:47:36 +0000 (15:47 -0700)]
osd: cleanly implement OSD_OP_STAT
Put stat result (size AND mtime) in read result bufferlist.
Yehuda Sadeh [Mon, 18 May 2009 22:54:13 +0000 (15:54 -0700)]
kclient: fix compilation error
Yehuda Sadeh [Mon, 18 May 2009 22:51:36 +0000 (15:51 -0700)]
Merge branch 'rados' of ssh://ceph.newdream.net/git/ceph into rados
Conflicts:
src/kernel/bookkeeper.h
Yehuda Sadeh [Mon, 18 May 2009 22:49:27 +0000 (15:49 -0700)]
class: end to end method execution
Sage Weil [Mon, 18 May 2009 21:48:54 +0000 (14:48 -0700)]
uclient: fix missing cap behavior
Ignore cap messages if we don't have the inode or cap.
Sage Weil [Mon, 18 May 2009 20:27:37 +0000 (13:27 -0700)]
Merge branch 'unstable' into rados
Conflicts:
src/include/ceph_fs.h
src/kernel/bookkeeper.h
Sage Weil [Mon, 18 May 2009 20:21:26 +0000 (13:21 -0700)]
kclient: style fixes
Sage Weil [Mon, 18 May 2009 20:21:58 +0000 (13:21 -0700)]
kclient: strip trailing whitespace