test/osd/osd-test-helper.sh: debug filestore, ms

Signed-off-by: Sage Weil <sage@redhat.com>
os/HashIndex: use ghobject_t::get_max() instead of hobject_t one

We are working with ghobject_t's; use that max!

Signed-off-by: Sage Weil <sage@redhat.com>
hobject_t: change default pool id to INT64_MIN

We are including pool in a (more) significant part of the sort and using
negative pool IDs; the default must be the most negative (min) so that
it is a useful starting point for a search.

Signed-off-by: Sage Weil <sage@redhat.com>
hobject_t: adjust sort order (pool position)

Make pool more significant than hash (and nspace, object, and everything
else).

This won't break anything because we only care about hobject_t sort order
within the context of a PG (or possibly split) where pool is always
fixed.

Signed-off-by: Sage Weil <sage@redhat.com>
hobject_t: modify operator<<

Put the most significant fields to the left so that it matches the sort
order.  Also use unambiguous separator when the nspace is present
(like we do with the key).

Signed-off-by: Sage Weil <sage@redhat.com>
hobject_t: adjust comparator to check most-likely-different fields first

Signed-off-by: Sage Weil <sage@redhat.com>
ghobject_t: change sort order (max, shard, hobj, gen)

Go from (hobj, shard, gen) -> (max, shard, hobj, gen)

This makes the ghobject_t's sort in a way that groups them by PG, which
will likely be useful in the future for ObjectStore implementations.
Notably, we get a ghobject_t MAX value that is distinct from the
hobject_t one.

Signed-off-by: Sage Weil <sage@redhat.com>
ceph_objectstore_test: a few simple collection_list_partial tests

Add a simple list test, and a second one that mixes different pool ids
into the same collection.  The latter confirms that we can deal with
ghobject_t's in the temp pool space within a single collection.

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