]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
8 years agolibrbd: cleanup: use a more proper variable name 12078/head
Dongsheng Yang [Sat, 19 Nov 2016 13:05:46 +0000 (08:05 -0500)]
librbd: cleanup: use a more proper variable name

Signed-off-by: Dongsheng Yang <dongsheng.yang@easystack.cn>
8 years agolibrbd: cleanup: fix a typo in CreateRequest.
Dongsheng Yang [Sat, 19 Nov 2016 13:04:53 +0000 (08:04 -0500)]
librbd: cleanup: fix a typo in CreateRequest.

Signed-off-by: Dongsheng Yang <dongsheng.yang@easystack.cn>
8 years agoMerge pull request #12057 from liewegas/wip-debug-hitset
Sage Weil [Fri, 18 Nov 2016 18:06:44 +0000 (12:06 -0600)]
Merge pull request #12057 from liewegas/wip-debug-hitset

ceph_test_rados_api_tier: dump hitset that we fail to decode

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com.>
8 years agoMerge pull request #12040 from liupan1111/wip-bluestore-lat-report
Sage Weil [Fri, 18 Nov 2016 14:18:18 +0000 (08:18 -0600)]
Merge pull request #12040 from liupan1111/wip-bluestore-lat-report

os/bluestore: fix latency calculation

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #11978 from tchaikov/wip-cmake-jemalloc
Kefu Chai [Fri, 18 Nov 2016 09:53:56 +0000 (17:53 +0800)]
Merge pull request #11978 from tchaikov/wip-cmake-jemalloc

cmake: should link against ${ALLOC_LIBS}

Reviewed-by: Varada Raja Kumar Kari <kariraja@yahoo.com>
8 years agoMerge pull request #12048 from dzafman/wip-dz-memstore
Kefu Chai [Fri, 18 Nov 2016 09:47:14 +0000 (17:47 +0800)]
Merge pull request #12048 from dzafman/wip-dz-memstore

tests: Minor clean-ups

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #12066 from dachary/wip-16014-cot
Loic Dachary [Fri, 18 Nov 2016 09:37:02 +0000 (10:37 +0100)]
Merge pull request #12066 from dachary/wip-16014-cot

tests: save 9 characters for asok paths

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoos/bluestore: fix a bug: when using bluestore, the output of 12040/head
Pan Liu [Fri, 18 Nov 2016 08:26:19 +0000 (16:26 +0800)]
os/bluestore: fix a bug: when using bluestore, the output of
"ceph osd perf" is always 0ms.

Signed-off-by: Pan Liu <pan.liu@istuary.com>
8 years agoOSD: change the prefix from fs_* to os_*, because commit_latency and
Pan Liu [Fri, 18 Nov 2016 08:25:31 +0000 (16:25 +0800)]
OSD: change the prefix from fs_* to os_*, because commit_latency and
apply_latency will be used not only for filestore.

Signed-off-by: Pan Liu <pan.liu@istuary.com>
8 years agotests: save 9 characters for asok paths 12066/head
Loic Dachary [Fri, 18 Nov 2016 07:06:02 +0000 (08:06 +0100)]
tests: save 9 characters for asok paths

For vstart.sh powered tests, save 9 characters in the path name
by replacing testdir/test- with td/t-

60 characters imposed by jenkins
9 characters for src/test
5 characters for td/t-

33 left (instead of 24) for the test to create asok such as out/client.admin.25327.asok

Moving these files outside of the build directory is a bad idea because
tests should only create/use files within the builddir and not write
outside of this directory. Doing so would make things more complicated
for cleanup in case the test fail and create other problems as a
consequence (filling out disk space, conflicting directories between
runs etc.).

For ceph-helpers.sh tests replace testdir with td, saving 5 characters.
This is not strictly necessary but keeps the directory names consistent:
if the developer wants to get rid of all the test leftovers, it is
enough to remove the a single directory: td.

Fixes: http://tracker.ceph.com/issues/16014
Signed-off-by: Loic Dachary <loic@dachary.org>
8 years agoMerge pull request #12058 from dachary/wip-17830-eio
David Zafman [Fri, 18 Nov 2016 04:44:22 +0000 (20:44 -0800)]
Merge pull request #12058 from dachary/wip-17830-eio

test: disable osd-scrub-repair and test-erasure-eio

