Commit 39565363 authored by Vladimir Bashkirtsev's avatar Vladimir Bashkirtsev

Upgraded ceph to 14.2.0

parent fa300b48
...@@ -22,36 +22,33 @@ all: ceph-config ...@@ -22,36 +22,33 @@ all: ceph-config
mv -v /etc/gshadow /data/etc/gshadow mv -v /etc/gshadow /data/etc/gshadow
ln -sv /data/etc/gshadow /etc/gshadow ln -sv /data/etc/gshadow /etc/gshadow
dd if=/dev/zero of=swap bs=1048576 count=4096 dd if=/dev/zero of=swap bs=1048576 count=9216
chmod 600 swap chmod 600 swap
mkswap swap mkswap swap
swapon swap swapon swap
mkdir tmp mkdir tmp
mount --bind tmp /tmp mount --bind tmp /tmp
tar xf ceph-13.2.5.tar.gz tar xf ceph-14.2.0.tar.gz
patch -Np1 -d ceph-13.2.5 < ceph-13.2.5-BlueStore_filter_out_fix.patch cd ceph-14.2.0 && ./do_cmake.sh -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_SYSCONFDIR=/etc -DCMAKE_INSTALL_LIBEXECDIR=/lib -DWITH_SPDK=OFF -DWITH_RDMA=OFF -DWITH_RADOSGW_AMQP_ENDPOINT=OFF
patch -Np1 -d ceph-13.2.5 < ceph-13.2.5-PrimaryLogPG_calc_trim_to_fix.patch $(MAKE) -C ceph-14.2.0/build npm_config_cache=/build/.npm
patch -Np1 -d ceph-13.2.5 < ceph-13.2.5-OSDMonitor_update_pending_pgs_fix.patch hostname localhost
patch -Np1 -d ceph-13.2.5 < ceph-13.2.5-rgw_get_request_metadata_fix.patch cd ceph-14.2.0 && git clone --single-branch --branch master https://github.com/ceph/ceph-object-corpus.git
patch -Np1 -d ceph-13.2.5 < ceph-13.2.5-rgw_max_attr_name_len_fix.patch cd ceph-14.2.0/build && make check
patch -Np1 -d ceph-13.2.5 < ceph-13.2.5-take_min_status_fix.patch # cd ceph-14.2.0/build && ctest --output-on-failure --timeout 7200
patch -Np1 -d ceph-13.2.5 < ceph-13.2.5-rgw_rest_swift_fix.patch
patch -Np1 -d ceph-13.2.5 < ceph-13.2.5-largest_singleton_fix.patch
patch -Np1 -d ceph-13.2.5 < ceph-13.2.5-scribble_fix.patch
patch -Np1 -d ceph-13.2.5 < ceph-13.2.5-unsupported_platform_fix.patch
cd ceph-13.2.5 && ./do_cmake.sh -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_SYSCONFDIR=/etc -DCMAKE_INSTALL_LIBEXECDIR=/lib -DWITH_SPDK=OFF
$(MAKE) -C ceph-13.2.5/build npm_config_cache=/build/.npm
hostname ceph
-cd ceph-13.2.5/build && make check
# cd ceph-13.2.5/build && ctest --output-on-failure
umount /tmp umount /tmp
rm -rf tmp rm -rf tmp
swapoff swap swapoff swap
rm -rf swap rm -rf swap
$(MAKE) -C ceph-13.2.5/build install $(MAKE) -C ceph-14.2.0/build install
rm /usr/bin/ceph_test*
find / -name *.pyc -exec rm -f '{}' ';'
find / -name *.js.map -exec rm -f '{}' ';'
find / -name *.css.map -exec rm -f '{}' ';'
find / -depth -name .cache -type d -exec rm -rf '{}' ';'
find / -depth -name .pytest_cache -type d -exec rm -rf '{}' ';'
mv -v /lib/ceph/* /usr/lib/ceph mv -v /lib/ceph/* /usr/lib/ceph
rm -rf /lib/ceph rm -rf /lib/ceph
install -v -Dm755 -d /etc/sysconfig install -v -Dm755 -d /etc/sysconfig
...@@ -71,7 +68,7 @@ all: ceph-config ...@@ -71,7 +68,7 @@ all: ceph-config
systemctl enable ceph-mon.target systemctl enable ceph-mon.target
rm -rf ceph-13.2.5 rm -rf ceph-14.2.0
ceph-config: ceph-config:
define CEPH_CONFIG define CEPH_CONFIG
......
diff -uNr ceph-13.2.5/src/os/bluestore/BlueStore.cc ceph-13.2.5-BlueStore_filter_out_fix/src/os/bluestore/BlueStore.cc
--- ceph-13.2.5/src/os/bluestore/BlueStore.cc 2019-03-13 03:18:03.000000000 +1030
+++ ceph-13.2.5-BlueStore_filter_out_fix/src/os/bluestore/BlueStore.cc 2019-03-16 21:46:23.990137031 +1030
@@ -12567,8 +12567,8 @@
ceph_assert(!was_filtered_out);
ceph_assert(collections_bfs.size() == objects_bfs.size());
- size_t prev_pos = 0;
- size_t npos = collections_bfs.size();
+ uint64_t prev_pos = 0;
+ uint64_t npos = collections_bfs.size();
bloom_vector collections_reduced;
bloom_vector objects_reduced;
@@ -12577,8 +12577,8 @@
if (e.second == 0) {
continue;
}
- size_t pos = max(e.first / granularity, prev_pos);
- size_t end_pos = 1 + (e.first + e.second - 1) / granularity;
+ uint64_t pos = max(e.first / granularity, prev_pos);
+ uint64_t end_pos = 1 + (e.first + e.second - 1) / granularity;
while (pos != npos && pos < end_pos) {
ceph_assert( collections_bfs[pos].element_count() ==
objects_bfs[pos].element_count());
diff -uNr ceph-13.2.5/src/mon/OSDMonitor.cc ceph-13.2.5-OSDMonitor_update_pending_pgs_fix/src/mon/OSDMonitor.cc
--- ceph-13.2.5/src/mon/OSDMonitor.cc 2019-03-13 03:18:03.000000000 +1030
+++ ceph-13.2.5-OSDMonitor_update_pending_pgs_fix/src/mon/OSDMonitor.cc 2019-03-16 21:52:25.324180392 +1030
@@ -821,8 +821,8 @@
<< " modified " << p->second.modified
<< " [" << p->second.start << "-" << p->second.end << ")"
<< dendl;
- int n = std::min(max - pending_creatings.pgs.size(),
- p->second.end - p->second.start);
+ int64_t n = std::min<int64_t>(max - pending_creatings.pgs.size(),
+ p->second.end - p->second.start);
ps_t first = p->second.start;
ps_t end = first + n;
for (ps_t ps = first; ps < end; ++ps) {
diff -uNr ceph-13.2.5/src/osd/PrimaryLogPG.cc ceph-13.2.5-PrimaryLogPG_calc_trim_to_fix/src/osd/PrimaryLogPG.cc
--- ceph-13.2.5/src/osd/PrimaryLogPG.cc 2019-03-13 03:18:03.000000000 +1030
+++ ceph-13.2.5-PrimaryLogPG_calc_trim_to_fix/src/osd/PrimaryLogPG.cc 2019-03-16 21:57:52.076127146 +1030
@@ -1672,8 +1672,8 @@
pg_log.get_log().approx_size() > target) {
dout(10) << __func__ << " approx pg log length = "
<< pg_log.get_log().approx_size() << dendl;
- size_t num_to_trim = std::min(pg_log.get_log().approx_size() - target,
- cct->_conf->osd_pg_log_trim_max);
+ uint64_t num_to_trim = std::min<uint64_t>(pg_log.get_log().approx_size() - target,
+ cct->_conf->osd_pg_log_trim_max);
dout(10) << __func__ << " num_to_trim = " << num_to_trim << dendl;
if (num_to_trim < cct->_conf->osd_pg_log_trim_min &&
cct->_conf->osd_pg_log_trim_max >= cct->_conf->osd_pg_log_trim_min) {
diff -uNr ceph-13.2.5/src/common/ceph_context.h ceph-13.2.5-largest_singleton_fix/src/common/ceph_context.h
--- ceph-13.2.5/src/common/ceph_context.h 2019-03-13 03:18:03.000000000 +1030
+++ ceph-13.2.5-largest_singleton_fix/src/common/ceph_context.h 2019-03-16 22:02:49.693989490 +1030
@@ -144,7 +144,7 @@
void do_command(std::string_view command, const cmdmap_t& cmdmap,
std::string_view format, ceph::bufferlist *out);
- static constexpr std::size_t largest_singleton = sizeof(void*) * 72;
+ static constexpr std::size_t largest_singleton = 8 * 72;
template<typename T, typename... Args>
T& lookup_or_create_singleton_object(std::string_view name,
diff -uNr ceph-13.2.5/src/rgw/rgw_op.h ceph-13.2.5-rgw_get_request_metadata_fix/src/rgw/rgw_op.h
--- ceph-13.2.5/src/rgw/rgw_op.h 2019-03-13 03:18:03.000000000 +1030
+++ ceph-13.2.5-rgw_get_request_metadata_fix/src/rgw/rgw_op.h 2019-03-16 22:08:30.249976249 +1030
@@ -1977,7 +1977,7 @@
* as ObjectStore::get_max_attr_name_length() can set the limit even
* lower than the "osd_max_attr_name_len" configurable. */
const size_t max_attr_name_len = \
- cct->_conf->get_val<size_t>("rgw_max_attr_name_len");
+ cct->_conf->get_val<Option::size_t>("rgw_max_attr_name_len");
if (max_attr_name_len && attr_name.length() > max_attr_name_len) {
return -ENAMETOOLONG;
}
@@ -1993,7 +1993,7 @@
/* Swift allows administrators to limit the number of metadats items
* send _in a single request_. */
const auto rgw_max_attrs_num_in_req = \
- cct->_conf->get_val<size_t>("rgw_max_attrs_num_in_req");
+ cct->_conf->get_val<uint64_t>("rgw_max_attrs_num_in_req");
if (rgw_max_attrs_num_in_req &&
++valid_meta_count > rgw_max_attrs_num_in_req) {
return -E2BIG;
diff -uNr ceph-13.2.5/src/common/options.cc ceph-13.2.5-rgw_max_attr_name_len_fix/src/common/options.cc
--- ceph-13.2.5/src/common/options.cc 2019-03-13 03:18:03.000000000 +1030
+++ ceph-13.2.5-rgw_max_attr_name_len_fix/src/common/options.cc 2019-03-28 19:32:31.030107561 +1030
@@ -4989,7 +4989,7 @@
.set_default(0)
.set_description("The maximum length of metadata value. 0 skips the check"),
- Option("rgw_max_attr_name_len", Option::TYPE_UINT, Option::LEVEL_ADVANCED)
+ Option("rgw_max_attr_name_len", Option::TYPE_SIZE, Option::LEVEL_ADVANCED)
.set_default(0)
.set_description("The maximum length of metadata name. 0 skips the check"),
diff -uNr ceph-13.2.5/src/rgw/rgw_rest_swift.cc ceph-13.2.5-rgw_rest_swift_fix/src/rgw/rgw_rest_swift.cc
--- ceph-13.2.5/src/rgw/rgw_rest_swift.cc 2019-03-13 03:18:03.000000000 +1030
+++ ceph-13.2.5-rgw_rest_swift_fix/src/rgw/rgw_rest_swift.cc 2019-03-16 22:13:44.550886924 +1030
@@ -726,7 +726,7 @@
} else if (op_ret == -E2BIG) {
const auto error_message = boost::str(
boost::format("Too many metadata items; max %lld")
- % s->cct->_conf->get_val<size_t>("rgw_max_attrs_num_in_req"));
+ % s->cct->_conf->get_val<Option::size_t>("rgw_max_attrs_num_in_req"));
set_req_state_err(s, EINVAL, error_message);
return -EINVAL;
}
@@ -1781,7 +1781,7 @@
formatter.dump_string("version", ceph_version);
const size_t max_attr_name_len = \
- g_conf->get_val<size_t>("rgw_max_attr_name_len");
+ g_conf->get_val<Option::size_t>("rgw_max_attr_name_len");
if (max_attr_name_len) {
const size_t meta_name_limit = \
max_attr_name_len - strlen(RGW_ATTR_PREFIX RGW_AMZ_META_PREFIX);
@@ -1794,7 +1794,7 @@
}
const size_t meta_num_limit = \
- g_conf->get_val<size_t>("rgw_max_attrs_num_in_req");
+ g_conf->get_val<Option::size_t>("rgw_max_attrs_num_in_req");
if (meta_num_limit) {
formatter.dump_int("max_meta_count", meta_num_limit);
}
diff -uNr ceph-13.2.5/src/test/rbd_mirror/test_ImageSync.cc ceph-13.2.5-scribble_fix/src/test/rbd_mirror/test_ImageSync.cc
--- ceph-13.2.5/src/test/rbd_mirror/test_ImageSync.cc 2019-03-13 03:18:03.000000000 +1030
+++ ceph-13.2.5-scribble_fix/src/test/rbd_mirror/test_ImageSync.cc 2019-03-16 22:17:03.814464284 +1030
@@ -39,9 +39,9 @@
return ctx.wait();
}
-void scribble(librbd::ImageCtx *image_ctx, int num_ops, size_t max_size)
+void scribble(librbd::ImageCtx *image_ctx, int num_ops, uint64_t max_size)
{
- max_size = std::min(image_ctx->size, max_size);
+ max_size = std::min<uint64_t>(image_ctx->size, max_size);
for (int i=0; i<num_ops; i++) {
uint64_t off = rand() % (image_ctx->size - max_size + 1);
uint64_t len = 1 + rand() % max_size;
diff -uNr ceph-13.2.5/src/rgw/rgw_sync_log_trim.cc ceph-13.2.5-take_min_status_fix/src/rgw/rgw_sync_log_trim.cc
--- ceph-13.2.5/src/rgw/rgw_sync_log_trim.cc 2019-03-13 03:18:03.000000000 +1030
+++ ceph-13.2.5-take_min_status_fix/src/rgw/rgw_sync_log_trim.cc 2019-03-16 22:20:26.458051436 +1030
@@ -351,7 +351,7 @@
status->clear();
// The initialisation below is required to silence a false positive
// -Wmaybe-uninitialized warning
- boost::optional<size_t> num_shards = boost::make_optional(false, 0UL);
+ boost::optional<uint64_t> num_shards = boost::make_optional(false, uint64_t());
for (auto peer = first; peer != last; ++peer) {
const size_t peer_shards = peer->size();
if (!num_shards) {
diff -uNr ceph-13.2.5/src/ceph-detect-init/ceph_detect_init/__init__.py ceph-13.2.5-unsupported_platform_fix/src/ceph-detect-init/ceph_detect_init/__init__.py
--- ceph-13.2.5/src/ceph-detect-init/ceph_detect_init/__init__.py 2019-03-13 03:18:03.000000000 +1030
+++ ceph-13.2.5-unsupported_platform_fix/src/ceph-detect-init/ceph_detect_init/__init__.py 2019-03-18 17:51:12.515615965 +1030
@@ -78,6 +78,7 @@
'freebsd': freebsd,
'docker': docker,
'virtuozzo': centos,
+ 'ceph': docker,
}
if distro == 'redhat' and use_rhceph:
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment