]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
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>
14 years agoconfig: remove kill_after
Colin Patrick McCabe [Thu, 31 Mar 2011 16:47:31 +0000 (09:47 -0700)]
config: remove kill_after

It's unused.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agotestlibrbd: fix warnings
Josh Durgin [Thu, 31 Mar 2011 00:54:18 +0000 (17:54 -0700)]
testlibrbd: fix warnings

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agoMerge branch 'next'
Josh Durgin [Thu, 31 Mar 2011 00:35:08 +0000 (17:35 -0700)]
Merge branch 'next'

14 years agotestlibrbd: clean up and add tests for snapshots
Josh Durgin [Thu, 31 Mar 2011 00:22:30 +0000 (17:22 -0700)]
testlibrbd: clean up and add tests for snapshots

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agolibrbd: fix snapshot handling
Josh Durgin [Wed, 30 Mar 2011 23:41:00 +0000 (16:41 -0700)]
librbd: fix snapshot handling

To ensure consistency, always set the snap context when the header is
updated. If snapid is set, we update librados' snapid when refreshing
the header as well. Also use CEPH_NOSNAP instead of 0 as the default
snapid to prevent confusion. These changes fix snapshot creation
and removal, and prevent writing to a snapshot.

Rollback is fixed by using selfmanaged_snapshot_rollback.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agolibrados, librbd: add some debugging messages
Josh Durgin [Wed, 30 Mar 2011 22:44:25 +0000 (15:44 -0700)]
librados, librbd: add some debugging messages

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agolibrados: add selfmanaged_snap_rollback
Josh Durgin [Wed, 30 Mar 2011 22:00:55 +0000 (15:00 -0700)]
librados: add selfmanaged_snap_rollback

This was removed in 2cb86f713df38ebee6aa10a81157f99264a59a70, but is
required for selfmanaged snaps because their snapids aren't in the
pool's snap list, which is how regular rollback finds them.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agolibrados: return -EROFS when trying to write to a snapshot
Josh Durgin [Tue, 29 Mar 2011 23:08:39 +0000 (16:08 -0700)]
librados: return -EROFS when trying to write to a snapshot

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agoMerge branch 'next'
Sage Weil [Wed, 30 Mar 2011 23:55:38 +0000 (16:55 -0700)]
Merge branch 'next'

Conflicts:
src/cmon.cc
src/osdc/Journaler.cc

14 years agomkcephfs: minor fix
Samuel Just [Tue, 29 Mar 2011 20:33:37 +0000 (13:33 -0700)]
mkcephfs: minor fix

line 400: && $type == "osd" is not always valid.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agomkcephfs: copy to daemon nodes for each daemon
Samuel Just [Wed, 30 Mar 2011 20:14:55 +0000 (13:14 -0700)]
mkcephfs: copy to daemon nodes for each daemon

The tmp directory is removed after each daemon.  Previously, this would
break if two daemons were on the same node.  Now, the files will be
copied for each daemon.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agojournaler: don't block when we adjust back write_pos
Sage Weil [Wed, 30 Mar 2011 23:46:04 +0000 (16:46 -0700)]
journaler: don't block when we adjust back write_pos

is_readable() may need to adjust the write_pos backward, but will return
false.  If we are at the end we still need to wake up any waiters so they
know about it.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoconfig: parse_argv fix
Colin Patrick McCabe [Wed, 30 Mar 2011 23:17:48 +0000 (16:17 -0700)]
config: parse_argv fix

md_config_t::parse_argv: fold md_config_t::parse_argv_part2 into
parse_argv. Fix brokenness introduced by the std::string switchover.

OPTION macro: move single-character options out of the OPTION macro and
into config.cc

Fix ceph_argparse_witharg / ceph_argparse_flag uses to include a
trailing (char*)NULL, to ensure that we terminate with a pointer rather
than a 32-bit int.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agorados: print error message on exit
Sage Weil [Wed, 30 Mar 2011 23:32:26 +0000 (16:32 -0700)]
rados: print error message on exit

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agorados: add 'tmap {set,create} obj key value'
Sage Weil [Wed, 30 Mar 2011 23:32:15 +0000 (16:32 -0700)]
rados: add 'tmap {set,create} obj key value'

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoosd: add tmap key (exclusive) create
Sage Weil [Wed, 30 Mar 2011 23:31:59 +0000 (16:31 -0700)]
osd: add tmap key (exclusive) create

