summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* osd: revert 'osd max xattr size' limitwip-6336Sage Weil2013-09-193-12/+17
| | | | | | Set it to 0 (unlimited) for now. Signed-off-by: Sage Weil <sage@inktank.com>
* v0.69v0.69Gary Lowell2013-09-182-1/+7
|
* rgw: try to create log pool if doesn't existYehuda Sadeh2013-09-131-0/+9
| | | | | | | | When using replica log, if the log pool doesn't exist all operations are going to fail. Try to create it if doesn't exist. Reviewed-by: Josh Durgin <josh.durgin@inktank.com> Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
* rgw: NULL terminate buffer before parsing itYehuda Sadeh2013-09-131-0/+1
| | | | | | | | | | | | Fixes: #6175 Backport: dumpling We get a buffer off the remote gateway which might not be NULL terminated. The JSON parser needs the buffer to be NULL terminated even though we provide a buffer length as it calls strlen(). Reviewed-by: Josh Durgin <josh.durgin@inktank.com> Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
* rgw: don't call list::size() in ObjectCacheYehuda Sadeh2013-09-112-2/+6
| | | | | | | | Fixes: #6286 Use an external counter instead of calling list::size() Reviewed-by: Sage Weil <sage@inktank.com> Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
* rgw: drain pending requests before completing writeYehuda Sadeh2013-09-112-1/+6
| | | | | | | | | | Fixes: #6268 When doing aio write of objects (either regular or multipart parts) we need to drain pending aio requests. Otherwise if gateway goes down then object might end up corrupted. Reviewed-by: Josh Durgin <josh.durgin@inktank.com> Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
* rgw: when failing read from client, return correct errorYehuda Sadeh2013-09-101-1/+1
| | | | | | | | | | | Fixes: #6214 When getting a failed read from client when putting an object we returned the wrong value (always 0), which in the chunked- upload case ended up in assuming that the write was done successfully. Signed-off-by: Yehuda Sadeh <yehuda@inktank.com> Reviewed-by: Sage Weil <sage@inktank.com>
* Merge pull request #583 from ceph/wip-6230-workunitSage Weil2013-09-091-0/+4
|\ | | | | | | | | qa: workunits: mon: crush_ops: test 'ceph osd crush move' Reviewed-by: Sage Weil <sage@inktank.com>
| * qa: workunits: mon: crush_ops: test 'ceph osd crush move'Joao Eduardo Luis2013-09-101-0/+4
|/ | | | Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
* Merge pull request #582 from ceph/wip-6230Sage Weil2013-09-092-1/+2
|\ | | | | | | | | mon: MonCommands: expect a CephString as 1st arg for 'osd crush move' Reviewed-by: Sage Weil <sage@inktank.com>
| * mon: MonCommands: expect a CephString as 1st arg for 'osd crush move'wip-6230Joao Eduardo Luis2013-09-092-1/+2
|/ | | | | | Fixes: #6230 Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
* Merge pull request #576 from ceph/wip-6078-2Sage Weil2013-09-072-2/+0
|\ | | | | | | | | rgw: fix get cors, delete cors Reviewed-by: Sage Weil <sage@inktank.com>
| * rgw: fix get cors, delete corsYehuda Sadeh2013-09-062-2/+0
| | | | | | | | | | | | | | | | Remove a couple of variables that overrode class member. Not really clear how it was working before, might have been a bad merge / rebase. Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
* | Merge pull request #571 from dalgaaf/fix-da-init-radosgwSage Weil2013-09-072-2/+2
|\ \ | | | | | | | | | | | | | | | init-radosgw*: fix status return value if radosgw isn't running Backport: dumpling Reviewed-by: Sage Weil <sage@inktank.com>
| * | init-radosgw*: fix status return value if radosgw isn't runningDanny Al-Gaaf2013-09-072-2/+2
|/ / | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
* | osd/ReplicatedPG: set reply versions for pg ops (PGLS)Sage Weil2013-09-041-0/+1
| | | | | | | | | | | | | | | | | | Returning the current version for the pgid and last_user_version makes some sense here. Signed-off-by: Sage Weil <sage@inktank.com> Reviewed-by: Greg Farnum <greg@inktank.com> (cherry picked from commit b05f7ea5199fc190a3be887fac4d74417461e1ce)
* | osd/ReplicatedPG: set reply versions on dup op ACKSage Weil2013-09-041-0/+1
|/ | | | | | | | | | All other MOSDOpReply creators do this, with the exception of the pg op. Fixes: #6222 Signed-off-by: Sage Weil <sage@inktank.com> Reviewed-by: Greg Farnum <greg@inktank.com> (cherry picked from commit 5148aac73d50593217455619bef95b8e1b296e10)
* rgw: flush pending data when completing multipart part uploadYehuda Sadeh2013-09-043-5/+13
| | | | | | | | | | | | | Fixes: #6111 Backport: dumpling When completing the part upload we need to flush any data that we aggregated and didn't flush yet. With earlier code didn't have to deal with it as for multipart upload we didn't have any pending data. What we do now is we call the regular atomic data completion function that takes care of it. Reviewed-by: Josh Durgin <josh.durgin@inktank.com> Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
* rgw: check object name after rebuilding it in S3 POSTYehuda Sadeh2013-09-041-0/+5
| | | | | | | | | | | | | Fixes: #6088 Backport: bobtail, cuttlefish, dumpling When posting an object it is possible to provide a key name that refers to the original filename, however we need to verify that in the end we don't end up with an empty object name. Reviewed-by: Josh Durgin <josh.durgin@inktank.com> Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
* Merge branch 'wip-6078' into nextYehuda Sadeh2013-09-0412-149/+231
|\ | | | | | | Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
| * rgw: fix certain return status cases in CORSYehuda Sadeh2013-09-042-12/+10
| | | | | | | | | | | | | | Change return values in certain cases, reorder checks, etc. Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
| * rgw: add COPY method to be handled by CORSYehuda Sadeh2013-09-042-5/+11
| | | | | | | | | | | | Was missing this http method. Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
| * rgw: fix CORS rule checkYehuda Sadeh2013-09-041-0/+3
| | | | | | | | Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
| * rgw: don't handle CORS if rule not found (is NULL)Yehuda Sadeh2013-09-041-1/+5
| | | | | | | | Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
| * rgw: tie CORS header response to all relevant operationsYehuda Sadeh2013-09-045-57/+62
| | | | | | | | | | | | | | Have the CORS responses on all relevant operations. Also add headers on failure cases. Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
| * rgw: add a generic CORS response handlingYehuda Sadeh2013-09-045-75/+138
| | | | | | | | Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
| * rgw: OPTIONS request doesn't need to read object infoYehuda Sadeh2013-09-041-1/+1
| | | | | | | | | | | | | | | | This is a bucket-only operation, so we shouldn't look at the object. Object may not exist and we might respond with Not Exists response which is not what we want. Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
| * rgw: remove use of s->bucket_corsYehuda Sadeh2013-09-044-10/+13
| | | | | | | | | | | | | | Some old code still tried to use s->bucket_cors, which was abandoned in a cleanup work. Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
* | Merge branch 'next'Gary Lowell2013-09-044-9/+27
|\ \ | |/
| * v0.68v0.68Gary Lowell2013-09-032-1/+7
| |
| * rgw: change watch init ordering, don't distribute if can'tYehuda Sadeh2013-09-032-8/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | Backport: dumpling Moving back the watch initialization after the zone init, as the zone info holds the control pool name. Since zone init might need to create a new system object (that needs to distribute cache), don't try to distribute cache if watch is not yet initialized. Reviewed-by: Sage Weil <sage@inktank.com> Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
* | Merge branch 'wip-copyfrom'Sage Weil2013-09-0313-6/+460
|\ \ | | | | | | | | | Reviewed-by: Samuel Just <sam.just@inktank.com>
| * | ceph_test_rados: test COPY_FROMSage Weil2013-09-032-2/+102
| | | | | | | | | | | | Signed-off-by: Sage Weil <sage@inktank.com>
| * | osd: initial COPY_FROM (not viable for large objects)Sage Weil2013-09-035-13/+305
| | | | | | | | | | | | | | | | | | | | | | | | | | | Initial pass at COPY_FROM implementation. This uses COPY_GET to read an object from another OSD and write it locally. It chunks the read but accumulates it all in-memory and commits it at once, so it is only suitable for smaller objects. Signed-off-by: Sage Weil <sage@inktank.com>
| * | objecter, librados: add COPY_FROM operationSage Weil2013-09-037-0/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This operation will copy an entire object (data, attrs, omap) atomically. If the src_version does not match the source object, or the source object is updated while the copy is in progress, we will fail with a suitable error code. By atomic we mean that it will either successfully copy the entire object in its entirety or it will fail (and require no cleanup). Add to C++ librados API only for now. Signed-off-by: Sage Weil <sage@inktank.com> Conflicts: src/include/ceph_strings.cc src/include/rados.h src/osd/osd_types.cc
* | | doc: Fix repo URL for Ceph cloning (dev/generatedocs)Dan Mick2013-09-031-1/+1
|/ / | | | | | | Signed-off-by: Dan Mick <dan.mick@inktank.com>
* | doc: Updated manual install to include sync agent, ARM packages, and DNS ↵John Wilkins2013-09-031-9/+57
| | | | | | | | | | | | configuration. Signed-off-by: John Wilkins <john.wilkins@inktank.com>
* | ceph_test_rados: add missing kick for rollbackSage Weil2013-09-031-0/+1
| | | | | | | | | | | | | | | | This was broken by the refactor in 96aaa5e3a371ade8b91ad9ab991d996eaef2cea5 and can make us hang. Signed-off-by: Sage Weil <sage@inktank.com> Reviewed-by: Samuel Just <sam.just@inktank.com>
* | osd: provide better version bounds for cls_current_version and ENOENT repliesGreg Farnum2013-09-033-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Following the changes to when we set or increase the user_version, we want to continue to return the best lower bound we can on the version of any newly-created object. For ENOENT replies that means returning info.last_user_version instead of the (potentially-zero) ctx->user_at_version. Similarly, for cls_current_version we want to return the last version on the PG rather than the last update to the object in order to provide sensible version ordering across object deletes and creates. Update the versions doc so it continues to be precise. Signed-off-by: Greg Farnum <greg@inktank.com> Reviewed-by: Sage Weil <sage@inktank.com>
* | Merge remote-tracking branch 'gh/wip-6179'Sage Weil2013-09-033-25/+33
|\ \ | | | | | | | | | Reviewed-by: Greg Farnum <greg@inktank.com>
| * | osd/ReplicatedPG: set user_version in waiting_for_commit replieswip-6179Sage Weil2013-09-021-1/+2
| | | | | | | | | | | | Signed-off-by: Sage Weil <sage@inktank.com>
| * | osd/ReplicatedPG: do not set ctx->user_at_version unless ctx->user_modifySage Weil2013-09-011-5/+5
| | | | | | | | | | | | | | | | | | | | | Leave ctx->user_at_version set to the previous oi.user_version unless/until we find that ctx->user_modify is true. Signed-off-by: Sage Weil <sage@inktank.com>
| * | osd/ReplicatedPG: do not log a user_version on the snapdir objectSage Weil2013-09-011-1/+1
| | | | | | | | | | | | Signed-off-by: Sage Weil <sage@inktank.com>
| * | osd/ReplicatedPG: log previous user_version on cloneSage Weil2013-09-011-2/+3
| | | | | | | | | | | | | | | | | | Nothing relies on this, but it makes sense to me. Signed-off-by: Sage Weil <sage@inktank.com>
| * | osd/ReplicatedPG: do not log user_version on deletion eventsSage Weil2013-09-011-12/+12
| | | | | | | | | | | | | | | | | | Or snap trim events where we are adjusting the head's snapdir attr. Signed-off-by: Sage Weil <sage@inktank.com>
| * | osd/PG: only raise PG's last_user_version if entry is >Sage Weil2013-09-011-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | We may have pg entries that do not increase the user_version at all (i.e., they may be 0). Do not update the last_user_version in that case as we need it to remain an upper bound. Signed-off-by: Sage Weil <sage@inktank.com>
| * | osd: debug user_versions a bitSage Weil2013-09-011-3/+5
| | | | | | | | | | | | Signed-off-by: Sage Weil <sage@inktank.com>
* | | Merge pull request #562 from kri5/wip-4365Yehuda Sadeh2013-09-031-1/+2
|\ \ \ | |/ / |/| | | | | | | | rgw: Allow wildcard in supported keystone roles. Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
| * | rgw: Allow wildcard in supported keystone roles.Christophe Courtaut2013-09-031-1/+2
|/ / | | | | | | | | | | http://tracker.ceph.com/issues/4365 fixes #4365 Signed-off-by: Christophe Courtaut <christophe.courtaut@gmail.com>
* | osdc/Objecter: fix dereference of NULL pg_pool_tSage Weil2013-09-011-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | Make sure we don't dereference a NULL pointer. Note that we check a bit further down if the target pool does not exist and return the proper error. Bug was reliably reproduced by ./ceph_test_rados_api_watch_notify --gtest_filter=LibRadosWatchNotify.WatchNotifyTimeoutTestPP Signed-off-by: Sage Weil <sage@inktank.com>