]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
12 years agoMerge branch 'next'
Gary Lowell [Wed, 12 Jun 2013 22:00:05 +0000 (15:00 -0700)]
Merge branch 'next'

12 years agoceph: make life easier on developers by handling in-tree runs
Dan Mick [Wed, 12 Jun 2013 02:46:53 +0000 (19:46 -0700)]
ceph: make life easier on developers by handling in-tree runs

If <path-to-ceph> contains pybind and .libs:
- prepend <path-to-ceph>/pybind to PYTHONPATH
- append <path-to-ceph>/.libs to LD_LIBRARY_PATH if not already there
  and exec self so it takes effect

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoqa/workunits/cephtool/test.sh: look for 'ceph log' via -w, not in log file
Sage Weil [Wed, 12 Jun 2013 21:00:24 +0000 (14:00 -0700)]
qa/workunits/cephtool/test.sh: look for 'ceph log' via -w, not in log file

'ceph-conf ...' doesn't give you final/default values, only what is in the
conf file.  Use -w output to test this instead.

Fixes: #5327
Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoceph: flush stdout on watch print
Sage Weil [Wed, 12 Jun 2013 20:59:37 +0000 (13:59 -0700)]
ceph: flush stdout on watch print

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #357 from atwardowski/patch-1
Sage Weil [Wed, 12 Jun 2013 20:50:15 +0000 (13:50 -0700)]
Merge pull request #357 from atwardowski/patch-1

Usage log and ops log are disabled by defaults since 0.56

12 years agoUsage log and ops log are disabled by defaults since 0.56 357/head
atwardowski [Wed, 12 Jun 2013 20:48:44 +0000 (17:48 -0300)]
Usage log and ops log are disabled by defaults since 0.56

http://ceph.com/docs/next/release-notes/#v0-56-bobtail

12 years agomon: fix 'pg dump_stuck' stuckops type
Sage Weil [Wed, 12 Jun 2013 20:39:30 +0000 (13:39 -0700)]
mon: fix 'pg dump_stuck' stuckops type

It's a list.

Fixes: #5332
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
12 years agoMerge remote-tracking branch 'gh/wip_5238'
Sage Weil [Wed, 12 Jun 2013 20:31:22 +0000 (13:31 -0700)]
Merge remote-tracking branch 'gh/wip_5238'

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoqa: multiple_rsync.sh: more output
Sage Weil [Wed, 12 Jun 2013 20:26:03 +0000 (13:26 -0700)]
qa: multiple_rsync.sh: more output

Trying to track down this failure:

2013-06-12T06:11:13.430 INFO:teuthology.task.workunit.client.0.err:+ rsync -auv --exclude local/ /usr/ usr.2
2013-06-12T06:11:13.430 INFO:teuthology.task.workunit.client.0.err:+ tee a
2013-06-12T06:11:13.527 INFO:teuthology.task.workunit.client.0.out:sending incremental file list
2013-06-12T06:11:46.206 INFO:teuthology.task.workunit.client.0.out:
2013-06-12T06:11:46.208 INFO:teuthology.task.workunit.client.0.out:sent 1689627 bytes  received 8302 bytes  50684.45 bytes/sec
2013-06-12T06:11:46.208 INFO:teuthology.task.workunit.client.0.out:total size is 3274130495  speedup is 1928.31
2013-06-12T06:11:46.209 INFO:teuthology.task.workunit.client.0.err:+ wc -l a
2013-06-12T06:11:46.209 INFO:teuthology.task.workunit.client.0.err:+ grep 4
2013-06-12T06:11:46.211 INFO:teuthology.task.workunit:Stopping misc on client.0...

...and am perplexed!

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agov0.64 v0.64
Gary Lowell [Wed, 12 Jun 2013 16:54:06 +0000 (09:54 -0700)]
v0.64

12 years agoceph-fuse: older libfuses don't support FUSE_IOCTL_COMPAT
Dan Mick [Wed, 12 Jun 2013 01:33:08 +0000 (18:33 -0700)]
ceph-fuse: older libfuses don't support FUSE_IOCTL_COMPAT

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoceph-create-keys: Make sure directories for admin and bootstrap keys exist
Peter Wienemann [Tue, 11 Jun 2013 19:38:51 +0000 (21:38 +0200)]
ceph-create-keys: Make sure directories for admin and bootstrap keys exist