8 years agoMerge pull request #11709 from iain-buclaw-sociomantic/librados_aioexec
Sage Weil [Fri, 18 Nov 2016 00:50:04 +0000 (18:50 -0600)]
Merge pull request #11709 from iain-buclaw-sociomantic/librados_aioexec

librados: Add rados_aio_exec to the C API

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #11921 from adamemerson/wip-clangtastic
Sage Weil [Fri, 18 Nov 2016 00:49:02 +0000 (18:49 -0600)]
Merge pull request #11921 from adamemerson/wip-clangtastic

build: The Light Clangtastic

Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agotest: disable osd-scrub-repair and test-erasure-eio 12058/head
Dan Mick [Tue, 15 Nov 2016 02:29:11 +0000 (18:29 -0800)]
test: disable osd-scrub-repair and test-erasure-eio

While it is being worked on, because it frequently fails.

Refs: http://tracker.ceph.com/issues/17830

Signed-off-by: Dan Mick <dan.mick@redhat.com>
Signed-off-by: Loic Dachary <loic@dachary.org>
8 years agoMerge pull request #10585 from zhjwpku/patch-2
Loic Dachary [Thu, 17 Nov 2016 22:41:11 +0000 (23:41 +0100)]
Merge pull request #10585 from zhjwpku/patch-2

doc/start/hardware-recommentdations: cosmetic

Reviewed-by: Loic Dachary <ldachary@redhat.com>
8 years agoceph_test_rados_api_tier: dump hitset that we fail to decode 12057/head
Sage Weil [Thu, 17 Nov 2016 22:18:47 +0000 (16:18 -0600)]
ceph_test_rados_api_tier: dump hitset that we fail to decode

See http://tracker.ceph.com/issues/17945

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #12008 from linuxbox2/civet-copy-target
Matt Benjamin [Thu, 17 Nov 2016 21:16:44 +0000 (16:16 -0500)]
Merge pull request #12008 from linuxbox2/civet-copy-target

cmake: produce civetweb.h, again

ok, w/upstream acks, merging--jenkins build did succeed (this is a build-only change)

8 years agoMerge pull request #12054 from ddiss/doc_osd_pool_restriction
Sage Weil [Thu, 17 Nov 2016 20:57:24 +0000 (14:57 -0600)]
Merge pull request #12054 from ddiss/doc_osd_pool_restriction

doc: clarify file deletion from OSD restricted pool behaviour

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agodoc/cephfs/standby: fix minor typos 12054/head
David Disseldorp [Thu, 17 Nov 2016 19:33:35 +0000 (20:33 +0100)]
doc/cephfs/standby: fix minor typos

Signed-off-by: David Disseldorp <ddiss@suse.de>
8 years agodoc/cephfs: add note about deletion from OSD restricted pool
David Disseldorp [Thu, 17 Nov 2016 16:55:26 +0000 (17:55 +0100)]
doc/cephfs: add note about deletion from OSD restricted pool

As described in http://tracker.ceph.com/issues/17937, a client with
restricted pool access can still delete files unless a corresponding
MDS path restriction is also in place.

Signed-off-by: David Disseldorp <ddiss@suse.de>
8 years agoMerge pull request #11701 from athanatos/wip-ec-partial-overwrites
Samuel Just [Thu, 17 Nov 2016 18:54:19 +0000 (10:54 -0800)]
Merge pull request #11701 from athanatos/wip-ec-partial-overwrites

osd: EC Overwrites

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agocmake: produce civetweb.h, again 12008/head
Matt Benjamin [Tue, 15 Nov 2016 22:43:16 +0000 (17:43 -0500)]
cmake: produce civetweb.h, again

The recent change to do this logic with file copy (and in src/rgw)
resolved the build problem, but now updates to the civetweb
submodule were not reflected in the build.

Move the copy into a custom target which will always source the
current submodule version at build time.

