]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
16 years agoclass: fix class storage
Yehuda Sadeh [Thu, 21 May 2009 23:55:16 +0000 (16:55 -0700)]
class: fix class storage

16 years agoclass: add architecture to version
Yehuda Sadeh [Thu, 21 May 2009 23:40:05 +0000 (16:40 -0700)]
class: add architecture to version

16 years agoosd: some ObjectContext changes
Sage Weil [Thu, 21 May 2009 19:35:26 +0000 (12:35 -0700)]
osd: some ObjectContext changes

16 years agoosd: don't look at snapid if may_write().. it's not defined (see snapc!)
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!)

16 years agoosd: fix pg locking in handle_op
Sage Weil [Thu, 21 May 2009 19:22:46 +0000 (12:22 -0700)]
osd: fix pg locking in handle_op

16 years agoclass: remove default test class
Yehuda Sadeh [Thu, 21 May 2009 18:02:29 +0000 (11:02 -0700)]
class: remove default test class

16 years agoclass: osd specifies class version when fetching class
Yehuda Sadeh [Thu, 21 May 2009 17:41:31 +0000 (10:41 -0700)]
class: osd specifies class version when fetching class

16 years agoosd: ProjectedObject -> ObjectContext; object access mode state notes
Sage Weil [Thu, 21 May 2009 16:52:24 +0000 (09:52 -0700)]
osd: ProjectedObject -> ObjectContext; object access mode state notes

16 years agoosd: reorg handle_op; turn off preprocess_op
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.

16 years agoclass: fix a class version issue
Yehuda Sadeh [Wed, 20 May 2009 23:26:37 +0000 (16:26 -0700)]
class: fix a class version issue

16 years agoclass: string class version can be specified
Yehuda Sadeh [Wed, 20 May 2009 23:00:03 +0000 (16:00 -0700)]
class: string class version can be specified

16 years agorados: add 'remove' operation
Yehuda Sadeh [Wed, 20 May 2009 21:13:43 +0000 (14:13 -0700)]
rados: add 'remove' operation

16 years agorados: supply a C++ api
Yehuda Sadeh [Wed, 20 May 2009 20:35:50 +0000 (13:35 -0700)]
rados: supply a C++ api

16 years agoclass: don't return nonexisting method
Yehuda Sadeh [Wed, 20 May 2009 18:16:22 +0000 (11:16 -0700)]
class: don't return nonexisting method

16 years agoosd: describe osd ops as READ, WRITE, or READ|WRITE
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).

16 years agoobjecter: kill inc_locks.
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).

16 years agoosd: add WriteOpContext; some refactoring
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.

16 years agoosd: push all the read state into OpContext
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.

16 years agolibrados: don't care about mds messages
Sage Weil [Tue, 19 May 2009 23:56:17 +0000 (16:56 -0700)]
librados: don't care about mds messages

16 years agolibrados: use generic C_SafeCond and wait safely for acks
Sage Weil [Tue, 19 May 2009 23:55:25 +0000 (16:55 -0700)]
librados: use generic C_SafeCond and wait safely for acks

16 years agoclass: fix warning
Sage Weil [Tue, 19 May 2009 23:28:49 +0000 (16:28 -0700)]
class: fix warning

16 years agoosd: return immediately after -EAGAIN
Yehuda Sadeh [Tue, 19 May 2009 23:34:38 +0000 (16:34 -0700)]
osd: return immediately after -EAGAIN

16 years agoosd: don't free message on EAGAIN after get_class
Yehuda Sadeh [Tue, 19 May 2009 23:25:13 +0000 (16:25 -0700)]
osd: don't free message on EAGAIN after get_class

16 years agolibrados: keep bufferlist on the stack
Yehuda Sadeh [Tue, 19 May 2009 22:30:22 +0000 (15:30 -0700)]
librados: keep bufferlist on the stack

