]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
14 years agocfuse recognizing same xattr subset as kernel client
Brian Chrisman [Fri, 8 Apr 2011 22:42:16 +0000 (15:42 -0700)]
cfuse recognizing same xattr subset as kernel client

Hopefully this patch is formatted/signed off correctly.

Signed-off-by: Brian Chrisman <brchrisman@gmail.com>
14 years agoTestSnaps.cc: allow client id to be overridden
Samuel Just [Fri, 8 Apr 2011 23:13:14 +0000 (16:13 -0700)]
TestSnaps.cc: allow client id to be overridden

CEPH_CLIENT_ID environment variable if set now overrides the rados
client id for testsnaps

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agorgw: utility, not daemon
Sage Weil [Fri, 8 Apr 2011 20:11:45 +0000 (13:11 -0700)]
rgw: utility, not daemon

- we don't want to open a log file
- we don't want to print a stability warning
- we don't want to fork (not that we do, but anyway!)

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoCDir: check_rstats will now print out dir stats whenever there's a bug.
Greg Farnum [Fri, 8 Apr 2011 18:17:48 +0000 (11:17 -0700)]
CDir: check_rstats will now print out dir stats whenever there's a bug.

Previously it only printed out dir stats at high debug levels, which
meant you could get output of the dentries without seeing what the
totals were supposed to be!

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agoobsync: preserve ACLs
Colin Patrick McCabe [Fri, 8 Apr 2011 00:03:11 +0000 (17:03 -0700)]
obsync: preserve ACLs

Preserve ACLs by default. Also add --no-preserve-acls option to disable
this behavior.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoobsync: escape obj names between S3 and local FS
Colin Patrick McCabe [Thu, 7 Apr 2011 22:16:15 +0000 (15:16 -0700)]
obsync: escape obj names between S3 and local FS

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoosd: futz with stat again.
Greg Farnum [Thu, 7 Apr 2011 23:17:20 +0000 (16:17 -0700)]
osd: futz with stat again.

We really need to fill in the result, even if it's that the object
doesn't exist!

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agotest/osd: Add latency stat collection to TestSnaps.cc/RadosModel.h
Samuel Just [Tue, 5 Apr 2011 19:04:45 +0000 (12:04 -0700)]
test/osd: Add latency stat collection to TestSnaps.cc/RadosModel.h

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agoReplicatedPG: fix error in snap_trimmer
Samuel Just [Thu, 7 Apr 2011 21:38:48 +0000 (14:38 -0700)]
ReplicatedPG: fix error in snap_trimmer

newsnaps continued to be used after it was swapped with coi.snaps.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agoosd: more futzing with stat
Sage Weil [Thu, 7 Apr 2011 21:57:41 +0000 (14:57 -0700)]
osd: more futzing with stat

We can get here when the object doesn't exist if the client specifies
may read and may write (in this case, Filer::probe).  Look at the exists
bit in the object context.  If the object is supposed to exist, we should never get ENOENT from stat.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agolibceph: Make header usable from plain old C.
Tommi Virtanen [Thu, 7 Apr 2011 18:47:35 +0000 (11:47 -0700)]
libceph: Make header usable from plain old C.

Fixes: #986
Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agoradosgw: Remove PHP setting from VirtualHost documentation
Wido den Hollander [Thu, 7 Apr 2011 10:23:34 +0000 (12:23 +0200)]
radosgw: Remove PHP setting from VirtualHost documentation

Signed-off-by: Wido den Hollander <wido@widodh.nl>
Signed-off-by: Sage Weil <sage@newdream.net>
14 years agotest-obsync.py: add test for --follow-symlinks
Colin Patrick McCabe [Thu, 7 Apr 2011 21:22:15 +0000 (14:22 -0700)]
test-obsync.py: add test for --follow-symlinks

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agotest-obsync: some fixes, be more verbose
Colin Patrick McCabe [Thu, 7 Apr 2011 21:10:29 +0000 (14:10 -0700)]
test-obsync: some fixes, be more verbose

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoboto_tool.py: fix rmbucket
Colin Patrick McCabe [Thu, 7 Apr 2011 17:53:37 +0000 (10:53 -0700)]
boto_tool.py: fix rmbucket

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoobsync: add --follow-symlinks
Colin Patrick McCabe [Thu, 7 Apr 2011 17:25:10 +0000 (10:25 -0700)]
obsync: add --follow-symlinks

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoReplicatedPG: tolerate ENOENT when statting.
Greg Farnum [Thu, 7 Apr 2011 21:03:39 +0000 (14:03 -0700)]
ReplicatedPG: tolerate ENOENT when statting.