Avoid using the BYPRODUCTS option, as it is not supported in many
older cmake versions (e.g., Centos 7).

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agoReplicatedPG: clamp SPARSE_READ to object size for ec pool 11701/head
Samuel Just [Wed, 16 Nov 2016 18:19:27 +0000 (10:19 -0800)]
ReplicatedPG: clamp SPARSE_READ to object size for ec pool

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: add some debugging to copyfrom
Samuel Just [Mon, 31 Oct 2016 17:52:12 +0000 (10:52 -0700)]
osd/: add some debugging to copyfrom

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoReplicatedPG: we might actually recover an object past crt on repair
Samuel Just [Sat, 29 Oct 2016 22:00:57 +0000 (15:00 -0700)]
ReplicatedPG: we might actually recover an object past crt on repair

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: add projected_log to do client dup detection on not yet committed log entries
Samuel Just [Fri, 28 Oct 2016 01:38:02 +0000 (18:38 -0700)]
osd/: add projected_log to do client dup detection on not yet committed log entries

Log entries don't get added to the log for ECBackend until reads are
done, yet we still want any other requests with the same id to wait.

ReplicatedPG::update_range should consider the projected log as well.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoReplicatedPG::calc_trim_to: don't trim past can_rollback_to
Samuel Just [Fri, 28 Oct 2016 01:36:55 +0000 (18:36 -0700)]
ReplicatedPG::calc_trim_to: don't trim past can_rollback_to

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agodoc/dev/osd_internals: add some docs for ECBackend
Samuel Just [Fri, 28 Oct 2016 01:32:22 +0000 (18:32 -0700)]
doc/dev/osd_internals: add some docs for ECBackend

Also, clean up some old ones.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoReplicatedPG: don't leave last_backill pointing at head if snapdir exists
Samuel Just [Mon, 24 Oct 2016 18:53:16 +0000 (11:53 -0700)]
ReplicatedPG: don't leave last_backill pointing at head if snapdir exists

Fixes: http://tracker.ceph.com/issues/17668
Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: cleanup the snap trimmer and deal with delayed repops
Samuel Just [Fri, 21 Oct 2016 21:29:09 +0000 (14:29 -0700)]
osd/: cleanup the snap trimmer and deal with delayed repops

With the PGBackend changes, it's not necessarily the case that
calling simple_opc_submit syncronously updates the SnapMapper.
Thus, we can't rely on being able to just ask the snap mapper
for the next object immediately (we could well loop on the same
one if ECBackend is flushing the pipeline).  Instead, update
SnapMapper and the SnapTrimmer to grab N at a time.

Additionally, we need to make sure we don't try this again until
all of the previously submitted repops are flushed (a good idea
anyway).  To that end, this patch also refactors the SnapTrimmer
machine to be fully explicit about why it's blocked so we can be
sure that we don't queue an async work item unless we really
want to.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/ECBackend: use an explicit backfill field on ECSubWrite
Samuel Just [Wed, 19 Oct 2016 16:56:46 +0000 (09:56 -0700)]
osd/ECBackend: use an explicit backfill field on ECSubWrite

Previously, we used an empty transaction to indicate when we
were sending the op to a backfill peer which needs the logs,
but can't run the transaction.  I'd like to be able to send
and empty transaction for the rollforward side effect without
it causing the peer to think it missed a backfill op, so
instead, use an explicit flag.  Compatability is handled by
interpretting an old version encoding with an empty transaction
as having the backfill field filled.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoReplicatedPG: update zero and truncate to only disallow aligned append pools
Samuel Just [Tue, 18 Oct 2016 21:47:21 +0000 (14:47 -0700)]
ReplicatedPG: update zero and truncate to only disallow aligned append pools

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoReplicatedPG::OpContext::start_async_reads: tolerate case sync callback call
Samuel Just [Tue, 18 Oct 2016 21:46:53 +0000 (14:46 -0700)]
ReplicatedPG::OpContext::start_async_reads: tolerate case sync callback call

If the read can be completed immediately, objects_read_async will call
the callback syncronously, which will result in ctx being cleaned up.
Clear pending_async_reads before the call.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: use PGBackend::call_write_ordered to submit log entries in commit order
Samuel Just [Thu, 3 Nov 2016 00:38:13 +0000 (17:38 -0700)]
osd/: use PGBackend::call_write_ordered to submit log entries in commit order

Without this change, we might submit new log entries for marking objects
unfound in a way that causes replicas to process them out-of-order with
pending writes with lower version numbers.  That would be bad.  Instead,
add an interface to allow an arbitrary callback to be called after any
previously submitted transaction commit, but before any subsequently
submitted operations commit.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: Update PGBackend users to project last_update and submit stat deltas
Samuel Just [Fri, 21 Oct 2016 21:33:08 +0000 (14:33 -0700)]
osd/: Update PGBackend users to project last_update and submit stat deltas