16 years agoclass: pass context to method execution
Yehuda Sadeh [Tue, 19 May 2009 22:13:23 +0000 (15:13 -0700)]
class: pass context to method execution

16 years agoosd: some interface change in do_read_ops, uses context
Yehuda Sadeh [Tue, 19 May 2009 22:09:14 +0000 (15:09 -0700)]
osd: some interface change in do_read_ops, uses context

16 years agorados: look up pool by name
Sage Weil [Tue, 19 May 2009 22:42:26 +0000 (15:42 -0700)]
rados: look up pool by name

16 years agokclient: import into fs/staging
Sage Weil [Tue, 19 May 2009 21:44:29 +0000 (14:44 -0700)]
kclient: import into fs/staging

16 years agomakefile: remove unneeded libtestclass_so_SOURCES
Sage Weil [Tue, 19 May 2009 21:44:03 +0000 (14:44 -0700)]
makefile: remove unneeded libtestclass_so_SOURCES

16 years agoheader comments
Sage Weil [Tue, 19 May 2009 21:42:18 +0000 (14:42 -0700)]
header comments

16 years agoosd: get rid of the grep op
Yehuda Sadeh [Tue, 19 May 2009 20:36:25 +0000 (13:36 -0700)]
osd: get rid of the grep op

16 years agoclass: able to list loaded classes on the monitor
Yehuda Sadeh [Tue, 19 May 2009 19:44:14 +0000 (12:44 -0700)]
class: able to list loaded classes on the monitor

16 years agoMerge branch 'unstable' into rados
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

16 years agokclient: kill dput/d_drop debug cruft v0.8
Sage Weil [Tue, 19 May 2009 19:43:04 +0000 (12:43 -0700)]
kclient: kill dput/d_drop debug cruft

16 years agokclient: remove bookkeeper
Sage Weil [Tue, 19 May 2009 19:26:12 +0000 (12:26 -0700)]
kclient: remove bookkeeper

16 years agokclient: fix kbuild.patch for 2.6.30
Sage Weil [Tue, 19 May 2009 18:23:35 +0000 (11:23 -0700)]
kclient: fix kbuild.patch for 2.6.30

16 years agochangelog
Sage Weil [Tue, 19 May 2009 18:17:11 +0000 (11:17 -0700)]
changelog

16 years agoosd: factor out do_read_ops helper
Sage Weil [Tue, 19 May 2009 17:29:12 +0000 (10:29 -0700)]
osd: factor out do_read_ops helper

16 years agotodo'd
Sage Weil [Tue, 19 May 2009 17:18:29 +0000 (10:18 -0700)]
todo'd

16 years agoinitscript: fix instance check
Sage Weil [Tue, 19 May 2009 17:18:16 +0000 (10:18 -0700)]
initscript: fix instance check

16 years agomon: send mount error to client on EPERM or protocol version mismatch
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

16 years agokclient: fix mount err reporting
Sage Weil [Tue, 19 May 2009 16:57:53 +0000 (09:57 -0700)]
kclient: fix mount err reporting

No more delay

16 years agoosd: handle errors on rdcall
Sage Weil [Tue, 19 May 2009 01:40:44 +0000 (18:40 -0700)]
osd: handle errors on rdcall

16 years agofiler: make probe recover size and/or mtime; fix some bugs
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.

16 years agoosd: cleanly implement OSD_OP_STAT
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.

16 years agokclient: fix compilation error
Yehuda Sadeh [Mon, 18 May 2009 22:54:13 +0000 (15:54 -0700)]
kclient: fix compilation error

16 years agoMerge branch 'rados' of ssh://ceph.newdream.net/git/ceph into rados
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

16 years agoclass: end to end method execution
Yehuda Sadeh [Mon, 18 May 2009 22:49:27 +0000 (15:49 -0700)]
class: end to end method execution

16 years agouclient: fix missing cap behavior
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.

16 years agoMerge branch 'unstable' into rados
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