This got broken in commit f842bcf893e42a4cefda07d0bbf86303b17ddcd7
so that on any MDS restart the OSD would die. Bad OSD! Bad!

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agoclitest: Disabled problematic rados test, for now.
Tommi Virtanen [Thu, 7 Apr 2011 19:03:36 +0000 (12:03 -0700)]
clitest: Disabled problematic rados test, for now.

Failed on gitbuilder due to odd libtool interaction.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agoclitest: Add more simple basic functionality tests.
Tommi Virtanen [Thu, 7 Apr 2011 18:12:38 +0000 (11:12 -0700)]
clitest: Add more simple basic functionality tests.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agolibrados-config: Distribute the librados-config.8 manpage.
Tommi Virtanen [Thu, 7 Apr 2011 17:53:05 +0000 (10:53 -0700)]
librados-config: Distribute the librados-config.8 manpage.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agolibrados: Stop bundling the now-unused headers.
Tommi Virtanen [Thu, 7 Apr 2011 16:39:48 +0000 (09:39 -0700)]
librados: Stop bundling the now-unused headers.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agobuffer: Move atomic.h include from buffer.h to buffer.cc
Tommi Virtanen [Wed, 6 Apr 2011 21:03:02 +0000 (14:03 -0700)]
buffer: Move atomic.h include from buffer.h to buffer.cc

Fix up other places that failed to include atomic.h even
if they used atomic_t directly.

Fixes: #979
Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agobuffer, atomic: Explicitly include assert.h where asserts are used.
Tommi Virtanen [Thu, 7 Apr 2011 00:00:39 +0000 (17:00 -0700)]
buffer, atomic: Explicitly include assert.h where asserts are used.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agobuffer: Move buffer::raw* out of the header.
Tommi Virtanen [Wed, 6 Apr 2011 20:42:20 +0000 (13:42 -0700)]
buffer: Move buffer::raw* out of the header.

This paves the way for getting librados.hpp clean of atomic_t
leaking to client code.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agobuffer: Move functions touching buffer::raw internals into buffer.cc
Tommi Virtanen [Wed, 6 Apr 2011 20:53:42 +0000 (13:53 -0700)]
buffer: Move functions touching buffer::raw internals into buffer.cc

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agobuffer: Move functions touching buffer::raw internals into buffer.cc
Tommi Virtanen [Wed, 6 Apr 2011 20:53:25 +0000 (13:53 -0700)]
buffer: Move functions touching buffer::raw internals into buffer.cc

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agobuffer: Move functions touching buffer::raw internals into buffer.cc
Tommi Virtanen [Wed, 6 Apr 2011 20:51:23 +0000 (13:51 -0700)]
buffer: Move functions touching buffer::raw internals into buffer.cc

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agobuffer: Move functions touching buffer::raw internals into buffer.cc
Tommi Virtanen [Wed, 6 Apr 2011 20:50:46 +0000 (13:50 -0700)]
buffer: Move functions touching buffer::raw internals into buffer.cc

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agobuffer: Move functions touching buffer::raw internals into buffer.cc
Tommi Virtanen [Wed, 6 Apr 2011 20:48:59 +0000 (13:48 -0700)]
buffer: Move functions touching buffer::raw internals into buffer.cc

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agobuffer: Move functions touching buffer::raw internals into buffer.cc
Tommi Virtanen [Wed, 6 Apr 2011 20:48:02 +0000 (13:48 -0700)]
buffer: Move functions touching buffer::raw internals into buffer.cc

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agobuffer: Move buffer accounting into functions, don't expose atomic_t.
Tommi Virtanen [Wed, 6 Apr 2011 18:41:57 +0000 (11:41 -0700)]
buffer: Move buffer accounting into functions, don't expose atomic_t.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agopybind: Distribute the test script, too. Fixes "make distcheck".
Tommi Virtanen [Thu, 7 Apr 2011 17:26:13 +0000 (10:26 -0700)]
pybind: Distribute the test script, too. Fixes "make distcheck".

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agoRevert "mds: rip out rename linkmerge support"
Sage Weil [Wed, 6 Apr 2011 23:34:36 +0000 (16:34 -0700)]
Revert "mds: rip out rename linkmerge support"