The RMW pipeline means that we don't start committing an update
immediately, so we can't update the log syncronously with
submit_transaction.  Thus, in order to pipeline writes, PG/ReplicatedPG
will need to project last_update and abstain from updating info
directly (updating info.stats was the only offender).

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoECBackend: integrate cache and rmw pipeline
Samuel Just [Tue, 15 Nov 2016 23:48:21 +0000 (15:48 -0800)]
ECBackend: integrate cache and rmw pipeline

Implements the rmw pipeline and integrates the cache.

HashInfo now maintains a projected size for use during the planning
phase of the pipeline.

(Doesn't build without subsequent patches, not worth stubbing out
the interfaces)

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: refactor PGLog a bit and add support for rolling back extents
Samuel Just [Tue, 15 Nov 2016 23:47:37 +0000 (15:47 -0800)]
osd/: refactor PGLog a bit and add support for rolling back extents

It was hard to reason about the validity of the IndexedLog internal
pointers and iterators during updates, so this patch cleans that up
a bunch.  It also moves responsibility for doing rollbacks into
PGBackend.  Finally, it adds support for the new log entry format.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoTestPGLog: fix bug with merge_log_split_missing_entries_at_head
Samuel Just [Tue, 15 Nov 2016 23:42:21 +0000 (15:42 -0800)]
TestPGLog: fix bug with merge_log_split_missing_entries_at_head

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: add support for rolling back overwritten extents to pg_log_entry_t
Samuel Just [Tue, 15 Nov 2016 23:42:00 +0000 (15:42 -0800)]
osd/: add support for rolling back overwritten extents to pg_log_entry_t

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoECBackend: remove unused hobject argument to read_request_t
Samuel Just [Tue, 13 Sep 2016 08:28:22 +0000 (01:28 -0700)]
ECBackend: remove unused hobject argument to read_request_t

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoECBackend: deduplicate start_remaining_read_ops and start_read_ops
Samuel Just [Tue, 13 Sep 2016 07:09:15 +0000 (00:09 -0700)]
ECBackend: deduplicate start_remaining_read_ops and start_read_ops

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoReplicatedBackend: always set rollforward to head in submit
Samuel Just [Sat, 29 Oct 2016 22:00:12 +0000 (15:00 -0700)]
ReplicatedBackend: always set rollforward to head in submit

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: split rollback info trims into trims and rollforwards
Samuel Just [Sat, 27 Aug 2016 19:51:18 +0000 (12:51 -0700)]
osd/: split rollback info trims into trims and rollforwards

Also, rollforward on activate() and adjust read_log debugging to
account for non-rollforward entries.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: 's/trim_rollback_to/roll_forward_to/g'
Samuel Just [Sat, 27 Aug 2016 18:33:02 +0000 (11:33 -0700)]
osd/: 's/trim_rollback_to/roll_forward_to/g'

trim_rollback_to was a not terrible name before in that all
it ever did is (possibly) trim the stashed version of the
object.  However, now, it's going to encompass, in general,
the roll_forward part of a tpc (which will still be to
delete the stashed object in cases where that is
appropriate).

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd_types: allow non-aligned non-overwrites with ECOVERWRITES flag
Samuel Just [Sat, 27 Aug 2016 18:26:53 +0000 (11:26 -0700)]
osd_types: allow non-aligned non-overwrites with ECOVERWRITES flag

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: add ExtentCache
Samuel Just [Wed, 17 Aug 2016 18:34:34 +0000 (11:34 -0700)]
osd/: add ExtentCache

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agosrc/test: update ceph_test_rados to support overwrites
Samuel Just [Mon, 31 Oct 2016 17:55:30 +0000 (10:55 -0700)]
src/test: update ceph_test_rados to support overwrites

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd,mon: add pool FLAG_EC_OVERWRITES flag
Samuel Just [Thu, 28 Apr 2016 23:50:12 +0000 (16:50 -0700)]
osd,mon: add pool FLAG_EC_OVERWRITES flag

For now, this is a white box testing flag to allow
us to start testing the supporting features before
ec overwrites can actually be implemented.