Signed-off-by: Peter Wienemann <wienemann@physik.uni-bonn.de>
12 years agostore_test: create_collection prior to split
Samuel Just [Tue, 11 Jun 2013 18:24:54 +0000 (11:24 -0700)]
store_test: create_collection prior to split

Fixes: #5310
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: David Zafman <david.zafman@inktank.com>
12 years agomon: adjust trim defaults
Sage Weil [Tue, 11 Jun 2013 23:30:41 +0000 (16:30 -0700)]
mon: adjust trim defaults

User testing has shown that smaller values yield better results; see #4917.
Jim's testing has had good results with even more aggressive trimming, but I
would like to do more validation yet before changing defaults.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agodoc: Reworked the landing page.
John Wilkins [Tue, 11 Jun 2013 22:32:23 +0000 (15:32 -0700)]
doc: Reworked the landing page.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Added a hostname resolution section for local host execution.
John Wilkins [Tue, 11 Jun 2013 21:46:35 +0000 (14:46 -0700)]
doc: Added a hostname resolution section for local host execution.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Added some tips and re-organized to simplify the process.
John Wilkins [Tue, 11 Jun 2013 21:46:12 +0000 (14:46 -0700)]
doc: Added some tips and re-organized to simplify the process.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agoclient: set issue_seq (not seq) in cap release
Sage Weil [Sun, 9 Jun 2013 00:38:07 +0000 (17:38 -0700)]
client: set issue_seq (not seq) in cap release

We regularly have been observing a stall where the MDS is blocked waiting
for a cap revocation (Ls, in our case) and never gets a reply.  We finally
tracked down the sequence:

 - mds issues cap seq 1 to client
 - mds does revocation (seq 2)
 - client replies
 - much time goes by
 - client trims inode from cache, sends release with seq == 2
 - mds ignores release because its issue_seq is 1
 - mds later tries to revoke other caps
 - client discards message because it doesn't have the inode in cache

The problem is simply that we are using seq instead of issue_seq in the
cap release message.  Note that the other release call site in
encode_inode_release() is correct.  That one is much more commonly
triggered by short tests, as compared to this case where the inode needs to
get pushed out of the client cache.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
12 years agodoc: Added some Java S3 API troubleshooting entries.
John Wilkins [Tue, 11 Jun 2013 19:12:46 +0000 (12:12 -0700)]
doc: Added some Java S3 API troubleshooting entries.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Added install ceph-common instruction.
John Wilkins [Tue, 11 Jun 2013 19:11:51 +0000 (12:11 -0700)]
doc: Added install ceph-common instruction.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Added install ceph-common instruction.
John Wilkins [Tue, 11 Jun 2013 19:11:26 +0000 (12:11 -0700)]
doc: Added install ceph-common instruction.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Fixed :term" syntax.
John Wilkins [Tue, 11 Jun 2013 19:10:52 +0000 (12:10 -0700)]
doc: Fixed :term" syntax.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agoceph-create-keys: Remove unused caps parameter on bootstrap_key()
Gary Lowell [Tue, 11 Jun 2013 15:25:36 +0000 (08:25 -0700)]
ceph-create-keys:  Remove unused caps parameter on bootstrap_key()

The caps parameter was removed except for one place.

Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
12 years agoMerge branch 'next'
Sage Weil [Tue, 11 Jun 2013 06:22:49 +0000 (23:22 -0700)]
Merge branch 'next'

12 years agoosd: fix con -> session ref change after hb reset
Sage Weil [Tue, 11 Jun 2013 06:21:50 +0000 (23:21 -0700)]
osd: fix con -> session ref change after hb reset

