]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Samuel Just [Fri, 21 Feb 2014 21:25:36 +0000 (13:25 -0800)]
PGLog: test for missing using the correct shard value
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Fri, 21 Feb 2014 21:25:17 +0000 (13:25 -0800)]
OSD: fix query for ec pgs
We need to parse a pg_t and translate it into an spg_t.
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Fri, 21 Feb 2014 20:00:06 +0000 (12:00 -0800)]
Objecter: make is_pg_changed static and const for old/newacting
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Fri, 21 Feb 2014 19:59:16 +0000 (11:59 -0800)]
OSDMap: make calc_pg_rank/role const for acting
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Fri, 21 Feb 2014 19:59:04 +0000 (11:59 -0800)]
Objecter: resend op if primary role changed
Fixes: #7508
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Fri, 21 Feb 2014 17:34:15 +0000 (09:34 -0800)]
ECTransaction: require hash_infos for deleted objects
Otherwise, an append preceded by a delete may not see the
correct HashInfo state since it won't have been cached
until the delete is applied.
Fixes: #7506
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Fri, 21 Feb 2014 17:33:05 +0000 (09:33 -0800)]
ECUtil: clear() should reset hashes to -1, not 0
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Fri, 21 Feb 2014 02:32:08 +0000 (18:32 -0800)]
ReplicatedPG::cancel_pull: ECBackend might cancel_pull on a non-missing object
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Fri, 21 Feb 2014 02:31:35 +0000 (18:31 -0800)]
ECBackend::filter_read_op: clean up read state properly
Fixes: #7494
Signed-off-by: Samuel Just <sam.just@inktank.com>
David Zafman [Sat, 22 Feb 2014 03:28:37 +0000 (19:28 -0800)]
Merge branch 'wip-6685-firefly' into firefly
Reviewed-by: Samuel Just <sam.just@inktank.com>
Josh Durgin [Sat, 22 Feb 2014 01:40:30 +0000 (17:40 -0800)]
Merge remote-tracking branch 'origin/wip-da-SCA-
20140218 ' into firefly
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Christopher O'Connell [Sat, 22 Feb 2014 02:23:38 +0000 (18:23 -0800)]
Added evaluation of cluster and fixed evaluation when setting initial weight on start in verbose mode
Signed-off-by: Christopher O'Connell <jwriteclub@gmail.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Josh Durgin [Fri, 21 Feb 2014 23:57:29 +0000 (15:57 -0800)]
Merge pull request #1286 from ceph/wip-corpus
ceph-object-corpus: prune some old releases
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
David Zafman [Mon, 17 Feb 2014 02:24:33 +0000 (18:24 -0800)]
Revert "ReplicatedPG::recover_backfill: adjust last_backfill to HEAD if snapdir"
This reverts commit
545135f3e1c75318940caa2c82ac32a53fc4f957 .
Conflicts:
src/osd/ReplicatedPG.cc
Josh Durgin [Fri, 21 Feb 2014 22:46:27 +0000 (14:46 -0800)]
Merge remote-tracking branch 'origin/port/updates' into firefly
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Sage Weil [Fri, 21 Feb 2014 21:57:24 +0000 (13:57 -0800)]
ceph-object-corpus: prune some old releases
We do not need to test these old object encodings as they are covered by
later object collections.
Signed-off-by: Sage Weil <sage@inktank.com>
Josh Durgin [Fri, 21 Feb 2014 21:10:47 +0000 (13:10 -0800)]
Merge remote-tracking branch 'origin/wip-6936' into firefly
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Josh Durgin [Fri, 21 Feb 2014 21:09:52 +0000 (13:09 -0800)]
Merge remote-tracking branch 'origin/wip-7099' into firefly
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Josh Durgin [Fri, 21 Feb 2014 21:08:21 +0000 (13:08 -0800)]
Merge remote-tracking branch 'origin/wip-6830' into firefly
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Josh Durgin [Fri, 21 Feb 2014 21:07:34 +0000 (13:07 -0800)]
Merge remote-tracking branch 'origin/wip-6951' into firefly
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Josh Durgin [Fri, 21 Feb 2014 21:06:37 +0000 (13:06 -0800)]
Merge remote-tracking branch 'origin/wip-7064' into firefly
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Josh Durgin [Fri, 21 Feb 2014 21:05:49 +0000 (13:05 -0800)]
Merge remote-tracking branch 'origin/wip-7271' into firefly
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Noah Watkins [Fri, 21 Feb 2014 21:00:29 +0000 (13:00 -0800)]
dencoder: check for radosgw build option
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
Noah Watkins [Fri, 21 Feb 2014 21:00:09 +0000 (13:00 -0800)]
osd: use ceph scoped shared_ptr
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
Samuel Just [Fri, 21 Feb 2014 01:04:14 +0000 (17:04 -0800)]
Merge remote-tracking branch 'upstream/next'
Samuel Just [Fri, 21 Feb 2014 01:02:17 +0000 (17:02 -0800)]
Merge remote-tracking branch 'upstream/wip-copyget' into next
Fixes: #7471
Reviewed-by: Greg Farnum <greg@inktank.com>
Samuel Just [Fri, 21 Feb 2014 00:00:52 +0000 (16:00 -0800)]
PG::build_might_have_unfound: skip CRUSH_ITEM_NONE
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Thu, 20 Feb 2014 23:01:07 +0000 (15:01 -0800)]
ECBackend: deal with temp collection details in handle_sub_write
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Thu, 20 Feb 2014 21:15:51 +0000 (13:15 -0800)]
ReplicatedPG::on_global_recover: requeue degraded, then unreadable
We need to requeue in reverse order since we are requeueing at the
front.
Signed-off-by: Samuel Just <sam.just@inktank.com>
Yehuda Sadeh [Thu, 20 Feb 2014 17:01:21 +0000 (09:01 -0800)]
rgw: minor cleanup
Reviewed-by: Sage Weil <sage@inktank.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Mouad Benchchaoui [Thu, 20 Feb 2014 16:06:33 +0000 (17:06 +0100)]
Fix generate keystone token from credentials
Request to v2.0/tokens must be a POST request and the request
should specify JSON in the content-type header and fix request
body JSON generation to have the right JSON format.
Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
Signed-off-by: Mouad Benchchaoui <m.benchchaoui@x-ion.de>
Ken Dreyer [Thu, 20 Feb 2014 03:05:51 +0000 (03:05 +0000)]
Merge branch 'next'
Conflicts:
src/test/admin_socket.cc
Signed-off-by: Ken Dreyer <ken.dreyer@inktank.com>
Samuel Just [Thu, 20 Feb 2014 02:41:19 +0000 (18:41 -0800)]
RadosModel: copyfrom should result in a dirty object
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Thu, 20 Feb 2014 02:22:34 +0000 (18:22 -0800)]
PG: fix scrub feature check
acting[0] isn't necessarily the primary. Start at
0 and explicitely skip the primary.
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Thu, 20 Feb 2014 00:17:17 +0000 (16:17 -0800)]
ReplicatedPG: assert no omap for ec pool in _write_copy_chunk and skip
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Wed, 19 Feb 2014 23:50:16 +0000 (15:50 -0800)]
ECBackend: handle short reads
async reads may have a length past the end of the object.
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Wed, 19 Feb 2014 22:26:51 +0000 (14:26 -0800)]
ReplicatedPG: ensure that ec appends are aligned
When not writing out the last chunk, _write_copy_chunk
will trim the chunk to a stripe boundary for ec pools
and adjust cursor.data_offset to compensate.
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Wed, 19 Feb 2014 21:54:02 +0000 (13:54 -0800)]
ReplicatedPG::fill_in_copy_get, use getattr_maybe_cache
Also, add user_only flag to getattr_maybe_cache and cleanup
the other user.
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Wed, 19 Feb 2014 21:49:20 +0000 (13:49 -0800)]
ReplicatedPG: fix stat uses to use the correct shard
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Wed, 19 Feb 2014 23:19:03 +0000 (15:19 -0800)]
OSDMap::_apply_primary_affinity: skip CRUSH_ITEM_NONE in non-default check
Fixes: #7482
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: David Zafman <david.zafman@inktank.com>
Sage Weil [Thu, 20 Feb 2014 00:57:25 +0000 (16:57 -0800)]
doc/release-notes: v0.77
Also pending notes for v0.78
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Thu, 20 Feb 2014 00:20:35 +0000 (16:20 -0800)]
doc/release-notes: v0.67.7
Signed-off-by: Sage Weil <sage@inktank.com>
Ken Dreyer [Wed, 19 Feb 2014 22:54:44 +0000 (22:54 +0000)]
v0.77
Samuel Just [Wed, 19 Feb 2014 20:16:46 +0000 (12:16 -0800)]
osd/,mon/: add (up|acting)_primary to pg_stat_t
We use pg_stat_t information to determine pg create targeting.
Fixes: #7481
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Josh Durgin [Wed, 19 Feb 2014 19:18:57 +0000 (11:18 -0800)]
Merge pull request #1256 from ceph/wip-librados-ops-and-rvals
librados c api for object operations and a few bug fixes
Reviewed-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Loic Dachary <loic@dachary.org>
Reviewed-by: Sage Weil <sage.weil@inktank.com>
Yehuda Sadeh [Wed, 19 Feb 2014 16:59:07 +0000 (08:59 -0800)]
rgw: fix swift range response
Fixes: #7099
Backport: dumpling
The range response header was broken in swift.
Reported-by: Julien Calvet <julien.calvet@neurea.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Wed, 19 Feb 2014 16:30:51 +0000 (08:30 -0800)]
rgw: fix etag in multipart complete
Fixes: #6830
The etag member variable was not set correctly.
Reported-by: Benjamin Gilbert <bgilbert@backtick.net>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Wed, 19 Feb 2014 16:11:56 +0000 (08:11 -0800)]
rgw: reset objv tracker on bucket recreation
Fixes: #6951
If we cannot create a new bucket (as it already existed), we need to
read the old bucket's info. However, this was failing as we were holding
the objv tracker that we created for the bucket creation. We need to
clear it, as subsequent read using it will fail.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Wed, 19 Feb 2014 18:27:14 +0000 (10:27 -0800)]
radosgw-admin: don't generate access key if user exists
Fixes: #6936
We want the user creation operation to be idempotent, so if user already
exists don't generate a new access key.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Danny Al-Gaaf [Wed, 19 Feb 2014 17:40:12 +0000 (18:40 +0100)]
BackedUpObject::get_xattr() pass function parameter by reference
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 17:37:00 +0000 (18:37 +0100)]
TestRados.cc: use !empty() instead of size()
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 17:35:48 +0000 (18:35 +0100)]
ErasureCodeBench: prefer prefix ++operator for non-trivial iterator
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 17:34:58 +0000 (18:34 +0100)]
ceph_erasure_code.cc: prefer prefix ++operator for non-trivial iterator
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 17:32:16 +0000 (18:32 +0100)]
RGWObjManifest: prefer prefix ++/--operator for non-trivial iterator
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 17:30:18 +0000 (18:30 +0100)]
ReplicatedPG: prefer prefix ++operator for non-trivial iterator
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 17:26:08 +0000 (18:26 +0100)]
OSD: use !empty() instead of size() > 0
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 17:17:54 +0000 (18:17 +0100)]
PG: use !empty() instead of size() > 0
[src/osd/PG.cc:543]: (performance) Possible inefficient checking
for 'actingbackfill' emptiness.
[src/osd/PG.cc:1480]: (performance) Possible inefficient checking
for 'actingbackfill' emptiness.
[src/osd/PG.cc:1774]: (performance) Possible inefficient checking
for 'actingbackfill' emptiness.
[src/osd/PG.cc:1810]: (performance) Possible inefficient checking
for 'actingbackfill' emptiness.
[src/osd/PG.cc:2229]: (performance) Possible inefficient checking
for 'actingbackfill' emptiness.
[src/osd/PG.cc:2599]: (performance) Possible inefficient checking
for 'actingbackfill' emptiness.
[src/osd/PG.cc:4345]: (performance) Possible inefficient checking
for 'actingbackfill' emptiness.
[src/osd/PG.cc:6067]: (performance) Possible inefficient checking
for 'actingbackfill' emptiness.
[src/osd/PG.cc:6264]: (performance) Possible inefficient checking
for 'actingbackfill' emptiness.
[src/osd/PG.cc:6807]: (performance) Possible inefficient checking
for 'actingbackfill' emptiness.
[src/osd/PG.cc:7014]: (performance) Possible inefficient checking
for 'actingbackfill' emptiness.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 17:09:24 +0000 (18:09 +0100)]
RPCRecPred: use !empty() instead of size() >= 1
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 17:05:31 +0000 (18:05 +0100)]
KeyValueStore: prefer prefix ++operator for non-trivial iterator
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 17:03:45 +0000 (18:03 +0100)]
KeyValueStore: use !empty() instead of size()
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 17:02:19 +0000 (18:02 +0100)]
FileStore: use !empty() instead of size()
[src/os/FileStore.cc:3635]: (performance) Possible inefficient checking
for 'omap_set' emptiness.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 16:59:37 +0000 (17:59 +0100)]
DBObjectMap: use !empty() instead of size()
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 16:57:04 +0000 (17:57 +0100)]
OSDMonitor: prefer prefix ++operator for non-trivial iterator
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 16:55:17 +0000 (17:55 +0100)]
OSDMonitor: use !empty() instead of size() > 0
[src/mon/OSDMonitor.cc:730]: (performance) Possible inefficient checking
for 'osd_weight' emptiness.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 16:53:16 +0000 (17:53 +0100)]
MDCache: prefer prefix ++operator for non-trivial iterator
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 16:51:48 +0000 (17:51 +0100)]
CrushWrapper::is_valid_crush_loc(): pass function parameter by reference
[src/crush/CrushWrapper.cc:1412]: (performance) Function parameter 'loc'
should be passed by reference.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 15:41:16 +0000 (16:41 +0100)]
CrushWrapper: prefer prefix ++operator for non-trivial iterator
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 15:38:35 +0000 (16:38 +0100)]
PGLog.h: prefer prefix ++operator for non-trivial iterator
[src/osd/PGLog.h:363]: (performance) Prefer prefix ++/-- operators for
non-primitive types.
[src/osd/PGLog.h:375]: (performance) Prefer prefix ++/-- operators for
non-primitive types.
[src/osd/PGLog.h:380]: (performance) Prefer prefix ++/-- operators for
non-primitive types.
[src/osd/PGLog.h:382]: (performance) Prefer prefix ++/-- operators for
non-primitive types.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 15:24:27 +0000 (16:24 +0100)]
Client: remove a std::string::c_str() calls
[src/client/Client.cc:6821]: (performance) Passing the result of c_str() to a
function that takes std::string as argument no. 2 is slow and redundant.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 15:17:43 +0000 (16:17 +0100)]
common/config.cc: prefer prefix ++operator for non-trivial iterator
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 15:13:19 +0000 (16:13 +0100)]
str_map.cc: prefer prefix ++operator for non-trivial iterator
[src/common/str_map.cc:55]: (performance) Prefer prefix ++/-- operators
for non-primitive types.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 15:10:54 +0000 (16:10 +0100)]
Client.cc: use !empty() instead of size()
[src/client/Client.cc:2275]: (performance) Possible inefficient
checking for 'cap_snaps' emptiness.
[src/client/Client.cc:2458]: (performance) Possible inefficient
checking for 'cap_snaps' emptiness.
[src/client/Client.cc:2986]: (performance) Possible inefficient
checking for 'caps' emptiness.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 14:20:12 +0000 (15:20 +0100)]
ceph_argparse.cc: prefer prefix ++operator for non-trivial iterator
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 14:13:31 +0000 (15:13 +0100)]
Monitor: pass function parameter by reference
[src/mon/Monitor.h:619]: (performance) Function parameter 'param_str_map'
should be passed by reference.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 14:05:46 +0000 (15:05 +0100)]
BarrierContext: prefer prefix ++operator for non-trivial iterator
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 14:02:53 +0000 (15:02 +0100)]
BarrierContext: reduce scope of 'done' variable
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Danny Al-Gaaf [Wed, 19 Feb 2014 13:54:02 +0000 (14:54 +0100)]
MonClient: pass function parameter by reference
[src/mon/MonClient.h:412]: (performance) Function parameter 'mon_name'
should be passed by reference.
Changed also parameter name in function implementation to match name
in declaration.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Samuel Just [Wed, 19 Feb 2014 00:08:12 +0000 (16:08 -0800)]
PG: insert into stray set if !us_up() && !is_acting()
This is simpler than checking actingbackfill
since it may not yet be filled in.
Fixes: #7470
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Sage Weil [Wed, 19 Feb 2014 05:10:04 +0000 (21:10 -0800)]
Merge pull request #1257 from ceph/wip-agent
osd: a few agent fixes
Reviewed-by: Samuel Just <sam.just@inktank.com>
Sage Weil [Wed, 19 Feb 2014 05:02:43 +0000 (21:02 -0800)]
osd/ReplicatedPG: EOPNOTSUPP on hit_set_get on non-replicated pools
We need to use the async read stuff for this to work.
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Wed, 19 Feb 2014 05:02:15 +0000 (21:02 -0800)]
osd/ReplicatedPG: load older HitSets into memory
If our evict_mode is non-idle, load older HitSets into memory in the agent
work thread.
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Mon, 17 Feb 2014 22:46:55 +0000 (14:46 -0800)]
osd/ReplicatedPG: strengthen agent_work assertions
Signed-off-by: Sage Weil <sage@inktank.com>
Samuel Just [Tue, 18 Feb 2014 23:25:33 +0000 (15:25 -0800)]
OSD: consider up/acting primary for new intervals
Both acting_up_affected and start_peering_interval need
to consider primary changes as well as acting/up changes.
Fixes: #7469
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Yehuda Sadeh [Wed, 19 Feb 2014 02:14:40 +0000 (18:14 -0800)]
rgw: don't try to read bucket's policy if it doesn't exist
It's going to fail anyway, just build a default policy.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Wed, 19 Feb 2014 00:43:48 +0000 (16:43 -0800)]
rgw: return error if accessing object in non-existent bucket
Fixes: #7064
Instead of trying to access the object, which is impossible as we don't
even have a proper bucket info. Up until now we ended up creating an
empty pool and eventually returning ENOENT, this fix catches the issue
earlier in the process.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Josh Durgin [Tue, 18 Feb 2014 23:38:34 +0000 (15:38 -0800)]
Merge pull request #1259 from ceph/wip-6677
rgw: add compatibility for MultipartUpload
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Josh Durgin [Tue, 18 Feb 2014 23:37:58 +0000 (15:37 -0800)]
Merge pull request #1258 from ceph/wip-rgw-gc
radosgw-admin: gc list --include-all
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Yehuda Sadeh [Tue, 18 Feb 2014 19:45:15 +0000 (11:45 -0800)]
radosgw-admin: gc list --include-all
A new option to the radosgw-admin gc list command that dumps *all* gc
entries, and not just the expired ones. This is useful for debugging.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Josh Durgin [Tue, 18 Feb 2014 21:41:35 +0000 (13:41 -0800)]
Merge pull request #1261 from ceph/wip-7463
ceph_rest_api.py: don't fail if no up OSDs found on startup
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Mike Lundy [Tue, 11 Feb 2014 23:58:06 +0000 (15:58 -0800)]
Throw a Timeout exception on timeout.
Signed-off-by: Mike Lundy <mike@fluffypenguin.org>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Josh Durgin [Tue, 18 Feb 2014 21:07:53 +0000 (13:07 -0800)]
Merge pull request #1214 from ceph/wip-rgw-manifest-2
Wip rgw manifest 2
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Yehuda Sadeh [Sat, 8 Feb 2014 01:00:07 +0000 (17:00 -0800)]
dencoder: fix for new rgw manifest code
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Sat, 8 Feb 2014 00:34:52 +0000 (16:34 -0800)]
cls/rgw: fix debug output
print the correct error value
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Mon, 3 Feb 2014 22:58:00 +0000 (14:58 -0800)]
test/rgw: manifest unitest
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Yehuda Sadeh [Fri, 31 Jan 2014 00:05:42 +0000 (16:05 -0800)]
rgw: scalable manifest object
Define a new manifest structure. The idea is that the manifest defines a
set of rules for structuring the object parts. There are a few terms to
note:
- head: the head part of the object, which is the part that contains
the first chunk of data. An object might not have a head (as in the
case of multipart-part objects.
- stripe: data portion of a single rgw object that resides on a single
rados object.
- part: a collection of stripes that make a contiguous part of an
object. A regular object will only have one part (although might have
many stripes), a multipart object might have many parts. Each part
has a fixed stripe size, although the last stripe of a part might
be smaller than that. Consecutive parts may be merged if their stripe
value is the same.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Dan Mick [Tue, 18 Feb 2014 21:07:32 +0000 (13:07 -0800)]
ceph_rest_api.py: don't fail if no up OSDs found on startup
allow find_up_osd() to return None, and have caller check for it
Fixes: #7463
Signed-off-by: Dan Mick <dan.mick@inktank.com>
Josh Durgin [Tue, 18 Feb 2014 01:09:26 +0000 (17:09 -0800)]
test/librados: remove unused lines and fix return code for cmp guards
Now that return values are actually set by the osd and client, fix up
the tests that were checking the old behavior.
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Josh Durgin [Tue, 18 Feb 2014 06:42:13 +0000 (22:42 -0800)]
ReplicatedPG: fix successful write condition
ctx->modify no longer implies that the operation is a write,
if it ever did. These days op->may_write() is checked reliably
on the OSD, so just use that instead.
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Josh Durgin [Tue, 18 Feb 2014 06:35:13 +0000 (22:35 -0800)]
ReplicatedPG: clear osd op reply output for writes
Since the vector of OSDOps used by the reply is the same
as the one processed by do_osd_ops() now, any output data
needs to be cleared for writes. To be compatible with current behavior,
allow writes that aren't applying anything or have failed to return data
still.
Add a new parameter to the MOSDOpReply constructor to determine
whether the output data should be cleared. Clear it for successful
writes, and remove a redundant result < 0 -> result > 0 check in the
process. This was caught by ceph_test_cls_hello and its
writes_dont_return_data method.
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Josh Durgin [Fri, 7 Feb 2014 02:20:06 +0000 (18:20 -0800)]
ReplicatedPG: set individual osd op rvals
This takes care of things that can fail before transaction is
executed, like omap comparison. Getting individual rvals from a
transaction requires more refactoring, so I'm leaving it for a later
cleanup.
Fixes: #6483
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>