Return EEXIST if a key already exists.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoconfig: fix use of uint64_t* as uint32_t*
Colin Patrick McCabe [Wed, 30 Mar 2011 22:44:46 +0000 (15:44 -0700)]
config: fix use of uint64_t* as uint32_t*

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoconfig: tighten up uint32_t use
Colin Patrick McCabe [Wed, 30 Mar 2011 22:35:03 +0000 (15:35 -0700)]
config: tighten up uint32_t use

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agomkcephfs: copy to daemon nodes for each daemon
Samuel Just [Wed, 30 Mar 2011 20:14:55 +0000 (13:14 -0700)]
mkcephfs: copy to daemon nodes for each daemon

The tmp directory is removed after each daemon.  Previously, this would
break if two daemons were on the same node.  Now, the files will be
copied for each daemon.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agocommon_init: fix keyring loading
Sage Weil [Wed, 30 Mar 2011 22:04:14 +0000 (15:04 -0700)]
common_init: fix keyring loading

Can't pass a NULL char* to std::string constructor.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agocommon: Add strict_strtof, strict_strtod, unittest
Colin Patrick McCabe [Wed, 30 Mar 2011 21:57:45 +0000 (14:57 -0700)]
common: Add strict_strtof, strict_strtod, unittest

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoOSD: ReplicatedPG: commits should be high priority, like acks.
Greg Farnum [Wed, 30 Mar 2011 20:30:32 +0000 (13:30 -0700)]
OSD: ReplicatedPG: commits should be high priority, like acks.

This was consistently breaking stuff for some people, as the acks were
high priority but the commits weren't. They should match.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agoconfig: use std::string in md_config_t
Colin Patrick McCabe [Wed, 30 Mar 2011 17:29:45 +0000 (10:29 -0700)]
config: use std::string in md_config_t

Use std::string to represent md_config_t strings. This makes memory
management a lot easier and should fix some leaks. "No value" is now
represented by an empty string, whereas before some places were using
empty strings and some were using NULL.

config.cc: Fix a minor decode bug.

In pid_file.cc, copy the pid_file using snprintf, since strncpy
does not always NULL-terminate.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agotest/bufferlist.cc: Added append tests
sam [Wed, 30 Mar 2011 16:31:45 +0000 (09:31 -0700)]
test/bufferlist.cc: Added append tests

Tests appending many randomly sized chunks many of which are size zero.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agoConfUtils: move parsing into config.cc
Colin Patrick McCabe [Wed, 30 Mar 2011 04:52:35 +0000 (21:52 -0700)]
ConfUtils: move parsing into config.cc

Move parsing into config.cc, since there was already parsing code there.
Move metavariable escaping out of ConfUtils; having this in ConfUtils
makes it impossible to de-globalize g_conf.

Create a nicer API for pulling stuff out of the configuration file.
Since the value we pull is determined by the config structure in effect
at the time, it should be an instance method of md_config_t.

Remove some deadcode. Add some comments.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoConfUtils: fix up read API a bit
Colin Patrick McCabe [Tue, 29 Mar 2011 23:05:12 +0000 (16:05 -0700)]
ConfUtils: fix up read API a bit

Remove def_val. Return error codes for not found, parse error, etc.
Fix API users.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoConfUtils: decode to std::string
Colin Patrick McCabe [Tue, 29 Mar 2011 20:42:26 +0000 (13:42 -0700)]
ConfUtils: decode to std::string

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agomount.ceph: Use LDADD not LDFLAGS to bring in -lkeyutils.
Tommi Virtanen [Tue, 29 Mar 2011 23:31:29 +0000 (16:31 -0700)]
mount.ceph: Use LDADD not LDFLAGS to bring in -lkeyutils.

Without this, flab (gcc 4.2.4) failed with:

libtool: link: gcc -Wall -D__CEPH__ -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D_THREAD_SAFE -rdynamic -g -O2 -o mount.ceph mount.ceph.o armor.o  -lkeyutils /usr/lib/libcrypto++.so
/usr/lib/libcrypto++.so: undefined reference to `pthread_key_create'
/usr/lib/libcrypto++.so: undefined reference to `pthread_getspecific'
/usr/lib/libcrypto++.so: undefined reference to `pthread_key_delete'
/usr/lib/libcrypto++.so: undefined reference to `pthread_setspecific'
collect2: ld returned 1 exit status

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agocosd: fix bind to specific address
Sage Weil [Tue, 29 Mar 2011 23:23:55 +0000 (16:23 -0700)]
cosd: fix bind to specific address

Do not default to public_addr for cluster, heartbeat messengers.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agomkcephfs: minor fix
Samuel Just [Tue, 29 Mar 2011 20:33:37 +0000 (13:33 -0700)]
mkcephfs: minor fix