This reverts commit d467fbfd1714ef04faf41e604d6a78e33ef7fa10.

The linkmerge stuff _is_ needed for reintegrating multi-linked stray
inodes back into the hierarchy.  E.g.,

 touch a
 ln a b
 rm a

The MDS will want to renamed the stray inode to the b dentry.

Conflicts:

src/mds/Server.cc

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoconfig: complain if --name gives an invalid type
Colin Patrick McCabe [Wed, 6 Apr 2011 19:32:39 +0000 (12:32 -0700)]
config: complain if --name gives an invalid type

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoConfFile: add support for backslashes
Colin Patrick McCabe [Wed, 6 Apr 2011 18:51:07 +0000 (11:51 -0700)]
ConfFile: add support for backslashes

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agopybind: install ceph-pybind-test on debug builds
Colin Patrick McCabe [Wed, 6 Apr 2011 00:45:11 +0000 (17:45 -0700)]
pybind: install ceph-pybind-test on debug builds

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoconf: small code cleanups
Colin Patrick McCabe [Tue, 5 Apr 2011 21:36:24 +0000 (14:36 -0700)]
conf: small code cleanups

md_config_t: store a ConfFile by value rather than by pointer.

ConfFile::parse_file: negate error when returning errors.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoosd: fix signed/unsigned comp
Sage Weil [Tue, 5 Apr 2011 21:38:48 +0000 (14:38 -0700)]
osd: fix signed/unsigned comp

warning: osd/ReplicatedPG.cc:1208: comparison between signed and unsigned integer expressions

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoConfUtils: new parser
Colin Patrick McCabe [Mon, 4 Apr 2011 20:06:35 +0000 (13:06 -0700)]
ConfUtils: new parser

A new parser for ConfUtils that outputs a list of syntax errors when
files are wrong.

It also checks that configuration files are valid utf-8 and don't contain
embedded nulls.

Also added a few more unit tests.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoosd: simplify stat
Sage Weil [Tue, 5 Apr 2011 19:36:10 +0000 (12:36 -0700)]
osd: simplify stat

We don't actually need to stat the object (again) since we have the size
(and mtime) in the object_info_t.  Keep the existing stat in there, tho,
and assert the answer matches for the time being, since I saw behavior
that suggested they were out of sync.  See #933.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agolibrbd: remove unnecessary includes
Josh Durgin [Tue, 5 Apr 2011 04:10:09 +0000 (21:10 -0700)]
librbd: remove unnecessary includes

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agoconfig: expand metavariables when needed
Colin Patrick McCabe [Mon, 4 Apr 2011 20:35:11 +0000 (13:35 -0700)]
config: expand metavariables when needed

md_config_t::get_val_from_config_file now has an option that causes it
to expand metavariables. This is necessary because many callers want
metavariables to be expanded in the results they get back.

md_config_t::set_val should expand metavariables.

Remove some unecessary typecasts from
md_config_t::get_val_from_config_file()

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoconfig: add ability to complain about parse errs
Colin Patrick McCabe [Fri, 1 Apr 2011 23:52:02 +0000 (16:52 -0700)]
config: add ability to complain about parse errs

Change the ConfUtils interface so that we have a way to return
information about parse errors.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoconfutils: test unicode parsing
Colin Patrick McCabe [Fri, 1 Apr 2011 23:09:27 +0000 (16:09 -0700)]
confutils: test unicode parsing

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoconfig: fix metavariable substitution
Colin Patrick McCabe [Mon, 4 Apr 2011 18:12:07 +0000 (11:12 -0700)]
config: fix metavariable substitution

