osd: use per-pool temp poolid for temp objects

Previously, all temp objects had poolid == -1.  Instead, use -2 - poolid.
This, when combined with the PG hash, provides a unique temp namespace
per pg.

This has no impact on upgrade, since we delete all temp objects on startup
by collection (coll_t::is_temp()).

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

Go from (hobj, shard, gen) -> (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.

Signed-off-by: Sage Weil <sage@redhat.com>
osd/osd_types: remove ancient CEPH_*_NS cruft

Signed-off-by: Sage Weil <sage@redhat.com>
osd: eliminate temp collections

The temp objects have distinct pool ids.  Old temp objects are already
blown away on OSD restart.  This patch removes all the futzing with
temp_coll and puts the temp objects in the same collection as everything
else.

Interesting, collection_move_rename is now always using the same source
and dest collection.  Hmm!

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