Commit Graph

10879 Commits

Author SHA1 Message Date
Sage Weil
c30fde48ca objectcacher: fix use-after-free
Move waiter check above close_object(ob) call.
2010-09-08 15:28:21 -07:00
Sage Weil
3eb332aa88 mount: fix scope of secret[]
We use value pointer outside of this block; move declaration up to function
level.
2010-09-08 15:26:28 -07:00
Sage Weil
066a588c14 crushtool: fix bucket type array bound check 2010-09-08 15:24:29 -07:00
Sage Weil
9434b12a02 rados: fix delete[] in aio_bencher 2010-09-08 15:22:17 -07:00
Sage Weil
d7a8bbb301 Merge branch 'uclient_readdir' into testing 2010-09-08 15:14:55 -07:00
Sage Weil
1de5617720 client: move readdir code around 2010-09-08 14:44:26 -07:00
Sage Weil
c8be0a5a86 client: reimplement getdir() with readdir_r_cb()
More efficient.
2010-09-08 14:10:31 -07:00
Sage Weil
d558674934 client: reimplement readdir
Reimplement core readdir (readdir_r_cb), using kclient as a template.
Reimplement all other readdir variants in terms of readdir_r_cb.

Main change is support for frag chunking, and hopefully lots of subtle bugs
that have been fixed in the kclient code we're based on.
2010-09-08 14:02:43 -07:00
Sage Weil
eefabc7bde cfuse: use readdir_r_cb 2010-09-08 11:32:00 -07:00
Sage Weil
561f302207 uclient: implement readdir_r_cb (callback based readdir)
This lets us know whether the caller is able to consume an entry before
advancing our position.
2010-09-08 11:31:19 -07:00
Sage Weil
c2c09be383 Merge branch 'mds_replay_lock_states' into testing 2010-09-07 12:12:41 -07:00
Sage Weil
86986925fc mds: rename process_reconnected_caps() 2010-09-07 12:10:27 -07:00
Sage Weil
ae7dcdfb8c mds: make is_dirty() const in parent and child
Otherwise we're overriding the wrong method!  Der.
2010-09-07 12:10:27 -07:00
Sage Weil
f6f8e5cf20 mds: choose lock states for nestlock and dftlock too
All scatterlocks need it, in case we replay dirty scatterlock data.
2010-09-07 12:10:27 -07:00
Sage Weil
4205b7deb5 mds: choose lock states on all inodes, not just those with caps
This is necessary because we want to select lock states for inodes with
no caps that got replayed scatterlock dirty state from the journal.
2010-09-07 12:10:27 -07:00
Sage Weil
a478ab5ffb mds: choose LOCK if !replicated and dirty scatterlock 2010-09-07 12:10:27 -07:00
Sage Weil
c80a1d02a3 mds: fix bad iterator usage in process_reconnected_caps()
We use p->second, so don't increment p++ early in the loop block.
2010-09-07 12:10:27 -07:00
Sage Weil
f24cee3438 ceph v0.21.2 2010-08-26 15:27:13 -07:00
Sage Weil
412a1c8b06 osd: less log noise 2010-08-26 12:56:40 -07:00
Sage Weil
c3b97ffc1f osd: mark down old _from connections too; and fix old _from debug output 2010-08-26 12:31:53 -07:00
Sage Weil
41cd1ea5b4 osd: don't mark down old _to peers that are still _from peers
It's harmless, but not ideal.
2010-08-26 12:31:53 -07:00
Sage Weil
d273c99d71 osd: always mark down old hb peers; send map update via cluster link
If we don't mark down the hb link immediately, we'll forget about it
because it won't be in the from or to set anymore, and if it does go down
later we'll end up with garbage in the logs.

Instead, always mark it down.  Since we want to share our map with old
peers that are still up, do that via the cluster link instead, which is
reliably marked down if/when the peer goes down.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-08-26 11:28:25 -07:00
Sage Weil
7d1179e656 filejournal: clean up journal initialization sequence, error codes, output
EOPNOTSUPP was getting returned to the user without much explanation.  This
should fix that!
2010-08-26 10:00:18 -07:00
Sage Weil
49636759b0 debian: don't need to add .git_version in release script 2010-08-25 14:46:36 -07:00
Sage Weil
7fde620487 makefile: include .git_version in tarball 2010-08-25 14:45:55 -07:00
Sage Weil
b33c0511f9 mon: error out gracefully when we can't read the magic 2010-08-25 14:42:06 -07:00
Henry C Chang
d636223b29 msgr: release dispatch_throttle on reset connection
Signed-off-by: Henry C Chang <henry_c_chang@tcloudcomputing.com>
Signed-off-by: Sage Weil <sage@newdream.net>
2010-08-22 21:39:35 -07:00
Sage Weil
f669adb0ab mds: drop old thrash_exports time limit 2010-08-20 09:57:07 -07:00
Sage Weil
cfdc5f0ef2 osdmaptool: print useful error instead of crashing if osdmap is corrupt 2010-08-20 09:31:49 -07:00
Sage Weil
ec80b10f28 crush: return error instead of BUGing on bad forcefed mapping
The forcefed mapping relies on a parent map.  However, the current
implementation assumes that the parent mapping is unique for all rules. If
that is not the case (i.e., some osd exists in multiple hierarchies) then
we cannot assert that the TAKE matches the calculated force_context.

