Commit Graph

11437 Commits

Author SHA1 Message Date
Sage Weil
5ef975629b Merge branch 'osd_lost_objects' into unstable 2010-10-06 09:45:16 -07:00
Sage Weil
1f94a8fed5 monclient: fix leaks in build_initial_monmap address lookup
Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 22:04:13 -07:00
Sage Weil
7935e30e34 monclient: fix off-by-one buffer overrun
Still leaked, though.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 22:02:55 -07:00
Sage Weil
16f053f7f5 addr_parsing: remove unused mount_path logic
This was breaking parsing if any of the hosts included a ":port" too.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 22:01:34 -07:00
Sage Weil
b277497986 Merge remote branch 'origin/testing' into unstable 2010-10-05 16:47:37 -07:00
Sage Weil
6a53d7337c Merge branch 'unstable' of ssh://ceph.newdream.net/home/sage/ceph.newdream.net/git/ceph into unstable 2010-10-05 16:47:34 -07:00
Yehuda Sadeh
109dcdf6aa cdebugpack: add a utility to generate a debug package 2010-10-05 16:26:58 -07:00
Sage Weil
4bc4cba575 osd: ignore info queries on deleting pgs
Since we cancel deletion on pg change, we will only receive these from
old primaries, so we can safely ignore.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 15:47:13 -07:00
Sage Weil
a4eb59969a osd: cancel deletion on pg change
If the primary changes, cancel deletion so that the new primary has the
benefit of considering whether they need anything we have.  Before we were
only canceling if our role changed, but that makes little sense.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 15:47:08 -07:00
Sage Weil
ed2eee54e6 config: fix address list parsing
Skip past comma, whitespace.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 15:47:04 -07:00
Colin Patrick McCabe
414bc4f9fb cmon: better error handling
If we can't create the mon0/magic file, show an error message rather
than calling assert(). These cases are probably cluster configuration
problems.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
2010-10-05 15:44:25 -07:00
Yehuda Sadeh
bcf1bdef56 conf: cconf return default values from config.cc if not found 2010-10-05 15:02:01 -07:00
Sage Weil
12373a6e75 mds: allow do_null_snapflush on multiversion inodes
The _do_snap_update() can handle a multiversion inode.  Behave when
_do_null_snapflush() encounters one.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 12:38:43 -07:00
Yehuda Sadeh
e064796bea signal handlers: be more elaborate about caught signals 2010-10-05 12:26:17 -07:00
Sage Weil
22c38466d0 mds: don't call mrk_dirty_rstat for base/root inodes
Base inodes have no parent.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 12:16:02 -07:00
Sage Weil
d600596aaf mds: fix EMetaBlob dir_layout lifecycle
Initialize, delete pointer.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 11:54:25 -07:00
Sage Weil
11a24f5e91 mds: set root dir_layout during mkfs
Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 11:54:25 -07:00
Sage Weil
09b2db7368 mds: use helper to update inode from EMetaBlob during replay
Removes 3 copies of this code.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 11:54:25 -07:00
Sage Weil
f5958ad52e mds: set dir layout during replay
Need to copy layout from the EMetaBlob::fullbit into the inode.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 11:54:25 -07:00
Sage Weil
cdc2b89869 mds: set root inode default_file_layout on mkfs
Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 11:54:24 -07:00
Sage Weil
994525adf5 mds: fix typo in EMetaBlob encoder
This was wrongly setting the dir_layout_exists flag to true.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 11:54:24 -07:00
Sage Weil
50d91f628f osd: less chatty in log about caps 2010-10-05 11:54:24 -07:00
Sage Weil
95e273a667 mds: zero inode layout for dirs
These aren't used for anything.

Also rename the default_dir_layout to _log_, since that's all that we now
use it for.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 11:54:24 -07:00
Yehuda Sadeh
3e56ac4b37 dump backtrace when getting sigsegv and sigabrt 2010-10-05 12:05:00 -07:00
Greg Farnum
e4d86f3163 client: Fix truncate_seq/truncate_length initialization.
Initializing to 0 was causing file_to_extents to get called on every inode
since the MDS initializes truncate_seq to 1 and truncate_length to -1.
This revealed itself as a crash on directory inodes, which have their
layouts zeroed since merging the file_layouts branch.
To make clearer, assert that anything being truncated is a file inode.
2010-10-05 11:20:26 -07:00
Greg Farnum
ede37634c8 mds: fix LocalLock xlocking by replacing default 2010-10-05 11:20:26 -07:00
Sage Weil
f4581e0d96 mds: fix ESession/ESessions event id type again
Not sure how many times we've screwed this one up!

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 10:12:59 -07:00
Sage Weil
ff463df55d filestore: drop unused parse_coll() declaration
Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-05 09:57:18 -07:00
Sage Weil
c3d3b42260 Merge branch 'testing' into unstable
Conflicts:
	src/mds/Locker.cc