set_priv() expects to be given a reference to own; take one.  This fixes
various crashes after we see a hb connection reset.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agocommon/admin_socket: fix leak of new m_getdescs_hook
Sage Weil [Sat, 8 Jun 2013 20:56:00 +0000 (13:56 -0700)]
common/admin_socket: fix leak of new m_getdescs_hook

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agocommon/cmdparse: no need to use (and leak to) the heap
Sage Weil [Tue, 11 Jun 2013 00:11:44 +0000 (17:11 -0700)]
common/cmdparse: no need to use (and leak to) the heap

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
12 years agoCrushWrapper: dump tunables along with crush map
Dan Mick [Tue, 11 Jun 2013 00:25:55 +0000 (17:25 -0700)]
CrushWrapper: dump tunables along with crush map

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoceph: --keyring must be passed to parse_argv, which means not argparse
Dan Mick [Tue, 11 Jun 2013 01:08:31 +0000 (18:08 -0700)]
ceph: --keyring must be passed to parse_argv, which means not argparse

If argparse gets its hands on it, it's not available for parse_argv()
and is therefore ignored.

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoOSD: create collection in handle_pg_create before _create_lock_pg
Samuel Just [Tue, 11 Jun 2013 00:01:02 +0000 (17:01 -0700)]
OSD: create collection in handle_pg_create before _create_lock_pg

Fixes: #5270
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoObjecter: fail osd_command if OSD is down
Dan Mick [Mon, 10 Jun 2013 22:03:37 +0000 (15:03 -0700)]
Objecter: fail osd_command if OSD is down

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agomon: send "osd create" output to stdout; tests rely on it
Dan Mick [Mon, 10 Jun 2013 20:26:06 +0000 (13:26 -0700)]
mon: send "osd create" output to stdout; tests rely on it

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #349 from dachary/wip-5213
athanatos [Mon, 10 Jun 2013 23:08:46 +0000 (16:08 -0700)]
Merge pull request #349 from dachary/wip-5213

unit tests for PGLog::merge_log

Reviewed-by: Sam Just <sam.just@inktank.com>
12 years agoMerge pull request #350 from ceph/wip-osd-scrub-chunk
Sage Weil [Mon, 10 Jun 2013 16:50:52 +0000 (09:50 -0700)]
Merge pull request #350 from ceph/wip-osd-scrub-chunk

Reviewed-by: Samuel Just <sam.just@inktank.com>
12 years agounit tests for PGLog::rewind_divergent_log 349/head
Loic Dachary [Sat, 8 Jun 2013 07:45:58 +0000 (09:45 +0200)]
unit tests for PGLog::rewind_divergent_log

The tests covers 100% of the LOC of rewind_divergent_log. There are
three situations :

 * throw an assert because the data is inconsistent

 * special case when the entire logs is divergent

 * regular workflow where all divergent entries are run to
   merge_old_entry

http://tracker.ceph.com/issues/5213 refs #5213

Signed-off-by: Loic Dachary <loic@dachary.org>
12 years agounit tests for PGLog::merge_log
Loic Dachary [Fri, 7 Jun 2013 13:51:28 +0000 (15:51 +0200)]
unit tests for PGLog::merge_log

The tests covers 100% of the LOC of merge_log. It is broken down
in 7 cases to enumerate all the situations it must address. Each case
is isolated in a independant code block where the conditions are
reproduced. Where possible and sensible to read, a code block covers
as much lines as possible. For instance:

  The log entry (1,3) deletes the object x9 but the olog entry (2,3)
  modifies it and is authoritative : the log entry (1,3) is divergent.

is the only test case covering a dozen "if" statements and half a
dozen "while/for" loops. It covers all the lines but it would be
useful to create others scenarii in the future.

Each test is made of a comment describing the test case, the
definition of the data structures to create the desired conditons, a
sequence of EXPECT_* checking that they are met, a single call to
merge_log and another sequence of EXPECT_* ( ordered to be easy to
compare with the first sequence ) checking all the desired side
effects.

The TestPGLog.cc file was untabified to improve the display of ascii
art when it is output as part of a diff.

http://tracker.ceph.com/issues/5213 refs #5213

Signed-off-by: Loic Dachary <loic@dachary.org>
12 years agomessages/MMonProbe: fix uninit vars (again)
Sage Weil [Sat, 8 Jun 2013 17:53:08 +0000 (10:53 -0700)]
messages/MMonProbe: fix uninit vars (again)

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoosdc/Objecter: clear osd session command ops xlist on close
Sage Weil [Sat, 8 Jun 2013 15:07:45 +0000 (08:07 -0700)]
osdc/Objecter: clear osd session command ops xlist on close