16 years agokclient: style fixes
Sage Weil [Mon, 18 May 2009 20:21:26 +0000 (13:21 -0700)]
kclient: style fixes

16 years agokclient: strip trailing whitespace
Sage Weil [Mon, 18 May 2009 20:21:58 +0000 (13:21 -0700)]
kclient: strip trailing whitespace

16 years agoinitscript: make sure cmdline instance exists
Sage Weil [Mon, 18 May 2009 19:01:21 +0000 (12:01 -0700)]
initscript: make sure cmdline instance exists

16 years agokclient: make bookkeeper compile when not in .config
Sage Weil [Mon, 18 May 2009 18:28:49 +0000 (11:28 -0700)]
kclient: make bookkeeper compile when not in .config

16 years agomon: use generic C_Command in ClassMonitor
Sage Weil [Thu, 14 May 2009 23:06:30 +0000 (16:06 -0700)]
mon: use generic C_Command in ClassMonitor

16 years agokclient: disable bookkeeper when including some kernel headers
Yehuda Sadeh [Mon, 18 May 2009 18:20:42 +0000 (11:20 -0700)]
kclient: disable bookkeeper when including some kernel headers

Conflicts:

src/kernel/bookkeeper.h

16 years agoosd: clean up output
Sage Weil [Mon, 18 May 2009 17:47:35 +0000 (10:47 -0700)]
osd: clean up output

16 years agomds: drop mut locks after file_recover_cow
Sage Weil [Mon, 18 May 2009 18:22:24 +0000 (11:22 -0700)]
mds: drop mut locks after file_recover_cow

16 years agomds: fix caps issued on snapped inodes
Sage Weil [Mon, 18 May 2009 18:19:29 +0000 (11:19 -0700)]
mds: fix caps issued on snapped inodes

Do not adjust Capability on snapped inodes (otherwise cap state
gets out of sync with client).

16 years agokclient: keep page locked after page_mkwrite call
Yehuda Sadeh [Mon, 18 May 2009 18:11:22 +0000 (11:11 -0700)]
kclient: keep page locked after page_mkwrite call

16 years agokclient: disable bookkeeper when including some kernel headers
Yehuda Sadeh [Mon, 18 May 2009 18:03:10 +0000 (11:03 -0700)]
kclient: disable bookkeeper when including some kernel headers

16 years agoclass: fix compilation
Yehuda Sadeh [Mon, 18 May 2009 17:20:01 +0000 (10:20 -0700)]
class: fix compilation

16 years agoclass: moving ClassHandler to common/
Yehuda Sadeh [Mon, 18 May 2009 17:17:27 +0000 (10:17 -0700)]
class: moving ClassHandler to common/

16 years agodebian: add KERNELDIR
Sage Weil [Sat, 16 May 2009 20:39:48 +0000 (13:39 -0700)]
debian: add KERNELDIR

16 years agodebian: behave without Makefile
Sage Weil [Sat, 16 May 2009 20:37:10 +0000 (13:37 -0700)]
debian: behave without Makefile

16 years agoclass: some fixes
Yehuda Sadeh [Fri, 15 May 2009 23:43:52 +0000 (16:43 -0700)]
class: some fixes

16 years agoclass: some api implementation
Yehuda Sadeh [Fri, 15 May 2009 22:18:25 +0000 (15:18 -0700)]
class: some api implementation

16 years agoosd: fix compilation issue
Yehuda Sadeh [Fri, 15 May 2009 20:37:51 +0000 (13:37 -0700)]
osd: fix compilation issue

16 years agoclass: add register/unregister
Yehuda Sadeh [Fri, 15 May 2009 17:30:34 +0000 (10:30 -0700)]
class: add register/unregister

16 years agoclass: remove initial test class
Yehuda Sadeh [Thu, 14 May 2009 22:59:30 +0000 (15:59 -0700)]
class: remove initial test class

