mon/PGMonitor: fix 'pg dump_[pools_]json'

Use the correct type for the dumpcontents arg.  Fixes the dump_pools_json
output and avoids these errors:

2013-07-29 13:09:14.089188 7fa0c5d21700 -1 0x7fa0c5d1e7a8
2013-07-29 13:09:16.306560 7fa0c5d21700 -1 bad boost::get: key dumpcontents is not type std::vector<std::string, std::allocator<std::string> >
2013-07-29 13:09:16.317104 7fa0c5d21700 -1 0x7fa0c5d1e7a8
2013-07-29 13:09:16.317136 7fa0c5d21700 -1 bad boost::get: key dumpcontents is not type std::vector<std::string, std::allocator<std::string> >

Fixes: #5786
Signed-off-by: Sage Weil <sage@inktank.com>
rgw: read / write bucket attributes from bucket instance

and not from bucket entry point.

Fixes: #5770

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
rgw: track bucket instance oid

We now keep the bucket instance oid in rgw_bucket. The reason
we need it is that the bucket might have been created before
the entrypoint / bucket instance separation.

Fixes: #5790

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
rgw: set bucket attrs are a bucket instance meta operation

Need to do the action through the bucket instance handler
and not through the bucket handler, otherwise it's wrongly
recorded (and wrongly replayed, ouch).

Fixes: #5791

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Merge pull request #463 from toabctl/upstart-handling

Use dh_installinit to install upstart job files

Reviewed-by: Gaudenz Steinlin <gaudenz@debian.org>
rgw: cors subresource needs to be in canonical auth header

Fixes: #5789

This was fixed before, however, might have been lost due to
recent refactoring + merge.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
rgw: keep a region connection map

Fixes: #5793

Beforehand all remote copies were going to the master region
which was awfully wrong.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
mon/Paxos: be more vocal about calling elections

Signed-off-by: Sage Weil <sage@inktank.com>
mon: drop useless sync_reset() calls

These are both right before bootstrap(), which also resets.

Signed-off-by: Sage Weil <sage@inktank.com>
mon: allow others to sync from us across bootstrap calls

If someone is syncing from us and there is an election, they currently get
reset and have to restart their sync.  This can lead to situations where
they can never finish, e.g., when the load from them syncing makes us time
out commits and call elections.

There is nothing that changes during bootstrap that would prevent a sync
from proceeding.  The only time we need to stop providing is when we
ourselves decide to sync from someone else; modify that reset call to
reset provider state.  All other resets become requester resets.

Signed-off-by: Sage Weil <sage@inktank.com>
mon: add missing state name

Signed-off-by: Sage Weil <sage@inktank.com>
Merge remote-tracking branch 'gh/wip-mon' into next

Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
Revert "Use dh_installinit to install upstart job files"

This reverts commit 251a6a498d07f7873b0e15b0ca2caf7f12c48f04.

This includes /etc/init.d/radosgw in the ceph package, which makes it
conflict with radosgw.
v0.67-rc3
Objecter: set c->session to NULL if acting is empty

Otherwise, we might leave a session attached to the
CommandOp for an down OSD.  handle_osd_map will then
delete the session for the down OSD.  tick() will then
attempt to follow the invalid pointer to find a
connection over which to send a MPing.

Fixes: #5798
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
rgw: fix set_buckets_enabled(), set_bucket_owner()

Fixes: 5808

We cannot call get_bucket_instance_info() at that point,
as the bucket structure wasn't initialized, so we don't
have the bucket instance location information. Just calling
get_bucket_info().

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Merge remote-tracking branch 'gh/next'
Make all AdminSocket commands use argparse/cmdmap.

Fixes regression in daemon commands with arguments; also resolves
reported bug with existing daemon code for arguments with
embedded spaces.

Fixes: #5503
Fixes: #5800

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
cephtool/test.sh: add tests for mon daemon command

[Also move into a separatate test script; validate result -sage]

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Signed-off-by: Sage Weil <sage@inktank.com>
ceph: developer mode: set PATH, too

Otherwise the call to ceph-conf may fail if it is not installed on the
local machine.

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