Signed-off-by: Samuel Just <sjust@redhat.com>
Signed-off-by: Tomy Cheru <tomy.cheru@sandisk.com>
8 years agoosd,mon: remove FLAG_DEBUG_FAKE_EC_POOL
Samuel Just [Thu, 28 Apr 2016 23:08:51 +0000 (16:08 -0700)]
osd,mon: remove FLAG_DEBUG_FAKE_EC_POOL

This was used in the past as scaffolding while the ec pools were being
developed.  There should be no legitimate users.

Signed-off-by: Samuel Just <sjust@redhat.com>
Signed-off-by: Tomy Cheru <tomy.cheru@sandisk.com>
8 years agoosd_types: remove unused fill_in_setattrs
Samuel Just [Tue, 4 Oct 2016 00:56:53 +0000 (17:56 -0700)]
osd_types: remove unused fill_in_setattrs

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd_types::ObjectModDesc: remove claim_append
Samuel Just [Tue, 27 Sep 2016 20:26:34 +0000 (13:26 -0700)]
osd_types::ObjectModDesc: remove claim_append

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: switch all users of PGTransaction to use the new structure
Samuel Just [Fri, 12 Aug 2016 15:42:12 +0000 (08:42 -0700)]
osd/: switch all users of PGTransaction to use the new structure

This patch removes ReplicatedBackend::PGTransaction and implemenations
and switches over all users.  Happily, do_osd_ops loses the mod_desc
cruft and OpContext::pending_attrs.  PGTransaction doesn't really
have a natural way to implement append, however.  In reality, I think
this is probably an improvement, but it does mean that copy_from's
final transaction is now filled in by a lambda rather than by
appending a transaction fragment.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: introduce PGTransaction
Samuel Just [Wed, 10 Aug 2016 22:45:32 +0000 (15:45 -0700)]
osd/: introduce PGTransaction

ECBackend is going to need a transaction representation which reduces
the operational representation from the OSDOp to a descriptive one
which makes questions like "what is the largest offest written" and
"does this transaction delete the object?" simple to answer.  At the
same time, we're going to eliminate the PGBackend::PGTransaction
interface since I don't think writing directly to an
ObjectStore::Transaction is buying us enough to offset the irritation
of having to update both implemenations.

A happy consequence of this design will be that we can fill in the
pg_log_entry_t::mod_desc member after submission in the backend
rather than inline in do_osd_ops.  We can also dispense with having
to maintain OpContext::pending_attrs separately from the ongoing
PGTransaction.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agocommon/: add interval_map
Samuel Just [Wed, 10 Aug 2016 22:43:10 +0000 (15:43 -0700)]
common/: add interval_map

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoinline_variant: simplify it a lot, enable perfect forwarding
Samuel Just [Thu, 25 Aug 2016 23:42:17 +0000 (16:42 -0700)]
inline_variant: simplify it a lot, enable perfect forwarding

The previous implementation was a bit more baroque than it
needed to be.  Also, it made copies of the lambdas in a
few places.  Finally, it caused segfaults.  Not actually
sure why.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agocommon/: add match() utilities for boost::variant
Samuel Just [Wed, 10 Aug 2016 22:26:38 +0000 (15:26 -0700)]
common/: add match() utilities for boost::variant

C++ doesn't have a sum type with nice pattern matching syntax.
Fortunately, someone on stack overflow fixed that.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd_types: update_snaps should take a const argument
Samuel Just [Wed, 10 Aug 2016 22:46:10 +0000 (15:46 -0700)]
osd_types: update_snaps should take a const argument

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoContext: add [Gen]LambdaContext and some related helpers
Samuel Just [Tue, 4 Oct 2016 20:27:31 +0000 (13:27 -0700)]
Context: add [Gen]LambdaContext and some related helpers

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agohobject: add helper typedefs
Samuel Just [Tue, 4 Oct 2016 20:25:55 +0000 (13:25 -0700)]
hobject: add helper typedefs

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoPGBackend: add DoutPrefixProvider to parent interface
Samuel Just [Tue, 18 Oct 2016 21:43:36 +0000 (14:43 -0700)]
PGBackend: add DoutPrefixProvider to parent interface

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoFileStore::_do_copy_range: tolerate short reads on replay
Samuel Just [Tue, 8 Nov 2016 20:22:06 +0000 (12:22 -0800)]
FileStore::_do_copy_range: tolerate short reads on replay