common_init: Do metavariable expansion as a separate step after the
configuration, argv, and env have been read. This ensures that we get
the correct values for the metavariables.

Change librados to follow suit.

config: Enforce the "no metavariables in default values" restriction.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoconfig: remove some unecessary g_conf references
Colin Patrick McCabe [Mon, 4 Apr 2011 16:25:37 +0000 (09:25 -0700)]
config: remove some unecessary g_conf references

Class methods of md_config_t should refer to the enclosing config.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agocclass: add bindir option
Josh Durgin [Fri, 1 Apr 2011 23:59:28 +0000 (16:59 -0700)]
cclass: add bindir option

Ceph binaries don't live in /usr/local on autotest machines.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agoclient: close snaprealm on last cap removal during reconnect
Sage Weil [Fri, 1 Apr 2011 23:21:27 +0000 (16:21 -0700)]
client: close snaprealm on last cap removal during reconnect

The invariant is is_any_caps() IFF in->snaprealm, where is_any_caps() is
!caps.empty || exporting_mds >= 0.  If we clear exporting_mds and caps can
be non-empty, we need to drop the snaprealm reference.

Fixes crash like

client/Client.cc: In function 'void Client::add_update_cap(Inode*, int, uint64_t, unsigned int, unsigned int, unsigned int, inodeno_t, int)', in thread '0x7f213df10700'
client/Client.cc: 2244: FAILED assert(in->snaprealm == 0)
client/Client.cc: In function 'void Client::add_update_cap(Inode*, int, uint64_t, unsigned int, unsigned int, unsigned int, inodeno_t, int)', in thread '0x7f213df10700'
client/Client.cc: 2244: FAILED assert(in->snaprealm == 0)
 ceph version 0.25-570-g8ea9380 (commit:8ea938000624b5d67237b52cceee83b04d310d3c)
 1: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x53) [0x7bd566]
 2: (Client::add_update_cap(Inode*, int, unsigned long, unsigned int, unsigned int, unsigned int, inodeno_t, int)+0xe6) [0x64af82]
 3: (Client::add_update_inode(InodeStat*, utime_t, int)+0xca2) [0x63e1ec]
 4: (Client::insert_trace(MetaRequest*, utime_t, int)+0x5cf) [0x63f4cb]
 5: (Client::handle_client_reply(MClientReply*)+0x915) [0x6448c7]
 6: (Client::ms_dispatch(Message*)+0x167) [0x644d5b]
 7: (Messenger::ms_deliver_dispatch(Message*)+0x63) [0x62e911]
 8: (SimpleMessenger::dispatch_entry()+0x6fd) [0x61ace1]
 9: (SimpleMessenger::DispatchThread::entry()+0x2c) [0x610b90]
 10: (Thread::_entry_func(void*)+0x23) [0x62d7f3]
 11: (()+0x68ba) [0x7f21418e98ba]
 12: (clone()+0x6d) [0x7f21407e502d]
 ceph version 0.25-570-g8ea9380 (commit:8ea938000624b5d67237b52cceee83b04d310d3c)

triggered by an MDS reconnect on a 3-node cluster.  (Workload in this case
was just csyn --syn makedirs 7 7 7.)

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: fix trim_non_auth assert for base inodes
Sage Weil [Fri, 1 Apr 2011 22:51:41 +0000 (15:51 -0700)]
mds: fix trim_non_auth assert for base inodes

No parent dentry for base dirfrags (e.g., root).

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoMDS: change messenger name for replay mdses
Samuel Just [Tue, 29 Mar 2011 18:28:19 +0000 (11:28 -0700)]
MDS: change messenger name for replay mdses

This will cause read operations from standby mdses to be distinguishable
from those from the normal by changing the node name in the messenger.
Previously, the replay node would have the same name as the node it's
following.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agoconfutils: more parsing tests
Colin Patrick McCabe [Fri, 1 Apr 2011 22:58:18 +0000 (15:58 -0700)]
confutils: more parsing tests

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agojournaler: fix partial tail entry correction
Sage Weil [Fri, 1 Apr 2011 22:57:46 +0000 (15:57 -0700)]
journaler: fix partial tail entry correction