16 years agoMerge branch 'unstable' into rados
Sage Weil [Fri, 15 May 2009 05:35:24 +0000 (22:35 -0700)]
Merge branch 'unstable' into rados

16 years agoclass: typedef method, use C style naming
Sage Weil [Fri, 15 May 2009 05:34:55 +0000 (22:34 -0700)]
class: typedef method, use C style naming

16 years agoclass: rename ClassEntry.h -> ClassLibrary.h
Sage Weil [Fri, 15 May 2009 05:26:02 +0000 (22:26 -0700)]
class: rename ClassEntry.h -> ClassLibrary.h

16 years agomds: kill fugly arg to rdlock_path_pin_ref
Sage Weil [Thu, 14 May 2009 23:33:48 +0000 (16:33 -0700)]
mds: kill fugly arg to rdlock_path_pin_ref

The caller (readdir, in this case) can do it now, since it now does the
acquire_locks() call.

16 years agomds: rdlock filelock during readdir
Sage Weil [Thu, 14 May 2009 23:31:29 +0000 (16:31 -0700)]
mds: rdlock filelock during readdir

This ensures any uncommitted creates/whatevers in the directory flush
(and we see them!).

16 years agomds: no rdlock in filelock LOCK state
Sage Weil [Thu, 14 May 2009 23:30:51 +0000 (16:30 -0700)]
mds: no rdlock in filelock LOCK state

Otherwise we get wrlocks AND rdlocks at the same time, which is clearly
problematic.  Der.

Also fix _rdlock_kick to not simple_lock, since that won't help us.

16 years agomds: drain wrlocks before going from LOCK->SYNC in file_eval
Sage Weil [Thu, 14 May 2009 23:10:27 +0000 (16:10 -0700)]
mds: drain wrlocks before going from LOCK->SYNC in file_eval

This avoids excessive waits for the journal to flush on lock->sync
when a client request holds a wrlock.  There's no reason to hurry.. if
someone needs it sync we can to the transition then; otherwise, it'll
happen when the wrlock is dropped.

16 years agoclass: basic api for class, call class_init when class loads
Yehuda Sadeh [Thu, 14 May 2009 22:55:31 +0000 (15:55 -0700)]
class: basic api for class, call class_init when class loads

16 years agorados: define rdcall, wrcall on arbitrary class, method
Sage Weil [Thu, 14 May 2009 22:51:22 +0000 (15:51 -0700)]
rados: define rdcall, wrcall on arbitrary class, method

16 years agoosd: make classhandler requests async
Sage Weil [Thu, 14 May 2009 22:29:31 +0000 (15:29 -0700)]
osd: make classhandler requests async

Handle deferred request queues in OSD, class loading and state
in ClassHandler.

16 years agoclass: rename ClassList -> ClassLibrary
Sage Weil [Thu, 14 May 2009 21:34:21 +0000 (14:34 -0700)]
class: rename ClassList -> ClassLibrary

16 years agoclass: rename ClassLibrary -> ClassInfo
Sage Weil [Thu, 14 May 2009 21:33:06 +0000 (14:33 -0700)]
class: rename ClassLibrary -> ClassInfo

16 years agorados: only export rados_* from librados.so
Sage Weil [Thu, 14 May 2009 21:18:32 +0000 (14:18 -0700)]
rados: only export rados_* from librados.so

16 years ago.gitignore update
Sage Weil [Thu, 14 May 2009 21:23:40 +0000 (14:23 -0700)]
.gitignore update

16 years agomds: break CAP_RDCACHE into CAP_SHARED, CAP_CACHE
Sage Weil [Thu, 14 May 2009 20:57:25 +0000 (13:57 -0700)]
mds: break CAP_RDCACHE into CAP_SHARED, CAP_CACHE