line 400: && $type == "osd" is not always valid.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agoAdd an RPM BuildRequires on keyutils-libs-devel.
Tommi Virtanen [Tue, 29 Mar 2011 22:37:10 +0000 (15:37 -0700)]
Add an RPM BuildRequires on keyutils-libs-devel.

See 9aab8c6b051469904d7ecd5a9a6dd7aaf5cc3931.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agoconfig: temporary fix for monclient conf issue
Colin Patrick McCabe [Tue, 29 Mar 2011 21:53:10 +0000 (14:53 -0700)]
config: temporary fix for monclient conf issue

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agocmon: fix typo
Sage Weil [Tue, 29 Mar 2011 21:49:09 +0000 (14:49 -0700)]
cmon: fix typo

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoMerge branch 'stable' into next
Sage Weil [Tue, 29 Mar 2011 21:47:57 +0000 (14:47 -0700)]
Merge branch 'stable' into next

Conflicts:
configure.ac
debian/changelog
src/msg/SimpleMessenger.cc

14 years agomount.ceph: fix missing includes
Colin Patrick McCabe [Tue, 29 Mar 2011 21:11:43 +0000 (14:11 -0700)]
mount.ceph: fix missing includes

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoAdd a Debian Build-Dep on libkeyutils-dev.
Tommi Virtanen [Tue, 29 Mar 2011 20:34:52 +0000 (13:34 -0700)]
Add a Debian Build-Dep on libkeyutils-dev.

This is needed by bee85518e2885cc93fe8ca634292ad4846515456.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agomount.ceph: Use kernel key management API when possible.
Tommi Virtanen [Tue, 29 Mar 2011 18:39:26 +0000 (11:39 -0700)]
mount.ceph: Use kernel key management API when possible.

Backwards compatible with older kenrnels, for now.

Fixes: #852
Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agocommon: Make armor.h safe to use from C.
Tommi Virtanen [Tue, 29 Mar 2011 16:21:09 +0000 (09:21 -0700)]
common: Make armor.h safe to use from C.

mount.ceph needs to base64-decode the secrets, so we can get rid of
the kernel-side base64 decode, but it doesn't need all of common lib.
And it is written in C.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agomount.ceph: Modprobe ceph before trying the mount.
Tommi Virtanen [Tue, 29 Mar 2011 00:32:24 +0000 (17:32 -0700)]
mount.ceph: Modprobe ceph before trying the mount.

This will be needed for the next few commits, where we try to load the
keys into the kernel; without ceph.ko loaded, the key type will not be
recognized.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agomount.ceph: Silently pass through options "name" and "secret".
Tommi Virtanen [Tue, 29 Mar 2011 16:05:09 +0000 (09:05 -0700)]
mount.ceph: Silently pass through options "name" and "secret".

Fixes: #914
Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agomount.ceph: Fix strncmp length comparing "secretfile".
Tommi Virtanen [Tue, 29 Mar 2011 15:49:33 +0000 (08:49 -0700)]
mount.ceph: Fix strncmp length comparing "secretfile".

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agorgw: add bucket to user list prior to creating bucket
Sage Weil [Tue, 29 Mar 2011 19:39:46 +0000 (12:39 -0700)]
rgw: add bucket to user list prior to creating bucket

This avoids hitting the osd immediately following a bucket creation, which
will avoid any map update latency for most requests.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agorgw: create bucket object and xattr in single operation
Sage Weil [Tue, 29 Mar 2011 18:24:52 +0000 (11:24 -0700)]
rgw: create bucket object and xattr in single operation

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agolibrados: add create to ObjectOperation
Sage Weil [Tue, 29 Mar 2011 18:23:45 +0000 (11:23 -0700)]
librados: add create to ObjectOperation

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoobjecter: add create to ObjectOperation, known strings
Sage Weil [Tue, 29 Mar 2011 18:22:57 +0000 (11:22 -0700)]
objecter: add create to ObjectOperation, known strings

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoSyntheticClient: const cleanup
Colin Patrick McCabe [Tue, 29 Mar 2011 19:07:14 +0000 (12:07 -0700)]
SyntheticClient: const cleanup

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoFileStore: convert dev, jdev to std::string
Colin Patrick McCabe [Tue, 29 Mar 2011 18:34:54 +0000 (11:34 -0700)]
FileStore: convert dev, jdev to std::string

Convert dev, jdev to std::string in preparation for adding std::string
to g_conf.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agocmon: add --inject-monmap option
Sage Weil [Tue, 29 Mar 2011 18:58:13 +0000 (11:58 -0700)]
cmon: add --inject-monmap option

This lets you manually inject a monmap into a down monitor.  This is useful
in cases where you need to change the monmap but aren't able to get a
quorum with the old map.

Signed-off-by: Sage Weil <sage@newdream.net>