If we encounter a partial tail entry, we drop it by moving the write_pos
(end of journal) back to read_pos.  We also need to reset the read
state (read_buf, requested/received_pos) so that subsequent replay attempts
won't be horribly confused.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoconfig: Add confutils unit test
Colin Patrick McCabe [Fri, 1 Apr 2011 22:34:33 +0000 (15:34 -0700)]
config: Add confutils unit test

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agojournaler: fix signedness
Sage Weil [Fri, 1 Apr 2011 22:11:21 +0000 (15:11 -0700)]
journaler: fix signedness

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agojournaler: fix warning
Sage Weil [Fri, 1 Apr 2011 22:09:46 +0000 (15:09 -0700)]
journaler: fix warning

warning: osdc/Journaler.cc:682: comparison between signed and unsigned integer expressions

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: fix bounds on import
Sage Weil [Tue, 22 Mar 2011 21:47:15 +0000 (14:47 -0700)]
mds: fix bounds on import

The add_ambiguous_import() call was clobbering the bounds field for
EImportStart::replay(), screwing up the subtree auth adjustment.  Make the
argument const.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: rejoin dirfrags explicitly
Sage Weil [Fri, 18 Mar 2011 21:38:08 +0000 (14:38 -0700)]
mds: rejoin dirfrags explicitly

We need to rejoin dirfrag replicas explicitly.  We were doing only dentries,
but that won't necessarily include every dirfrag.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: set dir_auth between EImport{Start,Finish}
Sage Weil [Fri, 18 Mar 2011 21:39:04 +0000 (14:39 -0700)]
mds: set dir_auth between EImport{Start,Finish}

This ensures that try_trim_non_auth_subtree() doesn't throw out a subtree
we're in the midst of importing (during journal replay).

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: use try_trim_non_auth_subtree helper
Sage Weil [Fri, 18 Mar 2011 21:35:14 +0000 (14:35 -0700)]
mds: use try_trim_non_auth_subtree helper

This helper captures the logic of keeping subtrees when necessary but
dropping them when possible, and cleaning up as appropriate.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomds: close exported dirfrag
Sage Weil [Thu, 17 Mar 2011 22:09:15 +0000 (15:09 -0700)]
mds: close exported dirfrag

We have to keep export bounds open for auth subtrees.  After we export a
subtree, though, there are two opportunities to drop empty dirfrags from
our cache:

 - The children of the exported subtree may now be trimmable, if they are
   also non-auth and empty.
 - The exported subtree may be trimmable if it is empty and the parent is
   also non-auth.  This may be true for ancestors further up the hierarchy
   as well.

This helps ensure that when we get to rejoin, the only non-auth subtrees we
have are there because they are non-empty or because they are bounds on our
own subtrees.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoMDSMonitor: MDS do not standby replay until other is active
Samuel Just [Thu, 31 Mar 2011 23:16:43 +0000 (16:16 -0700)]
MDSMonitor: MDS do not standby replay until other is active

Previously, an mds could go into standby replay before the mds which it
is replaying has finished creating.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agojournaler: fix requested_pos badness in _issue_read
Sage Weil [Fri, 1 Apr 2011 21:01:40 +0000 (14:01 -0700)]
journaler: fix requested_pos badness in _issue_read

We want to advance requested_pos *only* as far as we actually want to read,
i.e., the previously-probed end of the journal.

This, among other things, will screw us up later when we reprobe and try to
read more because requested_pos is already past read_pos.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoMerge branch 'mds_ino'
Sage Weil [Fri, 1 Apr 2011 18:35:19 +0000 (11:35 -0700)]
Merge branch 'mds_ino'

14 years agoMerge remote branch 'origin/rgw'
Sage Weil [Fri, 1 Apr 2011 18:48:18 +0000 (11:48 -0700)]
Merge remote branch 'origin/rgw'

14 years agoboto_tool: often use get_bucket rather than lookup
Colin Patrick McCabe [Fri, 1 Apr 2011 18:35:16 +0000 (11:35 -0700)]
boto_tool: often use get_bucket rather than lookup