Clear the command ops list, just as we do the ops and linger_ops xlists.
This fixes a crash like this on shutdown:

2013-06-07 23:06:21.089275 7fc7e8655700 10 client.4124.objecter close_session for osd.0
2013-06-07 23:06:21.089279 7fc7e8655700  1 -- 10.3.64.22:0/1026843 mark_down 0x7fc7e0001260 -- 0x7fc7e0001000
./include/xlist.h: In function 'xlist<T>::~xlist() [with T = Objecter::CommandOp*]' thread 7fc7e8655700 time 2013-06-07 23:06:21.089401
./include/xlist.h: 69: FAILED assert(_size == 0)
 ceph version 0.63-553-ge8300d0 (e8300d0afb5154d4d13536abdcf47bd5cc8ce810)
 1: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x80) [0x7fc7ec111f14]
 2: (xlist<Objecter::CommandOp*>::~xlist()+0x36) [0x7fc7ec09f95e]
 3: (Objecter::OSDSession::~OSDSession()+0x1d) [0x7fc7ec09e451]
 4: (Objecter::close_session(Objecter::OSDSession*)+0x1fc) [0x7fc7ec08a146]
 5: (Objecter::handle_osd_map(MOSDMap*)+0xe68) [0x7fc7ec087864]
 6: (librados::RadosClient::_dispatch(Message*)+0x84) [0x7fc7ec0615f0]
 7: (librados::RadosClient::ms_dispatch(Message*)+0x16b) [0x7fc7ec0613c1]
 8: (Messenger::ms_deliver_dispatch(Message*)+0x8c) [0x7fc7ec21d0f6]
 9: (DispatchQueue::entry()+0x52f) [0x7fc7ec21c653]
 10: (DispatchQueue::DispatchThread::entry()+0x1c) [0x7fc7ec2bdcc2]
 11: (Thread::_entry_func(void*)+0x23) [0x7fc7ec34d8cd]
 12: (()+0x6b50) [0x7fc7eb2feb50]
 13: (clone()+0x6d) [0x7fc7eab2c6dd]

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agolibrados: fix pg command test
Sage Weil [Sun, 9 Jun 2013 04:38:18 +0000 (21:38 -0700)]
librados: fix pg command test

Stat a bunch of (non-existent) random objects in the pool so ensure the
pg exists on the OSD before we assert that we get a 0 from querying it.

Although it is somewhat tempting to make the pg commands block until the
pg exists, that defeats much of the value of the command as a diagnostic
tool as it could block indefinitely instead of informing the admin/dev
that "the pg isn't there yet".

In any case, this fixes the api test failure.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agolibrados.h: Fix up some doxygen problems
Dan Mick [Sat, 8 Jun 2013 05:50:09 +0000 (22:50 -0700)]
librados.h: Fix up some doxygen problems

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agomds: fix filelock eval_gather
Sage Weil [Sat, 8 Jun 2013 05:04:09 +0000 (22:04 -0700)]
mds: fix filelock eval_gather

Broken by a08d62045657713bf0a5372bf14136082ec3b17e

Reported-by: Yan, Zheng <yan.zheng@intel.com>
Signed-off-by: Sage Weil <sage@inktank.com>
12 years ago.gitignore: add 'ceph', now a generated file
Dan Mick [Sat, 8 Jun 2013 04:47:11 +0000 (21:47 -0700)]
.gitignore: add 'ceph', now a generated file

12 years agoceph: old daemons output to outs and outbuf, combine
Dan Mick [Fri, 7 Jun 2013 23:39:34 +0000 (16:39 -0700)]
ceph: old daemons output to outs and outbuf, combine

When talking to old daemons, if a command succeeds, there may be
output on outs, outbuf, or both; combine them if there's no error,
and clear outs so it's not treated as stderr fodder.

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoceph: handle old OSDs as command destinations, fix status part of -w
Dan Mick [Fri, 7 Jun 2013 23:24:28 +0000 (16:24 -0700)]
ceph: handle old OSDs as command destinations, fix status part of -w

