Yehuda Sadeh
a0d238c314
rgw: cache obj version
...
Also keep bucket objv_tracker on the request state.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-10 22:02:20 -07:00
Yehuda Sadeh
922df6c5c7
rgw: op->PutACLs uses the correct set_attr for buckets
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-10 16:12:41 -07:00
Yehuda Sadeh
1f0b947d32
rgw: rados->set_attr() just calls rados->set_attrs()
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-10 15:55:01 -07:00
Yehuda Sadeh
92db7a0105
rgw: metadata handler for bucket set_attr operations
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-10 14:42:52 -07:00
Yehuda Sadeh
8b3cd6e74b
rgw: don't handle ECANCELLED anymore
...
Simplify, remove obsolete logic.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-09 21:08:24 -07:00
Yehuda Sadeh
0557e6c102
rgw: bucket metadata operations go through metadata handler
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-09 14:13:24 -07:00
Yehuda Sadeh
619a68a396
armor: don't break lines by default
...
Added a new function that breaks the lines, but by default
don't do it.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-09 11:07:17 -07:00
Yehuda Sadeh
770d94d306
rgw: implement metadata hander for buckets data
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-09 11:07:13 -07:00
Yehuda Sadeh
46c3e48ef3
ceph_json: dump timestamp in utc
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 16:26:55 -07:00
Yehuda Sadeh
551571ca88
rgw: datalog trim
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 16:26:46 -07:00
Yehuda Sadeh
ea809f7d63
rgw: bucket index log trim
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 14:22:19 -07:00
Yehuda Sadeh
546ed917fb
osd: don't assert if get_omap_iterator() returns NULL
...
Fixes : #4949
This can happen if the object does not exist and it's
a write operation. Just return -ENOENT.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 12:20:38 -07:00
Yehuda Sadeh
76b736b337
rgw: metadata log trim
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 12:18:17 -07:00
Yehuda Sadeh
ef82ad7ca7
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>
2013-05-08 11:22:09 -07:00
Yehuda Sadeh
3385c2c5be
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>
2013-05-08 11:22:09 -07:00
Yehuda Sadeh
a37092f9f3
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>
2013-05-08 11:22:08 -07:00
Yehuda Sadeh
f28df17be9
rgw: changed data log renew thread
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 11:22:08 -07:00
Yehuda Sadeh
39b258c2d8
rgw: limit num of buckets in data changes log
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 11:22:08 -07:00
Yehuda Sadeh
d5da15259b
rgw: use shared_ptr instead of RefCountedObject
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 11:22:08 -07:00
Yehuda Sadeh
5e642fae34
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>
2013-05-08 11:22:08 -07:00
Yehuda Sadeh
6659b2b6cf
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>
2013-05-08 11:22:08 -07:00
Yehuda Sadeh
171b0bf267
rgw: data changes log, naive implementation
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 11:22:08 -07:00
Yehuda Sadeh
988dab3e10
rgw: decouple bucket data pool from bucket index pool
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 11:22:08 -07:00
Yehuda Sadeh
4fbf9a75e2
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>
2013-05-08 11:01:17 -07:00
Yehuda Sadeh
0b526d95f3
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>
2013-05-08 11:01:17 -07:00
Yehuda Sadeh
abef2b2464
rgw-admin: object stat also decodes policy
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 11:01:17 -07:00
Yehuda Sadeh
d05d05a562
rgw: update cli test for radosgw-admin
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 11:01:17 -07:00
Yehuda Sadeh
2983d987ef
Makefile.am: add missing header file
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 11:01:17 -07:00
Yehuda Sadeh
7132e6e00c
rgw-admin: add object stat command
...
for retrieving object metadata.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 11:01:17 -07:00
Yehuda Sadeh
49b3d2e05e
rgw-admin: bucket list also specifies object namespace
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 11:01:17 -07:00
Yehuda Sadeh
4b142a1207
rgw: copy_obj uses req_id as tag
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 11:01:17 -07:00
Yehuda Sadeh
b295c64959
rgw: radosgw-admin bucket list --bucket lists bucket objects
...
Also lists tag for each object.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:46 -07:00
Yehuda Sadeh
3d7b83900c
rgw: call rgw_store_user_info() with objv_tracker
...
another rebase casualty
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:46 -07:00
Yehuda Sadeh
85e4ea9133
rgw-admin: fix some more merge issues
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:46 -07:00
Yehuda Sadeh
fa23b3e786
rgw-admin: fix user_id initialization
...
broken due to rebase
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:46 -07:00
Yehuda Sadeh
7e08c57d25
rgw: share object tag and index tag
...
object tag is now being written to the index, so that both
object and index hold the same tag. This is needed so that we
could know whether object and index refer to the same instance.
Also cleanup old legacy code that did atomic ops through cloning
objects.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:46 -07:00
Yehuda Sadeh
2a16bafdd9
rgw: bucket index log fixes
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:46 -07:00
Yehuda Sadeh
871b40137c
radosgw-admin: bilog list gets marker and max-entries params
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:46 -07:00
Yehuda Sadeh
b1578ba705
radosgw-admin, cls_rgw: list bucket index log
...
a new radosgw-admin command to list bucket index log.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:46 -07:00
Yehuda Sadeh
5e196283f0
cls_rgw: bucket index versioning
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:46 -07:00
Yehuda Sadeh
d857896b3a
rgw: fix broken radosgw-admin user * commands
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:46 -07:00
Yehuda Sadeh
abd0ab3e1c
cls_rgw, rgw: bucket index logs modifications
...
Add a log to the bucket index.
This commit also ties the "epoch" version that is kept
per index entry to the relevant ceph pool id. This fixes
the dependency on the specific pool where the object was
created, and makes it possible to copy rgw data pools.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:46 -07:00
Yehuda Sadeh
478fe5ee84
rgw: metadata rm
...
Still needs to fix the way we remove user entries; need to take
different path, similar to put_entry())
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:45 -07:00
Yehuda Sadeh
fe63d44bd0
rgw: cls_log_trim boundary change
...
end_time is not inclusive
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:45 -07:00
Yehuda Sadeh
288645db16
rgw: show metadata log through radosgw-admin
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:45 -07:00
Yehuda Sadeh
75ada775ac
rgw: use new cls_log listing interface
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:45 -07:00
Yehuda Sadeh
8444db6d6d
cls_log: adjust listing api
...
Listing api now also gets end time and a marker.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:45 -07:00
Yehuda Sadeh
cb6d4de494
rgw: log user operations
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:45 -07:00
Yehuda Sadeh
7ca919227f
rgw: track object versions between reads and writes
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:57:12 -07:00
Yehuda Sadeh
72220bfaba
rgw: initialize meta_mgr earlier
...
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-05-08 10:55:51 -07:00