For now, we can just fail the mapping in that case (we don't use forcefed
mappings yet).  The real solution is probably to define parent maps for
all possible hierarchies (i.e., starting at each unique TAKE starting
point).

Signed-off-by: Sage Weil <sage@newdream.net>
2010-08-20 09:26:34 -07:00
Sage Weil
80c8902d78 mds: return error to client on invalid mds op
e.g., if the client sends a filelock request and we don't support it :)
2010-08-19 22:01:54 -07:00
Sage Weil
4007669c46 mds: fix ENOTEMPTY checking on rmdir/rename
We can't trust the inode rstat size without holding the locks.  We can
look at our auth frags and though without fear of a false positive
ENOTEMPTY, however.

Rename the function, introduce a helper for the locked check, update
comments, etc.
2010-08-19 21:47:19 -07:00
Sage Weil
22bd8376a8 osd: disable potentially dangerous dead code
Greg got a segfault accessing the OSDOP& first reference. Not clear why,
but this whole block is dead code.
2010-08-19 16:06:24 -07:00
Sage Weil
d0f6991eb6 osd: carry ondisk write lock for cloned objects
This fixes a race when reading and deleting objects, as evidenced by

 cp bigfile a
 mkdir .snap/foo
 rmdir a
 diff bigfile .snap/foo/a    <-- reads cloned object before it hits disk

Reproduced by snaptest-snap-rm-cmp.sh.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-08-19 09:52:55 -07:00
Sage Weil
e8f56d3294 auth: fix skipping of ~/ if $HOME subst fails
We were breaking out of the loop entirely, and failing to check the rest
of the items in the path list.  Doh!
2010-08-18 12:57:13 -07:00
Sage Weil
165c5f274e client: fix xattr cap writeback 2010-08-13 15:02:12 -07:00
Sage Weil
0be7dcf5e8 client: fix capsnap writeback of uid/gid/mode/xattrs
Some metadata wasn't making it into CapSnap and was subsequently getting
written back zeroed to the MDS.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-08-13 15:02:07 -07:00
Sage Weil
c5e5237f3e filestore: fix throttling on journal, op_queue for parallel and writeahead 2010-08-12 13:10:28 -07:00
Sage Weil
c3e0915b89 filestore: fix race in op enqueuing to ensure throttle limit is honors 2010-08-12 13:10:23 -07:00
Sage Weil
bfee1fa36a objectstore: fix transaction get_num_bytes
The separate bytes field isn't used; use encoded bytes count for now.
2010-08-12 13:10:19 -07:00
Sage Weil
a3eefd5760 msgr: don't leak message when sending to a closed connection 2010-08-12 11:55:19 -07:00
Sage Weil
a406cfab39 osd: log push ops as push, not pull 2010-08-12 11:55:14 -07:00
Sage Weil
d00f43aa7e logger: fix logger counter reset
Reset inc keys after each line; reset all keys on full reset.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-08-12 11:55:03 -07:00
Sage Weil
7aa332cd82 ceph v0.21.1 2010-08-11 14:59:19 -07:00
Sage Weil
acd17a5928 Makefile: include logrotate.conf in tarball 2010-08-11 12:29:46 -07:00
Sage Weil
bce3a63089 mds: fix send_message_client_counted helper
Don't use the outgoing message connection (usually there is none!).. use
the connection argument.  Der.  Broken since 6d770abe.
2010-08-06 10:08:01 -07:00
Sage Weil
7f9cef01c4 makefile: define docdir for old automake versions
Notably centos5.

Reported-by: Thomas Mueller <thomas@chaschperli.ch>
Signed-off-by: Sage Weil <sage@newdream.net>
2010-08-05 07:47:32 -07:00
Haifeng Liu
773dd82517 monmaptool: man page typo fix
Signed-off-by: Sage Weil <sage@newdream.net>
2010-08-05 07:44:24 -07:00
Sage Weil
6f7523a0a4 rados: -i and -o are still there for other commands
Signed-off-by: Sage Weil <sage@newdream.net>
2010-08-04 10:01:23 -07:00
Sage Weil
a7038da72d ceph.spec.in: fix docdir paths
_docdir is /usr/share/doc, not /usr/share/doc/ceph (as it is with debian).
2010-08-04 09:56:05 -07:00