2010-10-04 11:21:51 -07:00
Greg Farnum
7aab70ddc4 Merge branch 'file_layouts' into unstable
Conflicts:
	src/mds/CInode.cc
	src/mds/CInode.h
	src/mds/MDCache.cc
	src/mds/SimpleLock.h
2010-10-04 11:08:14 -07:00
Greg Farnum
2b4eb4ab7b add set layout ops to ceph_strings 2010-10-04 11:04:50 -07:00
Greg Farnum
8938f27127 cephfs: Wrote and committed cephfs 2010-10-04 11:04:45 -07:00
Greg Farnum
45fa4a2f4e mds: Conditionally encode default dir layout.
Previously we unconditionally encoded the standard layout, which
on a directory inode is meaningless. So, use that spot to fill
in the default dir layout, if it exists. Otherwise, zero-fill.
This lets us display default directory layouts without changing
the protocol, which is good.
2010-10-04 11:04:45 -07:00
Greg Farnum
212c1890ba client: update test_ioctls to test new stuff 2010-10-04 11:04:40 -07:00
Colin Patrick McCabe
b588983272 always throw by value; always catch by const ref
Always throw exceptions by value rather than as pointers. Always catch
exceptions as const references to avoid unecessary copying. This fixes a
few minor memory leaks and should simplify handling exceptions in the
future.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
2010-10-04 10:50:19 -07:00
Greg Farnum
fbbf44810f client: import ioctl header from ceph-client 2010-10-04 10:42:45 -07:00
Greg Farnum
64c3556d48 mds: fix setlayout truncation check.
The trunc_seq is initialized to 1 in prepare_new_inode.
2010-10-04 10:42:45 -07:00
Greg Farnum
cb7b360159 mds: misc fixes for dir default layout projection 2010-10-04 10:42:45 -07:00
Greg Farnum
2d194c67f1 mds: If a projected inode has a dir_layout, we now encode it to disk. 2010-10-04 10:42:45 -07:00
Greg Farnum
42c7ed44c0 mds: Implement op CEPH_MDS_OP_SETDIRLAYOUT.
Implement handler functions, add to inode projection machinery, etc.
2010-10-04 10:42:36 -07:00
Greg Farnum
79d18933d1 mds: zero out the layout in handle_client_setlayout
Could have led to an invalid layout by mistake.
2010-10-04 10:42:36 -07:00
Greg Farnum
54e95fed28 mds: Look for and make use of directory tree default layouts, if existent. 2010-10-04 10:42:21 -07:00
Sage Weil
01ae1be288 filestore: make list_collections() list all dirs
coll_t is now unstructured; list all dirs besides '.' and '..'.

The old coll_t::parse() was broken.  Remove it.  Fixes
a4138c9050.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-04 08:50:31 -07:00
Sage Weil
940354b986 osd: make load_pgs verbose
Show what it's skipping any why.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-04 08:44:38 -07:00
Greg Farnum
0b7c1afc43 mds: fix setlayout truncation check.
The trunc_seq is initialized to 1 in prepare_new_inode.
2010-10-01 16:22:56 -07:00
Greg Farnum
c9e695598d mds: zero out the layout in handle_client_setlayout
Could have led to an invalid layout by mistake.
2010-10-01 16:21:50 -07:00
Greg Farnum
8a5008b813 mds: remove unused CompatSet mds_features.
All the MDS features are stored in the MDSMap::mdsmap_compat
2010-10-01 16:21:44 -07:00
Sage Weil
f389afc9a8 mon: add 'mds fail N' command
Manually mark an mds rank as failed.  The daemon should kill itself when
it finds out.

Note that this doesn't do any sanity checks, so it can also be used to
adjust state in an otherwise inconsistent mdsmap due to other bugs (one
where, say, an mds in up but has no info, or not up but not in the failed
set.)

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-01 15:55:03 -07:00
Colin Patrick McCabe
cdf43d543e buffer::list::copy: complain about invalid strings
Raise an exception when someone feeds us a "string" that has embedded
NULL characters.

Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
2010-10-01 14:12:19 -07:00
Sage Weil
e87f751b3d mds: fix and use add_replica_stray() helper for handle_dentry_unlink
Eliminate duplicate code by using (and fixing) the helper.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-10-01 12:52:43 -07:00