mon: set pgp_num == pg_num (by default) for new pools

For when pg_num is specified but not pgp_num.  Thanks Greg!

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
mon: command to disable localized pgs for a pool

ceph osd pool disable_lpgs <poolname> --yes-i-really-mean-it

Grr, these should be off by default.  We can't adjust them down.  And
currently any pool adjustment triggers pg creation, which will create these
guys up through max_osd (but not, mind you, when max_osd changes).  And
a bug in the OSDs makes them think that creation is a split and get
confused.

Signed-off-by: Sage Weil <sage@newdream.net>
pgmon: clear out osd reports after the OSD has gone down

Previously we never removed report times from last_osd_report. Do
so, in check_osd_map (which, on the leader, is called synchronously
with adopting a new OSD Map).

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
OSD: improve information and format of OSDTracker messages

Also, Message now has a timestamp indicating when the message
was fully recieved for use by OSDTracker.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
FileJournal: allow write_thread and write_finisher to run in parallel

Previously, the write_thread and the write_finisher serialized on
write_lock limiting performance.  aio_lock has been introduced to
protect data moving from the write_thread to the write_finisher.
Similarly, submit_entry (called while holding journal_lock in
the filestore) also tended to hit contention on the write lock.
The queues and related structures are now protected by queue_lock.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
objectcacher: perf skeleton

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>

Conflicts:

	src/osdc/ObjectCacher.cc
	src/osdc/ObjectCacher.h
ObjectCacher: move functions out of the header.

These all set off my "big-functions-in-the-header" alarm.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
ObjectCacher: add a bunch of perfcounters

Hurray, we can collect cache statistics!

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
ObjectCacher: group all the function definitions properly

Some of the ObjectCacher functions were separate, which works poorly
if you're trying to do things like use ldout.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
ObjectCacher: use "objectcacher" instead of the CephContext::name for perfcounter init

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
librados: add IoCtx::get_pool_name() to c++ api

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

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
rgw: call dir_suggest_changes with correct bufferlist

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
objclass: fix cls_cxx_map_remove_key()

didn't set the correct osd op, didn't do anything.

Signed-off-by: Yehuda Sadeh <yehuda.sadeh@dreamhost.com>
run_xfstests.sh: pass test result via exit status

It turns out that xfstests *does* exit with non-zero status
when a test fails.  Its exit status is the number of tests
that failed (which, now that we have over 255 tests could be
an issue...)

Save the exit status and make it be the result of the run.

Signed-off-by: Alex Elder <elder@dreamhost.com
run_xfstests.sh: ensure cleanup on errors

Because we exit on any error (due to 'set -e'), the cleanup call was
never getting made in the event of an error.  The net effect of that
was that a filesystem could be left mounted, and rbd cleanup then
couldn't complete because the module was in use.

Fix the trap call so it calls cleanup on exit as well as error.
Switch to using the capitalized signal names in the call.

Signed-off-by: Alex Elder <elder@dreamhost.com>
test_idempotent_sequence: no config file

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
test_librbd: fix write sizes

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
Merge branch 'stable'
cls_rgw: don't zero out error code before reading value

We were zeroing the return code before reading it.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>