For osd tell or pg <pgid> commands, the CLI sends the command directly
to the OSD; if the OSDs are still old, the command needs to be sent
in 'plain' (non-JSON) form.  Also, the 'ceph status' from -w needs to
handle failure/fallback-to-old-command.

Refactor the guts of json_command() into send_command(), and call it
from json_command() and where needed for old-style commands.

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #352 from ceph/wip-4832
Gregory Farnum [Sat, 8 Jun 2013 00:24:01 +0000 (17:24 -0700)]
Merge pull request #352 from ceph/wip-4832

mds: do not double-queue file recovery in eval_gather
Reviewed-by: Greg Farnum <greg@inktank.com>
12 years agoceph: add -v for version. Makefile processes ceph_ver.h
Dan Mick [Fri, 7 Jun 2013 03:58:51 +0000 (20:58 -0700)]
ceph: add -v for version.  Makefile processes ceph_ver.h

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agoMerge pull request #343 from dalgaaf/wip-da-SCA-cppcheck
Sage Weil [Sat, 8 Jun 2013 00:12:10 +0000 (17:12 -0700)]
Merge pull request #343 from dalgaaf/wip-da-SCA-cppcheck

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoosd: make scrub chunk size tunable 350/head
Sage Weil [Fri, 7 Jun 2013 22:16:42 +0000 (15:16 -0700)]
osd: make scrub chunk size tunable

It was hard-coded at 5.  Make it range from 5-15 by default, for now.

We should still keep this smallish since this range is locked for the
duration of the scrub on this chunk.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agorados: --num-objects will now cause bench to stop after that many objects
Samuel Just [Wed, 5 Jun 2013 19:27:56 +0000 (12:27 -0700)]
rados: --num-objects will now cause bench to stop after that many objects

Reviewed-by: David Zafman <david.zafman@inktank.com>
Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agotest_filestore_idempotent: use obj name from source coll add
Samuel Just [Wed, 5 Jun 2013 21:28:02 +0000 (14:28 -0700)]
test_filestore_idempotent: use obj name from source coll add

Fixes: #5240
Reviewed-by: David Zafman <david.zafman@inktank.com>
Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoMerge remote-tracking branch 'gh/next'
Sage Weil [Fri, 7 Jun 2013 21:23:48 +0000 (14:23 -0700)]
Merge remote-tracking branch 'gh/next'

Conflicts:
src/messages/MMonProbe.h

12 years agorgw: handle deep uri resources
Yehuda Sadeh [Fri, 7 Jun 2013 04:53:00 +0000 (21:53 -0700)]
rgw: handle deep uri resources

In case of deep uri resources (ones created beyond a single level
of hierarchy, e.g. auth/v1.0) we want to create a new empty
handlers for the path if no handlers exists. E.g., for
auth/v1.0 we need to have a handler for 'auth', otherwise
the default S3 handler will be used, which we don't want.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
12 years agorgw: fix get_resource_mgr() to correctly identify resource
Yehuda Sadeh [Fri, 7 Jun 2013 04:47:21 +0000 (21:47 -0700)]
rgw: fix get_resource_mgr() to correctly identify resource

Fixes: #5262
The original test was not comparing the correct string, ended up
with the effect of just checking the substring of the uri to match
the resource.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
12 years agorgw: add 'cors' to the list of sub-resources
Yehuda Sadeh [Thu, 6 Jun 2013 18:22:38 +0000 (11:22 -0700)]
rgw: add 'cors' to the list of sub-resources

Fixes: #5261
Backport: cuttlefish
Add 'cors' to the list of sub-resources, otherwise auth signing
is wrong.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
12 years agoMerge branch 'wip-ceph-cli'
Dan Mick [Fri, 7 Jun 2013 17:57:51 +0000 (10:57 -0700)]
Merge branch 'wip-ceph-cli'

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoosd: do not include logbl in scrub map
Sage Weil [Thu, 6 Jun 2013 23:35:54 +0000 (16:35 -0700)]
osd: do not include logbl in scrub map