FILE_CAP_RDCACHE was being used to mean both read access to the
file attributes (size, mtime) and permission to retain cached
data.  That lead to an incorrect definition of the filelock in the
mds, and in turn bugs with multiple client access.  These are now
CAP_*_SHARED (all locks) and CAP_FILE_CACHE (filelock only).

The main observed symptom was a client creating files in a
directory and a second client not seeing them, due to RDCACHE not
being revoked and rdcache_gen thus not incrementing, allowing a
dcache readdir to proceed.

16 years agokclient: don't skip EXPIREABLE caps
Sage Weil [Thu, 14 May 2009 20:47:31 +0000 (13:47 -0700)]
kclient: don't skip EXPIREABLE caps

EXPIREABLE is obsolete.  We need to reconnect _all_ caps!

16 years agoclass: can use ceph utility to add classes
Yehuda Sadeh [Thu, 14 May 2009 19:55:45 +0000 (12:55 -0700)]
class: can use ceph utility to add classes

e.g. ./ceph class add foo 1 --in-data=foo.so

16 years agokclient: fix crush decoding for recent changes
Sage Weil [Thu, 14 May 2009 00:02:44 +0000 (17:02 -0700)]
kclient: fix crush decoding for recent changes

16 years agorev osd protocol, disk format to reflect crush changes
Sage Weil [Wed, 13 May 2009 23:49:05 +0000 (16:49 -0700)]
rev osd protocol, disk format to reflect crush changes

16 years agocrush: fix crush_perm_choose; optimize r=0 case.
Sage Weil [Wed, 13 May 2009 23:46:20 +0000 (16:46 -0700)]
crush: fix crush_perm_choose; optimize r=0 case.

This was misbehaving for x=0, among other things.

Avoid filling in perm array for the initial (p)r=0 call.  We only
need to do a full permutation for subsequent r.

16 years agoclass: handle class_set messages
Yehuda Sadeh [Wed, 13 May 2009 23:39:17 +0000 (16:39 -0700)]
class: handle class_set messages

16 years agoclass: osd loads class
Yehuda Sadeh [Wed, 13 May 2009 22:11:39 +0000 (15:11 -0700)]
class: osd loads class

16 years agoclass: osd can request and receive class data
Yehuda Sadeh [Wed, 13 May 2009 21:52:52 +0000 (14:52 -0700)]
class: osd can request and receive class data

16 years agopsim: count result set sizes
Sage Weil [Wed, 13 May 2009 21:56:28 +0000 (14:56 -0700)]
psim: count result set sizes

16 years agocrush: fall back to exhaustive bucket search for any bucket type
Sage Weil [Wed, 13 May 2009 21:55:07 +0000 (14:55 -0700)]
crush: fall back to exhaustive bucket search for any bucket type

If we don't get a bucket-specific choice in 5 tries, do an
exhaustive search (based on a random permutation).  Only then give
up on the bucket and retry descent.

Note that the search-based fallback does not honor weighting at
all.

16 years agocrush: ditch prime number theorem; generate random permutation on the fly
Sage Weil [Wed, 13 May 2009 21:07:45 +0000 (14:07 -0700)]
crush: ditch prime number theorem; generate random permutation on the fly

16 years agocrush: improve uniform selection a bit
Sage Weil [Wed, 13 May 2009 19:02:45 +0000 (12:02 -0700)]
crush: improve uniform selection a bit

Shift to a new prime (and thus permutation) every few r.

16 years agoMerge branch 'c3' into rados
Sage Weil [Tue, 12 May 2009 15:07:51 +0000 (08:07 -0700)]
Merge branch 'c3' into rados

16 years agotestrados: C, not C++
Sage Weil [Tue, 12 May 2009 15:07:00 +0000 (08:07 -0700)]
testrados: C, not C++

16 years agolibrados: fix up #includes; use C for testrados
Sage Weil [Tue, 12 May 2009 04:16:02 +0000 (21:16 -0700)]
librados: fix up #includes; use C for testrados