Previously it was prefetching up to 2 object sets worth of journal
data objects which consumed too much memory.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Journal playback will need to read at least a full entry which was
currently limited to the maximum object size. In memory constrained
environment, this new optional limit will set a fix upper bound on
memory usage.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Support fetching the full object or incremental chunks (with a
minimum of at least a single decoded entry if available).
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Additional runtime configuration settings will be needed. The
new class will avoid the need to expand the constructor.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Was not tracking high markers correctly. Could only work if there was a single
hole in the completion range. Just keep a map of all the complete entries.
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
dh_auto_configure set -DCMAKE_BUILD_TYPE=None so the default does not
take effect at all. this is on purpose, see [1].
and dpkg-buildflags is able to produce the suggested compiling flags by
debian policy. dh_* can pass these flags to cmake only if it works at
compat>=9, see [2].
and we are safe to move to compat 9, as jewel's supported debian based
distro is jessie (with debhelper 9.20150101), ubuntu trusty (with
debhelper 9.20131227ubuntu1)
---
[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=701233#35
[2] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=653916
Fixes: http://tracker.ceph.com/issues/16744
Signed-off-by: Kefu Chai <kchai@redhat.com>
os/bluestore: misc fixes/cleanups
Mark's Comments:
This passed "ceph_test_objectstore --gtest_filter=*/2".
This PR may have contributed to write performance improvements along with #10257.
Reviewed-by: Mark Nelson <mnelson@redhat.com>
os/bluestore: extent alloc functionality for stupid and bitmap allocator
Mark's Comments:
This passed "ceph_test_objectstore --gtest_filter=*/2".
This PR appears to result in a large sequential write performance increase (Up to ~3.5X), and may contribute to a small random write performance increase as well.
Reviewed-by: Mark Nelson <mnelson@redhat.com>
We need to store the updated current period after adding the old converted regions
Fixes: http://tracker.ceph.com/issues/16751
Signed-off-by: Orit Wasserman <owasserm@redhat.com>
FindPackageHandleStandardArgs() takes care of the find_package()
boilderplate stuff. so no need to repeat them. and remove the checkings
in env variables.
Signed-off-by: Kefu Chai <kchai@redhat.com>
as ${lrc_srcs} is not defined in the scope where
unittest_erasure_code_lrc is added as a target. and instead we link
unittest_erasure_code_lrc against ec_lrc dynamic library. so we can
safely remove ${lrc_srcs} from unittest_erasure_code_lrc.
Signed-off-by: Kefu Chai <kchai@redhat.com>
we don't define HAVE_FUSE, and HAVE_LIBFUSE is defined to be compatible
with autotools. so use WITH_FUSE in cmake whenever possible.
Signed-off-by: Kefu Chai <kchai@redhat.com>
${CMAKE_THREAD_LIBS_INIT} is defined by find_package(Thread), while
PTHREAD_LIBS is defined by the acx_pthread.m4.
Signed-off-by: Kefu Chai <kchai@redhat.com>
this option matches '--with-profiler' option in autoconf. and it is off
by default. we should not link against libprofiler unless asked to do
so. this change fixes this problem.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Fixes: http://tracker.ceph.com/issues/16742
If we fail on any single entry in bucket, skip updating the marker tracker
so that next time we'll go over that entry, and back off. This will trigger
a report to the data sync error repo and eventually a retry on the failing
object.
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
kv/MemDB: misc fixes and cleanups
Mark's Comments:
This passed "ceph_test_objectstore --gtest_filter=*/2".
This PR did not appear to have a significant impact on performance tests.
Reviewed-by: Mark Nelson <mnelson@redhat.com>
os/bluestore: use BE for gifting and reclaiming from bluefs
Mark's Comments:
This passed "ceph_test_objectstore --gtest_filter=*/2".
This PR did not appear to have a significant impact on performance tests.
Reviewed-by: Mark Nelson <mnelson@redhat.com>
os/bluestore: fix error handling of posix_fallocate()
Mark's Comments:
This passed "ceph_test_objectstore --gtest_filter=*/2".
This PR did not appear to have a significant impact on performance tests.
Reviewed-by: Mark Nelson <mnelson@redhat.com>