This is a potentially use object/file, usually prefixed by a zeroed region
on disk, that is not used by scrub at all.  It dates back to
f51348dc8bdd5071b7baaf3f0e4d2e0496618f08 (2008) and the original version of
scrub.

This *might* fix #4179.  It is not a leak per se, but I observed 1GB
scrub messages going over the write.  Maybe the allocations are causing
fragmentation, or the sub_op queues are growing.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
12 years agodoc: Updated for glossary terms and added indexing.
John Wilkins [Fri, 7 Jun 2013 16:51:05 +0000 (09:51 -0700)]
doc: Updated for glossary terms and added indexing.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Added indexing and did a bit of cleanup.
John Wilkins [Fri, 7 Jun 2013 16:50:03 +0000 (09:50 -0700)]
doc: Added indexing and did a bit of cleanup.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agomds: do not double-queue file recovery in eval_gather 352/head
Sage Weil [Fri, 7 Jun 2013 04:38:56 +0000 (21:38 -0700)]
mds: do not double-queue file recovery in eval_gather

This fixes a specific case of double-queuing seen in #4832:

 - client goes stale, inode marked NEEDSRECOVER
 - eval does sync, queued, -> RECOVERING
 - client resumes
 - client goes stale (again), inode marked NEEDSRECOVER
 - eval_gather queues *again*

Note that a cursory look at the recovery code makes me think this needs
a much more serious overhaul.  In particular, I don't think we should
be triggering recovery when transitioning *from* a stable state, but
explicitly when we are flagged, or when gathering.  We should probably
also hold a wrlock over the recovery period and remove the force_wrlock
kludge from the final size check.  Opened ticket #5268.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge branch 'wip-ceph-cli' into master
Dan Mick [Fri, 7 Jun 2013 02:12:32 +0000 (19:12 -0700)]
Merge branch 'wip-ceph-cli' into master

Conflicts:
src/include/rados/librados.h
src/librados/librados.cc
src/osdc/Objecter.cc
src/pybind/rados.py

Required modifications to:
src/osd/OSD.cc

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agoMDSMonitor: dead debugging code
Dan Mick [Fri, 7 Jun 2013 00:40:53 +0000 (17:40 -0700)]
MDSMonitor: dead debugging code

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agorados.py: make exception with errno string instead of int
Dan Mick [Thu, 6 Jun 2013 20:56:54 +0000 (13:56 -0700)]
rados.py: make exception with errno string instead of int

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agoceph, librados, rados.py, librados tests: pass cmd as array
Dan Mick [Fri, 7 Jun 2013 00:40:28 +0000 (17:40 -0700)]
ceph, librados, rados.py, librados tests: pass cmd as array

Using ceph to pass commands to the old monitor requires the
message to have words in a vector; this means that we need to pass
the command as an array to rados_mon_command.  Really, all of the
rados_X_command functions should take an array for flexibility and
parallel structure, so change them all, and the Python bindings,
and the test programs that use them.

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agoceph: -v should mean version, not --verbose
Dan Mick [Fri, 7 Jun 2013 00:35:37 +0000 (17:35 -0700)]
ceph: -v should mean version, not --verbose

To be implemented soon with ceph_ver.h

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agoceph: error and verbose message improvement
Dan Mick [Thu, 6 Jun 2013 21:57:20 +0000 (14:57 -0700)]
ceph: error and verbose message improvement

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agoceph: refactor -s -> status to common code, pass childargs to old mons
Dan Mick [Thu, 6 Jun 2013 21:57:03 +0000 (14:57 -0700)]
ceph: refactor -s -> status to common code, pass childargs to old mons

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agolibrados: rados_X_command need to assemble a vector from char *cmd
Dan Mick [Thu, 6 Jun 2013 20:41:38 +0000 (13:41 -0700)]
librados: rados_X_command need to assemble a vector from char *cmd

The old monitors take a vector with words split; new monitors don't
care, but the old ones do

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agolibrados, ceph, rados.py: -EINVAL for create with null/invalid name
Dan Mick [Thu, 6 Jun 2013 20:01:12 +0000 (13:01 -0700)]
librados, ceph, rados.py: -EINVAL for create with null/invalid name

