| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
In order to make this happen, we make the switch to generate the complete
transaction in the generic copy code and save it into the Callback. Then
in finish_copy() we just take that transaction and prepend it to the existing
transaction.
With that change, and by making use of the existing CopyCallback data,
we no longer need to access the CopyOp from the OpContext, so we can remove it.
Hurray, the pipelines are now independent!
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|
|
|
|
|
|
|
| |
We implement enough of the CopyFromCallback that CopyOp no longer needs
a direct reference to the OpContext, so we remove it and replace all
references with calls to cop->cb->complete().
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|
|
|
|
|
|
| |
We'll start using it in the next commit; eventually we can use the interfaces
we're putting their to replace our link to the OpContext.
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|
|
|
|
|
|
| |
Outline the basic interfaces we're going to use, and implement
the more obvious ones.
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|
|
|
| |
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|
|
|
| |
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|
|
|
| |
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|
|
|
|
|
| |
Use that instead of the OpContext::obc in copy codepaths.
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
We don't necessarily want to respond to clients with a failure if
a copy got an error code. Instead, conditionally execute the success
path and always launch back into execute_ctx() when the copy has
stopped (either due to completion or failure).
Update the COPY_FROM section so it returns the CopyOp::rval (instead
of always zero) and only launches finish_copy() on success.
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|
|
|
| |
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|
|
|
| |
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|
|
|
|
|
|
|
|
| |
The obs.oi.size needs to updated in the middle so that we actually
change the stats -- this got set backwards by mistake during one
of the refactors to support large objects!
(See 4e29e362e7981634d751ee982144fbf602782a9a)
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|
|
|
| |
Signed-off-by: Sage Weil <sage@inktank.com>
|
|
|
|
|
|
| |
Fixes: #4612
Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
|
|\
| |
| |
| |
| | |
Wip objecter notier
Reviewed-by: Sage Weil <sage@inktank.com>
|
| |
| |
| |
| | |
Signed-off-by: Greg Farnum <greg@inktank.com>
|
| |
| |
| |
| |
| |
| |
| | |
When set to false, we do not redirect based on the cache_pool data
in the OSDMap. We'll use this so the OSDs can actually fetch data
into the cache pools on promotion!
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|\ \
| | |
| | |
| | | |
osdc/ObjectCacher: limit writeback IOs generated while holding lock
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
While analyzing a log from Mike Dawson I saw a long stall while librbd's
objectcacher was starting lots (many hundreds) of IOs. Limit the amount of
time we spend doing this at a time to allow IO replies to be processed so
that the cache remains responsive.
I'm not sure this warrants a tunable (which we would need to add for both
libcephfs and librbd).
Signed-off-by: Sage Weil <sage@inktank.com>
|
|\ \ \
| | | |
| | | | |
Reviewed-by: Greg Farnum <greg@inktank.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The cancel_copy() method removes the entry from copy_ops. Move the
iterator forward before calling.
Fixes segfault when thrashing osds with a copy-from workload.
Signed-off-by: Sage Weil <sage@inktank.com>
|
| |/ /
|/| |
| | |
| | | |
Signed-off-by: Sage Weil <sage@inktank.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fixes: #6123
We don't want to know about failing to read region map info
if it's not found, only if failed on some other error. In
any case it's just a warning.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| | |
The device could only be set to rw(default) when mapping
now. This patch only handle the user space, because the
kernel part has been completed.
Signed-off-by: Guangliang Zhao <guangliang@unitedstack.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
|
|\ \
| | |
| | |
| | |
| | | |
sloppy / opportunistic CRC tracking in the filestore
Reviewed-by: Samuel Just <sam.just@inktank.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Opportunistically track CRCs for data we write and verify it for data
we read.
Signed-off-by: Sage Weil <sage@inktank.com>
|
| |/
| |
| |
| |
| |
| | |
Signed-off-by: Sage Weil <sage@inktank.com>
sloppy
|
|\ \
| |/
|/|
| |
| | |
Wip copy cleanups
Reviewed-by: Sage Weil <sage@inktank.com>
|
| |
| |
| |
| |
| |
| | |
We never placed any ops here, and so we weren't ever requeuing any ops.
Signed-off-by: Greg Farnum <greg@inktank.com>
|
| |
| |
| |
| | |
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|/
|
|
|
|
|
| |
We have an iterator pointing at the element we want; no need to search
the map again in order to grab the element or remove it.
Signed-off-by: Greg Farnum <greg@inktank.com>
|
|\
| |
| |
| |
| | |
Conflicts:
src/common/crc32c_intel_fast.c
|
| |\
| | |
| | |
| | |
| | | |
ceph.in: fix missing exception variable in failure to open -o file
Reviewed-by: Sage Weil <sage@inktank.com>
|
| | |
| | |
| | |
| | |
| | | |
Fixes: #6424
Signed-off-by: Dan Mick <dan.mick@inktank.com>
|
| |\ \
| | |/
| |/|
| | |
| | | |
Wip 6397
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Parser handles that by itself.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fixes: #6397
Previous implementation did not user the constructor with the length
param.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Regression test for #6047
Signed-off-by: Joao Eduardo Luis <jecluis@gmail.com>
(cherry picked from commit b2b0f202ea8a0028e7e27664b3ea6b9b8cdafe6e)
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The optimized intel code reads in word-sized chunks, knowing that the
allocator will only hand out memory in word-sized increments. This makes
valgrind unhappy. Whitelisting doesn't work because for some reason there
is no caller context (probably because of some interaction with yasm?).
Instead, just use the baseline code for the last few bytes. This should
not be significant.
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
(cherry picked from commit 39c89dcfed0587f822e2226f2de8e4092449af29)
Conflicts:
src/test/common/test_crc32c.cc
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
autoconf: fix build out of tree
Reviewed-by: Sage Weil <sage@inktank.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
so that the following works:
git clone git@github.com:ceph/ceph.git
cd ceph
./autogen.sh
mkdir ../build
cd ../build
../ceph/configure --with-radosgw
make check
Signed-off-by: Loic Dachary <loic@dachary.org>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
fixes: #6389
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
fix some issues with ceph_test_rados
Reviewed-by: Samuel Just <sam.just@inktank.com>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We update this on snap create and delete; no need to do it any other
time.
Signed-off-by: Sage Weil <sage@inktank.com>
|
| | | | |
| | | | |
| | | | |
| | | | | |
Signed-off-by: Sage Weil <sage@inktank.com>
|
| | | | |
| | | | |
| | | | |
| | | | | |
Signed-off-by: Sage Weil <sage@inktank.com>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Update at current snap, not the last snap we did an update.
Broken this this was introduced in 996af2d8fd8e60bcdce8e9408249b974521de24e
Signed-off-by: Sage Weil <sage@inktank.com>
|
|\ \ \ \ \
| | | | | |
| | | | | | |
pybind: update osd blacklist tests for nonce
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Update the unit tests to reflect a) that the nonce is no longer mandatory,
b) that it must be an integer.
http://tracker.ceph.com/issues/6426 refs #6426
Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
Signed-off-by: Loic Dachary <loic@dachary.org>
|