rgw: radosgw-admin bucket list --bucket lists bucket objects

Also lists tag for each object.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: copy_obj uses req_id as tag

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw-admin: bucket list also specifies object namespace

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw-admin: add object stat command

for retrieving object metadata.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Makefile.am: add missing header file

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: update cli test for radosgw-admin

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw-admin: object stat also decodes policy

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: don't set shadow obj attr in object metadata

This is incorrect, was only right for pre-manifest objects.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: fix get_obj() with zero sized obj

Now that even zero sized objs have manifest a
test had to be modified.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: decouple bucket data pool from bucket index pool

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: data changes log, naive implementation

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: data changes log, don't always send new requests

We may piggy back on older entries that hasn't expired yet.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
lru_map: infrastructure for a bounded map

Useful for cache-like maps, where we want to control
the max number of entries in the map.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: use shared_ptr instead of RefCountedObject

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: limit num of buckets in data changes log

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: changed data log renew thread

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
RefCounteCond: keep return val, wait() returns it

It is necessary in some cases to notify waiters of the
actual return value for the action they were waiting on.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: more data changes log implementation

Remove a bunch of hard coded stuff. Make renew thread updates
expiration. Only renew if there was more than one request through the
current window.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: resend data log entry if took too long

If took too long, we want to resend. Also, fix issue with
renew.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: metadata log trim

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>