Means setting defaults should be more careful throughout as well

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agoceph: improve error reporting on failure to connect to cluster
Dan Mick [Thu, 6 Jun 2013 20:57:17 +0000 (13:57 -0700)]
ceph: improve error reporting on failure to connect to cluster

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agoceph: fix up old-monitor handling
Dan Mick [Thu, 6 Jun 2013 03:12:26 +0000 (20:12 -0700)]
ceph: fix up old-monitor handling

Finish command after submitting to old monitor, rather than falling
through to new-command handling
Also, translate -s to status for old mons as well

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agoceph: catch/handle exceptions in admin socket commands
Dan Mick [Thu, 6 Jun 2013 01:17:26 +0000 (18:17 -0700)]
ceph: catch/handle exceptions in admin socket commands

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agoceph: collect/use clustername, and set defaults like other utilities
Dan Mick [Thu, 6 Jun 2013 01:16:52 +0000 (18:16 -0700)]
ceph: collect/use clustername, and set defaults like other utilities

(defaults like log_to_stderr, err_to_stderr)

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agolibrados, rados.py: rados_create2: add clustername and future flags
Dan Mick [Thu, 6 Jun 2013 01:11:51 +0000 (18:11 -0700)]
librados, rados.py: rados_create2: add clustername and future flags

rados.py also gets "conf_defaults" dict for things you might want to
default in your app differently before ceph.conf gets to them; currently
used for ceph CLI to be able to set log_to_stderr/err_to_stderr true,
among others.

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agoAuthMonitor: fix signed/unsigned comparison warning
Dan Mick [Thu, 6 Jun 2013 20:01:40 +0000 (13:01 -0700)]
AuthMonitor: fix signed/unsigned comparison warning

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agomon: upgrade auth database on leader
Sage Weil [Wed, 5 Jun 2013 14:55:46 +0000 (07:55 -0700)]
mon: upgrade auth database on leader

If we are the leader, and the auth database has not yet been upgraded,
do so.  The upgrade consists of translating old-style (pre-v0.64) caps
to new-style caps (e.g., 'allow profile bootstrap-osd').  This happens
once and the conversion takes the form of a normal paxos transaction.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
12 years agoauth: CephxKeyServer: add secrets_{begin,end}() getters
Joao Eduardo Luis [Wed, 5 Jun 2013 01:06:51 +0000 (02:06 +0100)]
auth: CephxKeyServer: add secrets_{begin,end}() getters

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
12 years agomon: AuthMonitor: remove dead code to avoid confusion
Joao Eduardo Luis [Tue, 4 Jun 2013 23:13:32 +0000 (00:13 +0100)]
mon: AuthMonitor: remove dead code to avoid confusion

AuthMonitor::election_finished() does nothing.

PaxosService::election_finished() is the one being handled.

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
12 years agoceph: Remove connect/command timeouts; too risky for now
Dan Mick [Tue, 4 Jun 2013 23:39:13 +0000 (16:39 -0700)]
ceph: Remove connect/command timeouts; too risky for now
Keep 10s timeout when connecting for help descriptions, however

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agodoc: Updated with glossary terms.
John Wilkins [Fri, 7 Jun 2013 00:35:02 +0000 (17:35 -0700)]
doc: Updated with glossary terms.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Updated with glossary terms.
John Wilkins [Fri, 7 Jun 2013 00:29:02 +0000 (17:29 -0700)]
doc: Updated with glossary terms.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Correction and index tags.
John Wilkins [Fri, 7 Jun 2013 00:27:34 +0000 (17:27 -0700)]
doc: Correction and index tags.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Updates for glossary terms.
John Wilkins [Fri, 7 Jun 2013 00:26:51 +0000 (17:26 -0700)]
doc: Updates for glossary terms.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agoMerge pull request #347 from dalgaaf/wip-da-scripts
Sage Weil [Thu, 6 Jun 2013 22:14:25 +0000 (15:14 -0700)]
Merge pull request #347 from dalgaaf/wip-da-scripts

Some smaller fixes for init-radosgw files