get_bucket throws an exception when the bucket doesn't exist, whereas
lookup just returns None. Sometimes we want the former behavior.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agomds: fix find_ino_dir completion
Sage Weil [Fri, 1 Apr 2011 18:35:09 +0000 (11:35 -0700)]
mds: fix find_ino_dir completion

Pass the path back in so that we can retraverse the path on retry.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: find_ino_dir debugging
Sage Weil [Fri, 1 Apr 2011 18:10:09 +0000 (11:10 -0700)]
mds: find_ino_dir debugging

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: fix dir fetch on lookup_hash fix
Sage Weil [Fri, 1 Apr 2011 18:09:58 +0000 (11:09 -0700)]
mds: fix dir fetch on lookup_hash fix

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: fix discover_path
Sage Weil [Fri, 1 Apr 2011 18:00:44 +0000 (11:00 -0700)]
mds: fix discover_path

If we have the base dirfrag, do not request it.  Otherwise we can get a
reply that contains only that (partial progress), and we will then fail
to wake up our dentry waiter.

This was broken with the rewrite in b58b8d098e4c.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: don't query self from find_ino_peers
Sage Weil [Fri, 1 Apr 2011 17:49:02 +0000 (10:49 -0700)]
mds: don't query self from find_ino_peers

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoclient: lookup_ino command
Sage Weil [Fri, 1 Apr 2011 17:46:07 +0000 (10:46 -0700)]
client: lookup_ino command

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoclient: fix lookup_hash request hash value
Sage Weil [Fri, 1 Apr 2011 18:23:17 +0000 (11:23 -0700)]
client: fix lookup_hash request hash value

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoceph_argparse: fix silly usage message
Colin Patrick McCabe [Fri, 1 Apr 2011 17:59:22 +0000 (10:59 -0700)]
ceph_argparse: fix silly usage message

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoconfig: typecheck initialization macros
Colin Patrick McCabe [Fri, 1 Apr 2011 01:17:51 +0000 (18:17 -0700)]
config: typecheck initialization macros

When initializing the config_options array, complain if the size of the
option field we're trying to initialize doesn't match the size of our
type. This will prevent careless type annotations from overwriting
neighboring option fields.

Also create a header called "static assert" which implements a
compile-time assert.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoconfig: introduce OPT_U64
Colin Patrick McCabe [Fri, 1 Apr 2011 01:02:08 +0000 (18:02 -0700)]
config: introduce OPT_U64

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoclient: fix lookuphash to use rjenkins
Sage Weil [Fri, 1 Apr 2011 16:28:12 +0000 (09:28 -0700)]
client: fix lookuphash to use rjenkins

This is the default.  Not ideal, but avoids explicitly specifying the hash
function.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: add LOOKUPINO op
Sage Weil [Fri, 1 Apr 2011 16:09:55 +0000 (09:09 -0700)]
mds: add LOOKUPINO op

This just looks up a single ino (instead of the ino + dirino/hash
LOOKUPHASH business).

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: rename chained _lookup_hash_? methods
Sage Weil [Fri, 1 Apr 2011 16:06:23 +0000 (09:06 -0700)]
mds: rename chained _lookup_hash_? methods

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: also try to look up ino directly
Sage Weil [Fri, 1 Apr 2011 15:59:33 +0000 (08:59 -0700)]
mds: also try to look up ino directly

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomakefile: include MMDSFindIno[Reply].h
Sage Weil [Fri, 1 Apr 2011 04:32:56 +0000 (21:32 -0700)]
makefile: include MMDSFindIno[Reply].h

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agojournaler: fix comments
Sage Weil [Sat, 26 Mar 2011 03:17:53 +0000 (20:17 -0700)]
journaler: fix comments

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoMerge branch 'mds_ino'
Sage Weil [Fri, 1 Apr 2011 01:09:04 +0000 (18:09 -0700)]
Merge branch 'mds_ino'