Consider a sequence like:

0. foo object size is 15
1. clone_range foo -> foo.0 5~5
2. write foo 5~5
3. clone_range foo -> foo.1 10~5
4. write 10~5 foo
5. rename foo -> foo.1
6. remove foo.0
7. remove foo.1
8. remove foo.2

If this sequence is interupted after 8 and replayed from 1, by the time
it gets to 3 the object will only have size 10 and no replay guard
(since 1 was skipped and 2 recreated the object with size 10 resulting
in a short read.  This should only happen if the replay guard is
missing, which should only happen if the object gets deleted later
in the sequence.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agostore_test::col_split_test: send bounded size transactions
Samuel Just [Sat, 12 Nov 2016 01:45:59 +0000 (17:45 -0800)]
store_test::col_split_test: send bounded size transactions

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agovstart: ratchet down the osd_copyfrom_max_chunk to make multiple chunks likely
Samuel Just [Sun, 30 Oct 2016 04:20:49 +0000 (21:20 -0700)]
vstart: ratchet down the osd_copyfrom_max_chunk to make multiple chunks likely

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agotest: Use new directory naming for rocksdb test 12048/head
David Zafman [Thu, 17 Nov 2016 17:18:34 +0000 (09:18 -0800)]
test: Use new directory naming for rocksdb test

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agotest: Log errors in fork() from system()
David Zafman [Thu, 17 Nov 2016 16:50:45 +0000 (08:50 -0800)]
test: Log errors in fork() from system()

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agotest: Remove renamed test directory
David Zafman [Thu, 17 Nov 2016 16:49:57 +0000 (08:49 -0800)]
test: Remove renamed test directory

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoMerge pull request #12046 from dachary/wip-16014-cot
Loic Dachary [Thu, 17 Nov 2016 16:37:27 +0000 (17:37 +0100)]
Merge pull request #12046 from dachary/wip-16014-cot

tests: use shorter directories for tests

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #12036 from tchaikov/wip-osd-scrub-repair-cleanup
Loic Dachary [Thu, 17 Nov 2016 15:54:53 +0000 (16:54 +0100)]
Merge pull request #12036 from tchaikov/wip-osd-scrub-repair-cleanup

test/osd-scrub-repair.sh: use repair() instead of "ceph pg repair"

Reviewed-by: Loic Dachary <ldachary@redhat.com>
8 years agoMerge pull request #12039 from xiexingguo/xxg-wip-bluestreo-1117
Sage Weil [Thu, 17 Nov 2016 15:25:03 +0000 (09:25 -0600)]
Merge pull request #12039 from xiexingguo/xxg-wip-bluestreo-1117

os/bluestore: fix bufferspace stats leak due to blob splitting

Reviewed-by: Igor Fedotov <ifedotov@mirantis.com>
8 years agoMerge pull request #12042 from ifed01/wip-bluestore-drop-blob_depth
Sage Weil [Thu, 17 Nov 2016 15:19:57 +0000 (09:19 -0600)]
Merge pull request #12042 from ifed01/wip-bluestore-drop-blob_depth

os/bluestore: remove garbage collector staff

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agotests: use shorter directories for tests 12046/head
Loic Dachary [Thu, 17 Nov 2016 15:08:52 +0000 (16:08 +0100)]
tests: use shorter directories for tests

So that jenkins can use longer directories. We can't have both otherwise
the limit UNIX domain socket path length limit triggers errors such as:

... client.admin.12750.asok is too long! The maximum length on this system is 107

Fixes: http://tracker.ceph.com/issues/16014
Signed-off-by: Loic Dachary <loic@dachary.org>
8 years agoMerge pull request #11961 from tianshan/fix-RGWSimpleRadosLockCR
Casey Bodley [Thu, 17 Nov 2016 14:57:12 +0000 (09:57 -0500)]
Merge pull request #11961 from tianshan/fix-RGWSimpleRadosLockCR

rgw: fix RGWSimpleRadosLockCR set_description()

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #11965 from ceph/wip-rgw-fix-period-commit
Casey Bodley [Thu, 17 Nov 2016 14:56:18 +0000 (09:56 -0500)]
Merge pull request #11965 from ceph/wip-rgw-fix-period-commit

rgw: fix missing master zone for a single zone zonegroup

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #12020 from leseb/glance-mitaka
Jason Dillaman [Thu, 17 Nov 2016 14:31:22 +0000 (09:31 -0500)]
Merge pull request #12020 from leseb/glance-mitaka

doc: openstack glance mitaka uses show_multiple_locations

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agorgw: fix missing master zone for a single zone zonegroup 11965/head
Orit Wasserman [Thu, 10 Nov 2016 15:17:05 +0000 (16:17 +0100)]
rgw: fix missing master zone for a single zone zonegroup

Fixes: http://tracker.ceph.com/issues/17364
Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agoos/bluestore: remove garbage collector staff 12042/head
Igor Fedotov [Thu, 17 Nov 2016 13:25:00 +0000 (13:25 +0000)]
os/bluestore: remove garbage collector staff

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
8 years agoMerge pull request #11424 from renhwztetecs/renhw-wip-mgr
Kefu Chai [Thu, 17 Nov 2016 11:40:53 +0000 (19:40 +0800)]
Merge pull request #11424 from renhwztetecs/renhw-wip-mgr

mgr: init() return when connection daemons failed && add some err info

Reviewed-by: John Spray <john.spray@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #12015 from xiexingguo/xxg-wip-bluestore-init-csum
Igor Fedotov [Thu, 17 Nov 2016 11:07:40 +0000 (14:07 +0300)]
Merge pull request #12015 from xiexingguo/xxg-wip-bluestore-init-csum

os/bluestore: avoid unnecessary call to init_csum()

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agotest/osd-scrub-repair.sh: use repair() instead of "ceph pg repair" 12036/head
Kefu Chai [Thu, 17 Nov 2016 07:05:33 +0000 (15:05 +0800)]
test/osd-scrub-repair.sh: use repair() instead of "ceph pg repair"

Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #12038 from tchaikov/wip-ceph-objectstore-tool
Kefu Chai [Thu, 17 Nov 2016 10:13:47 +0000 (18:13 +0800)]
Merge pull request #12038 from tchaikov/wip-ceph-objectstore-tool

test: ceph-objectstore-tool: should import platform before using it

Reviewed-by: Owen Synge <osynge@suse.com>
8 years agodoc: openstack glance mitaka uses show_multiple_locations 12020/head
Sébastien Han [Wed, 16 Nov 2016 12:36:45 +0000 (13:36 +0100)]
doc: openstack glance mitaka uses show_multiple_locations

As of the Mitaka release show_image_direct_url is not needed, but
instead show_multiple_locations should be used.
Adding the necessary guidance for Mitaka release.

Signed-off-by: Sébastien Han <seb@redhat.com>
8 years agotest: ceph-objectstore-tool: should import platform before using it 12038/head
Kefu Chai [Thu, 17 Nov 2016 09:20:57 +0000 (17:20 +0800)]
test: ceph-objectstore-tool: should import platform before using it

Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #9613 from dzafman/wip-16064
Kefu Chai [Thu, 17 Nov 2016 07:48:32 +0000 (15:48 +0800)]
Merge pull request #9613 from dzafman/wip-16064

common osd: Improve scrub analysis, list-inconsistent-obj output and osd-scrub-repair test

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #10507 from wjwithagen/wip-wjw-tests-ceph_objectstore_tool
Kefu Chai [Thu, 17 Nov 2016 06:57:51 +0000 (14:57 +0800)]
Merge pull request #10507 from wjwithagen/wip-wjw-tests-ceph_objectstore_tool

ceph_objectstore_tool.py: Don't use btrfs on FreeBSD

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #11890 from liupan1111/wip-code-clean-ups
Kefu Chai [Thu, 17 Nov 2016 06:54:49 +0000 (14:54 +0800)]
Merge pull request #11890 from liupan1111/wip-code-clean-ups

os/filestore: handle EINTR returned by io_getevents()

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #11765 from bassamtabbara/wip-crushtool-fix
Kefu Chai [Thu, 17 Nov 2016 06:53:28 +0000 (14:53 +0800)]
Merge pull request #11765 from bassamtabbara/wip-crushtool-fix

mon: if crushtool config is empty use internal crush test

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoos/bluestore: fix bufferspace stats leak due to blob splitting 12039/head
xie xingguo [Thu, 17 Nov 2016 06:51:31 +0000 (14:51 +0800)]
os/bluestore: fix bufferspace stats leak due to blob splitting

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agoMerge pull request #11926 from dzafman/wip-test-17830
Kefu Chai [Thu, 17 Nov 2016 06:39:17 +0000 (14:39 +0800)]
Merge pull request #11926 from dzafman/wip-test-17830

test: fix test-erasure-eio and osd-scrub-repair races (17830)

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agobluestore: Fix warning in pool allocator 11921/head
Adam C. Emerson [Wed, 16 Nov 2016 22:13:52 +0000 (17:13 -0500)]
bluestore: Fix warning in pool allocator

Since we're not allocating anything, we should return nullptr and mark
the function noexcept. (Functions not marked noexcept are not allowed to
return nullptr.)

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
8 years agoMerge pull request #12030 from branch-predictor/bp-rmxattr-bl
Xie Xingguo [Thu, 17 Nov 2016 02:24:08 +0000 (10:24 +0800)]
Merge pull request #12030 from branch-predictor/bp-rmxattr-bl

librados: remove unused bufferlist from rados_write_op_rmxattr

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agotest: Add sleep 1 so that we look for 60 seconds 11926/head
David Zafman [Thu, 17 Nov 2016 01:58:09 +0000 (17:58 -0800)]
test: Add sleep 1 so that we look for 60 seconds

This failed because test blew through 60 requests in 8 seceons before
the scrub repair even started on Jenkins.

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agotest: Fix duplicate port in test-erasure-code-plugins.sh
David Zafman [Thu, 17 Nov 2016 01:56:17 +0000 (17:56 -0800)]
test: Fix duplicate port in test-erasure-code-plugins.sh

Add comments about uniqueness of port number required

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agotest: Suppress least surprising warning in the world
Adam C. Emerson [Fri, 11 Nov 2016 17:35:52 +0000 (12:35 -0500)]
test: Suppress least surprising warning in the world

Something called infinite_recursion_test_impl recurses...infinitely!

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
8 years agorbd: Move template specialization declaration before include
Adam C. Emerson [Thu, 10 Nov 2016 19:56:17 +0000 (14:56 -0500)]
rbd: Move template specialization declaration before include

The include file was implicitly specializing instantiating the
template.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
8 years agorbd: Fix invalid type inferences
Adam C. Emerson [Thu, 10 Nov 2016 19:25:18 +0000 (14:25 -0500)]
rbd: Fix invalid type inferences

These are big and ugly and could be made ever so much nicer with a C++14
compatibility header providing the *_t variation of the type traits
templates.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
8 years agorbd: Move operator overload into namespace of type
Adam C. Emerson [Wed, 9 Nov 2016 23:05:48 +0000 (18:05 -0500)]
rbd: Move operator overload into namespace of type

So overload resolution can find it.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
8 years agorbd: Fix likely typos that should be assignments
Adam C. Emerson [Wed, 9 Nov 2016 21:57:17 +0000 (16:57 -0500)]
rbd: Fix likely typos that should be assignments

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
8 years agoos: Use delete[] to free things allocated with new[]
Adam C. Emerson [Wed, 9 Nov 2016 21:56:49 +0000 (16:56 -0500)]
os: Use delete[] to free things allocated with new[]

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
8 years agokvs: ObjectWriteOPerations can't be in a VLA
Adam C. Emerson [Wed, 9 Nov 2016 21:36:23 +0000 (16:36 -0500)]
kvs: ObjectWriteOPerations can't be in a VLA

Variable length arrays can only contain Plain Old data
types. ObjectOperation has a virtual destructor and is thus not Plain
Old Data.

We could also get rid of ObjectOperation's virtual destructor, since it
has no other virtual functions.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
8 years agorbd: Initialize std::atomic flag with an equals sign
Adam C. Emerson [Wed, 9 Nov 2016 21:07:32 +0000 (16:07 -0500)]
rbd: Initialize std::atomic flag with an equals sign

I know it's weird, but

    std::atomic_flag f = ATOMIC_FLAG_INIT;

is guaranteed to work, while

    std::atomic_flag g(ATOMIC_FLAG_INIT);

is free to make demons fly out of your nose.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>