12 years agodoc/release-notes: v0.61.3
Sage Weil [Thu, 6 Jun 2013 18:58:41 +0000 (11:58 -0700)]
doc/release-notes: v0.61.3

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agodoc: Added upstart syntax.
John Wilkins [Thu, 6 Jun 2013 17:59:42 +0000 (10:59 -0700)]
doc: Added upstart syntax.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Added link to Upstart syntax.
John Wilkins [Thu, 6 Jun 2013 17:58:47 +0000 (10:58 -0700)]
doc: Added link to Upstart syntax.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agoMerge branch 'wip_5154'
Samuel Just [Thu, 6 Jun 2013 16:21:46 +0000 (09:21 -0700)]
Merge branch 'wip_5154'

Fixes: #5154
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoinit-radosgw*: add all sections to usage output 347/head
Danny Al-Gaaf [Thu, 6 Jun 2013 13:34:54 +0000 (15:34 +0200)]
init-radosgw*: add all sections to usage output

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoinit-radosgw*: add status
Danny Al-Gaaf [Thu, 6 Jun 2013 13:33:23 +0000 (15:33 +0200)]
init-radosgw*: add status

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agofix init-radosgw* to use the same indentation
Danny Al-Gaaf [Thu, 6 Jun 2013 13:21:30 +0000 (15:21 +0200)]
fix init-radosgw* to use the same indentation

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoMerge branch 'wip-3527'
David Zafman [Thu, 6 Jun 2013 07:38:50 +0000 (00:38 -0700)]
Merge branch 'wip-3527'

Reviewed-by: Samuel Just <sam.just@inktank.com>
12 years agotest: Add blacklisting to test_stress_watch
David Zafman [Thu, 6 Jun 2013 02:14:33 +0000 (19:14 -0700)]
test: Add blacklisting to test_stress_watch

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agoAdd test_blacklist_self() librados function for test cases
David Zafman [Thu, 6 Jun 2013 06:22:17 +0000 (23:22 -0700)]
Add test_blacklist_self() librados function for test cases

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agoosd: Add dump_watchers to osd admin socket to examine all watchers
David Zafman [Fri, 31 May 2013 00:18:24 +0000 (17:18 -0700)]
osd: Add dump_watchers to osd admin socket to examine all watchers

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agorados: Output client address in rados listwatchers request
David Zafman [Thu, 30 May 2013 20:21:09 +0000 (13:21 -0700)]
rados: Output client address in rados listwatchers request

Add client entity_addr_t string to list of watchers rados interface

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agoosd: Add dump_blacklist to admin socket
David Zafman [Wed, 29 May 2013 20:17:01 +0000 (13:17 -0700)]
osd: Add dump_blacklist to admin socket

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agoosd: Drop watchers from blacklisted clients
David Zafman [Thu, 23 May 2013 17:12:26 +0000 (10:12 -0700)]
osd: Drop watchers from blacklisted clients

On blackist addition or populate ObjectContext
   check watcher address against blacklist
Add dout() of the watcher's ip address

fixes: #3527

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agoosd: Add entity_addr_t to watch_info_t and Watch
David Zafman [Fri, 24 May 2013 00:52:46 +0000 (17:52 -0700)]
osd: Add entity_addr_t to watch_info_t and Watch

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agomon: fix preforker exit behavior behavior
Sage Weil [Sat, 1 Jun 2013 04:23:45 +0000 (21:23 -0700)]
mon: fix preforker exit behavior behavior

In 3c5706163b72245768958155d767abf561e6d96d we made exit() not actually
exit so that the leak checking would behave for a non-forking case.
That is only needed for the normal exit case; every other case expects
exit() to actually terminate and not continue execution.

Instead, make a signal_exit() method that signals the parent (if any)
and then lets you return.  exit() goes back to it's usual behavior,
fixing the many other calls in main().

Backport: cuttlefish
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
12 years agoMerge remote-tracking branch 'gh/next-leaks' into next
Sage Weil [Wed, 5 Jun 2013 23:09:31 +0000 (16:09 -0700)]
Merge remote-tracking branch 'gh/next-leaks' into next

Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>