14 years agomds: try find_ino_dir if find_ino_peers fails for lookuphash
Sage Weil [Fri, 1 Apr 2011 01:07:18 +0000 (18:07 -0700)]
mds: try find_ino_dir if find_ino_peers fails for lookuphash

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: find_ino_dir
Sage Weil [Fri, 1 Apr 2011 01:07:04 +0000 (18:07 -0700)]
mds: find_ino_dir

Search for a dir ino by checking the ondisk directory object path xattr.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agocommon: fix cmdline of indashes_to_underscores
Colin Patrick McCabe [Fri, 1 Apr 2011 00:12:34 +0000 (17:12 -0700)]
common: fix cmdline of indashes_to_underscores

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agorgw: Properly support truncating on S3 PUT
Colin Patrick McCabe [Fri, 1 Apr 2011 00:00:00 +0000 (17:00 -0700)]
rgw: Properly support truncating on S3 PUT

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agomds: use helper to generate dir inode object names
Sage Weil [Thu, 31 Mar 2011 23:51:43 +0000 (16:51 -0700)]
mds: use helper to generate dir inode object names

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: allow explicit finisher context for path_traverse
Sage Weil [Thu, 31 Mar 2011 23:42:43 +0000 (16:42 -0700)]
mds: allow explicit finisher context for path_traverse

Previously we could only path_traverse and retry a request or message.
This just allows an explicit context to be used as well.  It's the caller's
job to clean it up if we return <= 0.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: fix possible null dereference
Sage Weil [Thu, 31 Mar 2011 23:38:59 +0000 (16:38 -0700)]
mds: fix possible null dereference

Fix null deref on forward and req (!mdr) caller.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: add mds failure/recovery support for find_ino_peers
Sage Weil [Thu, 31 Mar 2011 23:06:58 +0000 (16:06 -0700)]
mds: add mds failure/recovery support for find_ino_peers

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: try find_ino_peers for lookuphash requests
Sage Weil [Thu, 31 Mar 2011 22:46:41 +0000 (15:46 -0700)]
mds: try find_ino_peers for lookuphash requests

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: find_ino_peer
Sage Weil [Thu, 31 Mar 2011 22:55:10 +0000 (15:55 -0700)]
mds: find_ino_peer

Search for an ino on peer MDSs.  Still need to handle mds failure/recovery
handling.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoclient: lookuphash
Sage Weil [Sat, 26 Mar 2011 21:47:52 +0000 (14:47 -0700)]
client: lookuphash

Implement low-level lookuphash on client, for MDS testing.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agovstart.sh: don't put quotes in generated ceph.conf
Colin Patrick McCabe [Thu, 31 Mar 2011 21:54:11 +0000 (14:54 -0700)]
vstart.sh: don't put quotes in generated ceph.conf

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoceph_argparse: convert dashes to underscores
Colin Patrick McCabe [Thu, 31 Mar 2011 21:28:02 +0000 (14:28 -0700)]
ceph_argparse: convert dashes to underscores

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoclient: Use NULL instead of 0, for clarity.
Tommi Virtanen [Thu, 31 Mar 2011 20:29:09 +0000 (13:29 -0700)]
client: Use NULL instead of 0, for clarity.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agoman: Make </VirtualHost> be on its own line.
Tommi Virtanen [Thu, 31 Mar 2011 20:28:29 +0000 (13:28 -0700)]
man: Make </VirtualHost> be on its own line.

Apparently, now there's a vertical paragraph space before it,
but that's better than being tacked at the end of the previous
line.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agorgw: fix buffer overflow
Colin Patrick McCabe [Thu, 31 Mar 2011 20:20:48 +0000 (13:20 -0700)]
rgw: fix buffer overflow

Remove unecessary code that was causing a buffer overflow.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agorgw: recover from partial bucket creates
Sage Weil [Thu, 31 Mar 2011 18:39:35 +0000 (11:39 -0700)]
rgw: recover from partial bucket creates

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agorgw: use tmap key (excl) create when creating a bucket
Sage Weil [Thu, 31 Mar 2011 16:29:20 +0000 (09:29 -0700)]
rgw: use tmap key (excl) create when creating a bucket

This way we fail with EEXIST if the bucket already exists in the user
object.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>