]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Samuel Just [Wed, 1 Oct 2014 21:30:59 +0000 (14:30 -0700)]
ReplicatedPG: dump snap_trimq on pg query
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Mon, 29 Sep 2014 23:26:54 +0000 (16:26 -0700)]
ReplicatedPG: do not queue the snap trimmer constantly
Previously, we continuously requeued the snap trimmer while in
TrimmingObjects. This is not a good idea now that we try to
limit the number of snap trimming repops in flight and requeue
the snap trimmer directly as those repops complete.
Fixes: #9113
Backport: giant, dumpling, firefly
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Wed, 24 Sep 2014 20:55:47 +0000 (13:55 -0700)]
ReplicatedPG: clean out completed trimmed objects as we go
Also, explicitely maintain a max number of concurrently trimming
objects.
Fixes: 9113
Backport: dumpling, firefly, giant
Signed-off-by: Samuel Just <sam.just@inktank.com>
Jenkins [Tue, 6 May 2014 14:03:28 +0000 (14:03 +0000)]
0.80
Sage Weil [Sat, 3 May 2014 22:11:58 +0000 (15:11 -0700)]
Merge pull request #1763 from ceph/wip-blacklist
Wip blacklist
Backport: firefly
Reviewed-by: Sage Weil <sage@inktank.com>
Yan, Zheng [Sat, 3 May 2014 21:17:15 +0000 (05:17 +0800)]
osd: check blacklisted clients in ReplicatedPG::do_op()
OSD checks if client is blacklisted only when receiving OSD request.
It's possible that OSD request's sender get blacklisted while OSD
request in in some waiting list.
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
Sage Weil [Sat, 3 May 2014 14:52:08 +0000 (07:52 -0700)]
ceph-object-corpus:
v0.80-rc1-35-g4812150
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Fri, 2 May 2014 22:10:43 +0000 (15:10 -0700)]
mon/PGMonitor: set tid on no-op PGStatsAck
The OSD needs to know the tid. Both generally, and specifically because
the flush_pg_stats may be blocking on it.
Fixes: #8280
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit
5a6ae2a978dcaf96ef89de3aaa74fe951a64def6 )
Sage Weil [Fri, 2 May 2014 22:00:11 +0000 (15:00 -0700)]
mon/OSDMonitor: share latest map with osd on dup boot message
If we get a dup boot message, share the newer maps with the osd so that
they know they are living in the past.
Fixes: #8279
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit
2e6b24868da0b203c2d70ac91071166d95d1d851 )
Sage Weil [Fri, 2 May 2014 00:08:36 +0000 (17:08 -0700)]
Merge pull request #1751 from ceph/wip-mds-shutdown
mds: remove mdsdir in the final step of shutdown MDS
Reviewed-by: Sage Weil <sage@inktank.com>
Yan, Zheng [Thu, 1 May 2014 21:22:35 +0000 (05:22 +0800)]
mds: remove mdsdir in the final step of shutdown MDS
Otherwise we may get bad subtree map if we restart the MDS before
the shutdown process finishes.
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
Samuel Just [Fri, 18 Apr 2014 00:26:17 +0000 (17:26 -0700)]
ReplicatedPG: block scrub on blocked object contexts
Fixes: #8011
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
(cherry picked from commit
e66f2e36c06ca00c1147f922d3513f56b122a5c0 )
Samuel Just [Tue, 1 Apr 2014 23:27:20 +0000 (16:27 -0700)]
rados.h,ReplicatedPG: add CEPH_OSD_FLAG_ENFORCE_SNAPC and use on flush
We need to ensure that even with pool snaps, we use the snapc provided in order
to ensure that the clones are written back correctly.
Fixes: #7941
Signed-off-by: Samuel Just <sam.just@inktank.com>
(cherry picked from commit
499adb1db1cd225c91acce31b5f48fad5145043b )
Samuel Just [Thu, 24 Apr 2014 19:48:44 +0000 (12:48 -0700)]
ECBackend::continue_recovery_op: handle a source shard going down
get_min_avail_to_read_shards might return an error if there are
no longer enough sources to reconstruct the missing shards.
This is possible if osds went down while we were writing the
previous chunk -- we already notice in check_recovery_sources
if a source goes down during a read.
Fixes: #8161
Signed-off-by: Samuel Just <sam.just@inktank.com>
(cherry picked from commit
1885792c517670086332a8bab237c58558ee6dda )
Samuel Just [Fri, 25 Apr 2014 23:28:38 +0000 (16:28 -0700)]
ReplicatedPG: we can get EAGAIN on missing clone flush
Signed-off-by: Samuel Just <sam.just@inktank.com>
(cherry picked from commit
060105c313c5b4a777c55f17115eeb95ebb17117 )
Samuel Just [Fri, 11 Apr 2014 01:15:30 +0000 (18:15 -0700)]
ReplicatedPG: do not preserve op context during flush
Any information stashed in the OpContext may be obsolete by the time we
actually mark the object clean. Instead, let the start_flush caller
clean up its OpContext and in try_flush_mark_clean we'll create a new
one. The primary reason to keep the OpContext would have been locking,
but we can set the obc as blocking without holding an OpContext, and
that would allow trimming to happen in the mean time (which is good
since trim_object does not respect rw locks since it doesn't change user
visible state). In try_flush_mark_clean, we requeue the fop->op along
with (but ahead of) the fop->dup_ops.
Fixes: #8068
Signed-off-by: Samuel Just <sam.just@inktank.com>
(cherry picked from commit
d83b8f58513e86c68aa6c25d4f909d9a3c4a103e )
Yehuda Sadeh [Fri, 25 Apr 2014 21:11:27 +0000 (14:11 -0700)]
rgw: fix url escaping
Fixes: #8202
This fixes the radosgw side of issue #8202. Needed to cast value
to unsigned char, otherwise it'd get padded.
Backport: dumpling
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
(cherry picked from commit
bcf92c496aba0dfde432290fc2df5620a2767313 )
Sage Weil [Mon, 28 Apr 2014 19:40:04 +0000 (12:40 -0700)]
doc/release-notes: v0.67.8 notes
Signed-off-by: Sage Weil <sage@inktank.com>
Yan, Zheng [Sat, 26 Apr 2014 12:49:16 +0000 (20:49 +0800)]
Merge pull request #1729 from ceph/wip-7966
readlink result in resapwn
Reviewed-by: Yan, Zheng <zheng.z.yan@intel.com>
Sage Weil [Sat, 26 Apr 2014 02:46:24 +0000 (19:46 -0700)]
mds: terminate readlink result in resapwn
readlink(2) does not null terminate the buffer; we need to do that.
Fixes: #7966
Signed-off-by: Sage Weil <sage@inktank.com>
wusui [Fri, 25 Apr 2014 23:20:20 +0000 (16:20 -0700)]
Merge pull request #1727 from ceph/wip-8193
ceph_test_rados_api_tier: increase HitSetTrim timeouts
Sage Weil [Fri, 25 Apr 2014 22:58:47 +0000 (15:58 -0700)]
Merge pull request #1725 from FlorentCoppint/master
Skipping '_netdev' Debian fstab option
Reviewed-by: Sage Weil <sage@inktank.com>
Sage Weil [Fri, 25 Apr 2014 22:49:06 +0000 (15:49 -0700)]
ceph_test_rados_api_tier: increase HitSetTrim timeouts
...so that they pass when they get unlucky with thrashing.
This will vastly decrease the probability of failure, but failure will
always be possible when a timeout is in place.
Fixes: #8193
Signed-off-by: Sage Weil <sage@inktank.com>
FlorentCoppint [Fri, 25 Apr 2014 07:20:02 +0000 (09:20 +0200)]
Skipping '_netdev' Debian fstab option
Signed-off-by: Florent Bautista <florent@coppint.com>
Loic Dachary [Thu, 24 Apr 2014 20:42:09 +0000 (22:42 +0200)]
Merge pull request #1717 from dachary/wip-auid
mon: add ceph osd pool set <pool> auid
Reviewed-by: Greg Farnum <greg@inktank.com>
wusui [Thu, 24 Apr 2014 20:27:40 +0000 (13:27 -0700)]
Merge pull request #1724 from ceph/wip-uselocalgithubforqemu-wusui
Use new git mirror for qemu-iotests
Warren Usui [Thu, 24 Apr 2014 19:55:26 +0000 (12:55 -0700)]
Use new git mirror for qemu-iotests
Fixes: 8191
Signed-off-by: Warren Usui <warren.usui@inktank.com>
Sage Weil [Thu, 24 Apr 2014 01:00:59 +0000 (18:00 -0700)]
Merge remote-tracking branch 'gh/firefly'
Sage Weil [Thu, 24 Apr 2014 00:23:12 +0000 (17:23 -0700)]
Merge pull request #1720 from jdurgin/wip-list-children-test
test_rbd.py: ignore children in cache pools
Reviewed-by: Sage Weil <sage@inktank.com>
Sage Weil [Wed, 23 Apr 2014 23:07:02 +0000 (16:07 -0700)]
Merge pull request #1719 from ceph/wip-8168
Wip 8168
Reviewed-by: Sage Weil <sage@inktank.com>
Samuel Just [Tue, 22 Apr 2014 23:03:48 +0000 (16:03 -0700)]
ReplicatedPG::do_osd_ops: consider head whiteout in list-snaps
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Tue, 22 Apr 2014 22:12:52 +0000 (15:12 -0700)]
ReplicatedPG::do_op: don't return ENOENT for whiteout on snapdir read
Signed-off-by: Samuel Just <sam.just@inktank.com>
Josh Durgin [Wed, 23 Apr 2014 20:47:02 +0000 (13:47 -0700)]
Merge pull request #1718 from ceph/wip-7882-wusui
Support latest qemu iotest code
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Josh Durgin [Wed, 23 Apr 2014 20:27:48 +0000 (13:27 -0700)]
test_rbd.py: ignore children in cache pools
This is necessary until http://tracker.ceph.com/issues/8187 is fixed.
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Loic Dachary [Wed, 23 Apr 2014 19:55:57 +0000 (21:55 +0200)]
mon: add ceph osd pool set <pool> auid
When a pool is created with ceph osd pool create, the auid is not
inferred from the session auid and is set to zero. Add the
ceph osd pool set <pool> auid <int>
command to set it after it is created, and the matching get:
ceph osd pool get <pool> auid
Signed-off-by: Loic Dachary <loic@dachary.org>
Warren Usui [Wed, 23 Apr 2014 20:20:14 +0000 (13:20 -0700)]
Support latest qemu iotest code
Modified qemu-iotests workunit script to check for versions
that use the latest qemu (currently only Trusty). Limit the
tests to those that are applicable to rbd.
Fixes: 7882
Signed-off-by: Warren Usui <warren.usui@inktank.com>
Sage Weil [Wed, 23 Apr 2014 15:51:26 +0000 (08:51 -0700)]
Merge pull request #1714 from ceph/wip-fs-client
two small fixes for client
Reviewed-by: Sage Weil <sage@inktank.com>
Yan, Zheng [Mon, 21 Apr 2014 08:26:33 +0000 (16:26 +0800)]
client: check cap ID when handling cap export message
handle following sequence of events:
- mds0 exports an inode to mds1. client receives the cap import
message from mds1. caps from mds0 are removed while handling
the cap import message.
- mds1 exports an inode to mds0. client receives the cap export
message from mds1. handle_cap_export() adds placeholder caps
for mds0
- client receives the first cap export message (for exporting
inode from mds0 to mds1)
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
Yan, Zheng [Tue, 22 Apr 2014 02:26:50 +0000 (10:26 +0800)]
client: avoid releasing caps that are being used
To avoid releasing caps that are being used, encode_inode_release()
should send implemented caps to MDS.
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
Samuel Just [Wed, 23 Apr 2014 00:36:20 +0000 (17:36 -0700)]
Merge pull request #1713 from ceph/wip-7439
Wip 7439
Reviewed-by: Sage Weil <sage@inktank.com>
Samuel Just [Tue, 22 Apr 2014 21:56:08 +0000 (14:56 -0700)]
ReplicatedPG: handle ec pools in mark_all_unfound_lost
Signed-off-by: Samuel Just <sam.just@inktank.com>
Jenkins [Tue, 22 Apr 2014 21:21:45 +0000 (21:21 +0000)]
0.80-rc1
Samuel Just [Tue, 22 Apr 2014 19:45:28 +0000 (12:45 -0700)]
ReplicatedPG: enable mark_unfound_lost delete for ec pools
revert is tricky to implement at this time for ec pools, so
we'll instead just implement delete for ec pools.
Fixes: #7439
Signed-off-by: Samuel Just <sam.just@inktank.com>
Sage Weil [Tue, 22 Apr 2014 16:42:16 +0000 (09:42 -0700)]
qa/workunits/rbd/copy.sh: skip some tests when tiering is enabled
The rados ls bit doesn't work.
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Sage Weil [Tue, 22 Apr 2014 16:37:32 +0000 (09:37 -0700)]
qa/workunits/rbd/copy.sh: fix test
I broke this in commit
9d64ac66082bd108ec3c2a74e2e77475b5564eae .
Signed-off-by: Sage Weil <sage@inktank.com>
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Sage Weil [Tue, 22 Apr 2014 19:40:02 +0000 (12:40 -0700)]
Merge pull request #1691 from ceph/wip-8139
osd_types: pg_t: allow is_split to handle checks for splits prior to the most recent
Reviewed-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Tue, 22 Apr 2014 17:21:55 +0000 (10:21 -0700)]
ECBackend: use std::swap for boost::optional
Reviewed-by: Sage Weil <sage@inktank.com>
Signed-off-by: Samuel Just <sam.just@inktank.com>
Yehuda Sadeh [Tue, 22 Apr 2014 16:02:33 +0000 (09:02 -0700)]
Merge pull request #1710 from ceph/wip-coverity
a couple coverity fixes
Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
Sage Weil [Tue, 22 Apr 2014 15:37:21 +0000 (08:37 -0700)]
Merge pull request #1711 from ceph/wip-coverity-respawn
mds: make strncpy in ::respawn safer
Reviewed-by: Sage Weil <sage@inktank.com>
John Spray [Tue, 22 Apr 2014 15:31:27 +0000 (16:31 +0100)]
mds: make strncpy in ::respawn safer
Previous code assumed null terminated argv[0]
was not longer than PATH_MAX and the resulting
strncpy was not strictly safe.
Modify the bounds to ensure that copy will not
result in an unterminated string if argv[0]
is oversized.
Signed-off-by: John Spray <john.spray@inktank.com>
Sage Weil [Tue, 22 Apr 2014 15:29:58 +0000 (08:29 -0700)]
osd/osd_types: RWState: initialize snaptrimmer_write_marker
** CID
1204295 : Uninitialized scalar field (UNINIT_CTOR)
/osd/osd_types.h: 2716 in ObjectContext::RWState::RWState()()
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Tue, 22 Apr 2014 15:28:52 +0000 (08:28 -0700)]
osdc/Objecter: drop unused field
This as missed by
860d72770cdf092c027d50f4ee03bed76c975599 .
** CID
1204296 : Uninitialized scalar field (UNINIT_CTOR)
/osdc/Objecter.h: 1165 in Objecter::Op::Op(const object_t &, const
object_locator_t &, std::vector<OSDOp, std::allocator<OSDOp>> &, int, Context *,
Context *, unsigned long *)()
/osdc/Objecter.h: 1165 in Objecter::Op::Op(const object_t &, const
object_locator_t &, std::vector<OSDOp, std::allocator<OSDOp>> &, int, Context *,
Context *, unsigned long *)()
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Tue, 22 Apr 2014 01:33:00 +0000 (18:33 -0700)]
doc/release-notes: a bit of prose about firefly
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Sun, 20 Apr 2014 05:08:41 +0000 (22:08 -0700)]
osd/osd_types: pg_interval_t: include primaries in operator<<
Also make up vs acting explicit.
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Sun, 20 Apr 2014 05:06:48 +0000 (22:06 -0700)]
osd/osd_types: pg_interval_t: include up_primary in pg_interval_t
Nothing uses this, but it triggers a new interval, which makes it confusing
when it is not recording in the interval itself. Let's add it now.
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Sun, 20 Apr 2014 05:05:27 +0000 (22:05 -0700)]
osd/osd_types: pg_interval_t: dump primary
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Sun, 20 Apr 2014 05:04:33 +0000 (22:04 -0700)]
osd: change in up set primary constitutes a peering interval change
In several places, a change in the up_primary triggers a new peering
interval, but the palces that actually generate the new past intervals,
including check_new_interval(), did not enforce that. This becomes
somewhat obvious when you see that those callers are ignoring the
up_primary output argument for pg_to_up_acting_osds().
Fix this by adding arguments to check_new_interval and fixing the callers
to pass them in properly. Add a unit test case to verify this.
Note that the past interval struct itself does not record who the
up_primary was; possibly it should.
Fixes: #8139
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Fri, 18 Apr 2014 22:48:33 +0000 (15:48 -0700)]
osd: use parent pgid (as appropriate) in generate_past_intervals()
Feed in the ancestor pg_t (if any) when we are looking at intervals for
previous maps that may have preceded a recent split.
Fixes: #8139
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Tue, 22 Apr 2014 03:49:43 +0000 (20:49 -0700)]
Merge pull request #1651 from enovance/wip-brag
Few bug fixes in ceph-brag
Reviewed-by: Sage Weil <sage@inktank.com>
Sage Weil [Tue, 22 Apr 2014 01:20:56 +0000 (18:20 -0700)]
doc/release-notes: v0.80
Signed-off-by: Sage Weil <sage@inktank.com>
Josh Durgin [Mon, 21 Apr 2014 23:53:35 +0000 (16:53 -0700)]
Merge pull request #1707 from ceph/wip-rbd-test
rbd: fix tests for cache pools
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Sage Weil [Mon, 21 Apr 2014 23:47:10 +0000 (16:47 -0700)]
qa/workunit/rbd/import_export.sh: skip list-objects tests with tiering
Listing objects isn't reliable with cache pools; skip that part of the
test if we see that rbd has tiering enabled.
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Mon, 21 Apr 2014 23:26:23 +0000 (16:26 -0700)]
qa/workunit/rbd/copy.sh: do not delete/recreate rbd pool
Among other things, it breaks when tiering is enabled.
Signed-off-by: Sage Weil <sage@inktank.com>
John Wilkins [Mon, 21 Apr 2014 22:43:23 +0000 (15:43 -0700)]
doc: Fixed syntax to include 'pool'.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
Samuel Just [Sun, 20 Apr 2014 23:45:12 +0000 (16:45 -0700)]
PG::PriorSet: consider lost osds in up_now for pcontdec
Otherwise, the pg will remain down even as osds are marked lost.
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Mon, 21 Apr 2014 22:13:22 +0000 (15:13 -0700)]
Merge pull request #1703 from ceph/wip-7942
Wip 7942
Reviewed-by: Sage Weil <sage@inktank.com>
Samuel Just [Wed, 16 Apr 2014 17:37:01 +0000 (10:37 -0700)]
ReplicatedPG::do_op: check for blocked snapset obj
Otherwise, we might use an invalid snapset in find_object_context.
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Mon, 14 Apr 2014 23:20:39 +0000 (16:20 -0700)]
ReplicatedPG: in trim, grab w locks on obc and snapset_obc
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Fri, 18 Apr 2014 23:51:34 +0000 (16:51 -0700)]
ReplicatedPG: if we get ENOENT on clone, remove clone from snapset
Fixes: #7916
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Tue, 8 Apr 2014 21:03:59 +0000 (14:03 -0700)]
ReplicatedPG: do not create whiteout clones
First, make_writeable treats whiteout heads like snapdir for
cloning purposes. Second, to ensure that we send the correct
deletes on flush to the backing pool, we instead use oi.snaps
on any clone we are flushing to infer the snaps during which
head did not exist and send a delete as appropriate prior to
the copy_from.
Normally, we'd have a problem if the delete and the copy_from
completed, but an interval change intervened before the dirty
flag was cleared since we'd end up re-deleting the object.
To avoid that, we use the CEPH_OSD_FLAG_ORDERSNAP flag.
Additionally, we will use the correct snap_seq on the delete
or flush as appropriate to ensure that the previous clone
gets created with the same clone id as in the cache pool.
Fixes: #7942
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Tue, 8 Apr 2014 21:27:33 +0000 (14:27 -0700)]
ReplicatedPG,rados: add CEPH_OSD_[COPY_FROM]_MAP_SNAP_TO_CLONE
When promoting a clone, we want to use the provided snapid to specify
specify the clone id directly.
Signed-off-by: Samuel Just <sam.just@inktank.com>
Sage Weil [Mon, 21 Apr 2014 21:28:43 +0000 (14:28 -0700)]
Merge pull request #1705 from ceph/wip-8124
Wip 8124
Reviewed-by: Sage Weil <sage@inktank.com>
Sage Weil [Mon, 21 Apr 2014 21:18:21 +0000 (14:18 -0700)]
qa/workunits/cephtool/test.sh: make set pg_num test non-racy
Loop while the pool is creating.
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Samuel Just [Sun, 20 Apr 2014 20:16:36 +0000 (13:16 -0700)]
ReplicatedPG: do not use shard for hit_set object names
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Sat, 19 Apr 2014 01:11:55 +0000 (18:11 -0700)]
ReplicatedPG::agent_load_hit_sets: take ondisk_read_lock
Otherwise, the hit_set might be not yet written due to a recently
completed recovery.
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Fri, 18 Apr 2014 22:14:33 +0000 (15:14 -0700)]
PG,PGLog: update hit_set during peering
Fixes: #8124
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Thu, 17 Apr 2014 19:27:07 +0000 (12:27 -0700)]
osd/: propogate hit_set history with repop
We don't actually send the whole info on each repop, just the log
entries, updated stats, and a few other bits. For hit_set ops, we need
to also communicate the new hit_set history status atomically with the
log entries and the transaction. Thus, we add a channel for an optional
pg_hit_set_history_t field in PGBackend::submit_transaction interface
and associated messages and implementations to update the hit_set info
field along with the log entries.
This also means that hit_set_(persist|trim) update an
updated_hit_set_history field on the OpContext instead of directly
modifying the info field.
Fixes: #8124
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Thu, 17 Apr 2014 19:23:21 +0000 (12:23 -0700)]
encoding: use unqualified name for encode/decode in boost::optional encoding
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Thu, 17 Apr 2014 18:03:19 +0000 (11:03 -0700)]
ECMsgTypes::ECSubWrite: fix at_version indentation
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Mon, 21 Apr 2014 17:52:58 +0000 (10:52 -0700)]
osd: track the number of hit_set archive objects in a pg
Also, use this value in agent_choose_mode instead of the max
number.
Related: #8124
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Thu, 17 Apr 2014 01:02:27 +0000 (18:02 -0700)]
ReplicatedPG::hit_set_persist: clean up degraded check
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Thu, 20 Mar 2014 22:42:41 +0000 (15:42 -0700)]
ReplicatedPG::mark_all_unfound_lost: delete local copy if necessary
There might be a local copy for an EC pool in the DELETE case. The replica
copies should be already handled by merge_log.
Fixes: #7439
Signed-off-by: Samuel Just <sam.just@inktank.com>
Sage Weil [Sat, 19 Apr 2014 00:33:52 +0000 (17:33 -0700)]
buffer: adjust #include order
The pthread.h include is somehow clobbering things, although it is not
clear how. :(
Signed-off-by: Sage Weil <sage@inktank.com>
Samuel Just [Fri, 18 Apr 2014 22:12:09 +0000 (15:12 -0700)]
Merge pull request #1696 from ceph/wip-8097
buffer: use Mutex instead of Spinlock for raw crcs
Reviewed-by: Samuel Just <sam.just@inktank.com>
Sage Weil [Fri, 18 Apr 2014 21:24:06 +0000 (14:24 -0700)]
Merge pull request #1697 from ceph/wip-num_objects_omap
osd_types::object_stat_sum_t: fix add/sub for num_objects_omap
Reviewed-by: Sage Weil <sage@inktank.com>
Sage Weil [Fri, 18 Apr 2014 21:09:37 +0000 (14:09 -0700)]
Merge pull request #1695 from ceph/wip-8153
Revert "ReplicatedPG::get_snapset_context: assert snap obj is not missin...
Reviewed-by: Sage Weil <sage@inktank.com>
Samuel Just [Fri, 18 Apr 2014 20:59:22 +0000 (13:59 -0700)]
Revert "ReplicatedPG::get_snapset_context: assert snap obj is not missing"
This breaks mark_lost_unfound_revert.
This reverts commit
0d2177a18071ad9c9581826a43751c36bab5b2db .
Sage Weil [Fri, 18 Apr 2014 20:54:30 +0000 (13:54 -0700)]
Merge pull request #1693 from ceph/wip-7997
mon: fix get_version race (more)
Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
Greg Farnum [Fri, 18 Apr 2014 18:01:40 +0000 (11:01 -0700)]
test: handle the create-pg delay when testing cache split syntax
Signed-off-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
Sage Weil [Fri, 18 Apr 2014 18:47:59 +0000 (11:47 -0700)]
Merge pull request #1692 from ceph/wip-7784
mon: OSDMonitor: HEALTH_WARN on 'mon osd down out interval == 0'
Reviewed-by: Sage Weil <sage@inktank.com>
Joao Eduardo Luis [Fri, 18 Apr 2014 18:15:52 +0000 (19:15 +0100)]
mon: OSDMonitor: HEALTH_WARN on 'mon osd down out interval == 0'
A 'status' or 'health' request will return a HEALTH_WARN whenever the
monitor handling the request has the option set to zero.
Fixes: 7784
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
Sage Weil [Fri, 18 Apr 2014 18:12:23 +0000 (11:12 -0700)]
mon: wait for PaxosService readable in handle_get_version
We were waiting for the election to finish, but we need to *also* wait for
paxos to recover. Being a peon or leader is not sufficient and we may
return a map that is still old.
Fixes: #7997
Signed-off-by: Sage Weil <sage@inktank.com>
Sage Weil [Fri, 18 Apr 2014 04:21:59 +0000 (21:21 -0700)]
Merge pull request #1676 from ceph/wip-8092
Wip 8092
Reviewed-by: Sage Weil <sage@inktank.com>
Sage Weil [Fri, 18 Apr 2014 04:19:33 +0000 (21:19 -0700)]
Merge pull request #1678 from ceph/wip-8108
osd: OSDMap: have osdmap json dump print valid boolean instead of string
Reviewed-by: Sage Weil <sage@inktank.com>
Sage Weil [Fri, 18 Apr 2014 04:05:49 +0000 (21:05 -0700)]
osd_types: pg_t: add get_ancestor() method
Give us the ancestor for when the pool had a past value for pg_num.
Signed-off-by: Sage Weil <sage@inktank.com>
Gregory Farnum [Fri, 18 Apr 2014 00:53:40 +0000 (17:53 -0700)]
Merge pull request #1683 from ceph/wip-mds-op-prio
mds: dynamically adjust priority of committing dirfrags
Reviewed-by: Greg Farnum <greg@inktank.com>
Sage Weil [Thu, 17 Apr 2014 21:51:18 +0000 (14:51 -0700)]
Merge pull request #1689 from ceph/wip-8091
Wip 8091
Reviewed-by: Sage Weil <sage@inktank.com>
Samuel Just [Tue, 15 Apr 2014 21:17:33 +0000 (14:17 -0700)]
ReplicatedPG::recover_replicas: do not recover clones while snap obj is missing
Otherwise, we cannot safely read the snapset for the clone.
Fixes: #8091
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Thu, 17 Apr 2014 20:30:30 +0000 (13:30 -0700)]
osd_types::object_stat_sum_t: fix add/sub for num_objects_omap
Introduced in
a130a4452e4fb159dc62fb417077d98dc9ebd621
Signed-off-by: Samuel Just <sam.just@inktank.com>
Samuel Just [Thu, 17 Apr 2014 20:18:21 +0000 (13:18 -0700)]
Merge pull request #1688 from ceph/wip-8048
osd/ReplicatedPG: check clones for degraded
Reviewed-by: Samuel Just <sam.just@inktank.com>