The Ceph Blog

Ceph blog stories provide high-level spotlights on our customers all over the world

May 26, 2021

v15.2.13 Octopus released

This is the 13th backport release in the Octopus series. We recommend all users update to this release.



Notable Changes

  • RADOS: Ability to dynamically adjust trimming rate in the monitor and several other bug fixes.



Changelog

  • blk/kernel: fix io_uring got (4) Interrupted system call (pr#39899, Yanhu Cao)

  • ceph.spec.in: Enable tcmalloc on IBM Power and Z (pr#39487, Nathan Cutler, Yaakov Selkowitz)

  • `cephadm ls` broken for SUSE downstream alertmanager container (pr#39802, Patrick Seidensal)

  • cephadm: Allow to use paths in all <_devices> drivegroup sections (pr#40838, Juan Miguel Olmo Martínez)

  • cephadm: add docker.service dependency in systemd units (pr#39804, Sage Weil)

  • cephadm: allow redeploy of daemons in error state if container running (pr#39717, Adam King)

  • cephadm: fix failure when using –apply-spec and –shh-user (pr#40737, Daniel Pivonka)

  • cephadm: run containers using `–init` (pr#39914, Michael Fritch, Sage Weil)

  • cephfs: client: only check pool permissions for regular files (pr#40779, Xiubo Li)

  • cephfs: client: wake up the front pos waiter (pr#40771, Xiubo Li)

  • client: fire the finish_cap_snap() after buffer being flushed (pr#40778, Xiubo Li)

  • cmake: build static libs if they are internal ones (pr#40789, Kefu Chai)

  • cmake: define BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT globaly (pr#40784, Kefu Chai)

  • common/buffer: adjust align before calling posix_memalign() (pr#41247, Ilya Dryomov)

  • common/ipaddr: Allow binding on lo (pr#39343, Thomas Goirand)

  • common/ipaddr: skip loopback interfaces named ‘lo’ and test it (pr#40424, Dan van der Ster)

  • common/mempool: Improve mempool shard selection (pr#39978, singuliere, Adam Kupczyk)

  • common/options/global.yaml.in: increase default value of bluestore_cache_trim_max_skip_pinned (pr#40919, Neha Ojha)

  • common/options: bluefs_buffered_io=true by default (pr#40392, Dan van der Ster)

  • common: Fix assertion when disabling and re-enabling clog_to_monitors (pr#39935, Gerald Yang)

  • common: remove log_early configuration option (pr#40550, Changcheng Liu)

  • crush/CrushLocation: do not print logging message in constructor (pr#40791, Alex Wu)

  • crush/CrushWrapper: update shadow trees on update_item() (pr#39919, Sage Weil)

  • debian/ceph-common.postinst: do not chown cephadm log dirs (pr#40275, Sage Weil)

  • doc/cephfs/nfs: Add note about cephadm NFS-Ganesha daemon port (pr#40777, Varsha Rao)

  • doc/cephfs/nfs: Add rook pod restart note, export and log block example (pr#40766, Varsha Rao)

  • * refs/pull/40766/head: doc/cephfs/nfs: Add rook pod restart note, export and log block example
  • doc: snap-schedule documentation (pr#40775, Jan Fajerski)

  • install-deps.sh: remove existing ceph-libboost of different version (pr#40286, Kefu Chai)

  • krbd: make sure the device node is accessible after the mapping (pr#39968, Ilya Dryomov)

  • librbd/api: avoid retrieving more than max mirror image info records (pr#39964, Jason Dillaman)

  • librbd/io: conditionally disable move optimization (pr#39958, Jason Dillaman)

  • librbd/io: send alloc_hint when compression hint is set (pr#40386, Jason Dillaman)

  • librbd/mirror/snapshot: avoid UnlinkPeerRequest with a unlinked peer (pr#41302, Arthur Outhenin-Chalandre)

  • librbd: allow interrupted trash move request to be restarted (pr#40387, Jason Dillaman)

  • librbd: explicitly disable readahead for writearound cache (pr#39962, Jason Dillaman)

  • librbd: refuse to release exclusive lock when removing (pr#39966, Ilya Dryomov)

  • mds: fix race of fetching large dirfrag (pr#40774, Erqi Chen)

  • mds: trim cache regularly for standby-replay (pr#40743, Xiubo Li, Patrick Donnelly)

  • mds: update defaults for recall configs (pr#40764, Patrick Donnelly)

  • mgr/PyModule: put mgr_module_path before Py_GetPath() (pr#40534, Kefu Chai)

  • mgr/cephadm: alias rgw-nfs -> nfs (pr#40009, Michael Fritch)

  • mgr/cephadm: on ssh connection error, advice chmod 0600 (pr#40823, Sebastian Wagner)

  • mgr/dashboard: Add badge to the Label column in Host List (pr#40433, Nizamudeen A)

  • mgr/dashboard: Device health status is not getting listed under hosts section (pr#40495, Aashish Sharma)

  • mgr/dashboard: Fix for alert notification message being undefined (pr#40589, Nizamudeen A)

  • mgr/dashboard: Fix for broken User management role cloning (pr#40399, Nizamudeen A)

  • mgr/dashboard: OSDs placement text is unreadable (pr#41124, Aashish Sharma)

  • mgr/dashboard: Remove redundant pytest requirement (pr#40657, Kefu Chai)

  • mgr/dashboard: Remove username and password from request body (pr#41057, Nizamudeen A)

  • mgr/dashboard: Remove username, password fields from Manager Modules/dashboard,influx (pr#40491, Aashish Sharma)

  • mgr/dashboard: Revoke read-only user’s access to Manager modules (pr#40649, Nizamudeen A)

  • mgr/dashboard: Splitting tenant$user when creating rgw user (pr#40297, Nizamudeen A)

  • mgr/dashboard: additional logging to SMART data retrieval (pr#37972, Kiefer Chang, Patrick Seidensal)

  • mgr/dashboard: allow getting fresh inventory data from the orchestrator (pr#41387, Kiefer Chang)

  • mgr/dashboard: debug nodeenv hangs (pr#40816, Ernesto Puerta)

  • mgr/dashboard: filesystem pool size should use stored stat (pr#41020, Avan Thakkar)

  • mgr/dashboard: fix base-href: revert it to previous approach (pr#41252, Avan Thakkar)

  • mgr/dashboard: fix dashboard instance ssl certificate functionality (pr#40001, Avan Thakkar)

  • mgr/dashboard: improve telemetry opt-in reminder notification message (pr#40894, Waad Alkhoury)

  • mgr/dashboard: test prometheus rules through promtool (pr#39987, Aashish Sharma, Kefu Chai)

  • mgr/progress: ensure progress stays between [0,1] (pr#41311, Dan van der Ster)

  • mgr/rook: Add timezone info (pr#39716, Varsha Rao)

  • mgr/telemetry: check if ‘ident’ channel is active (pr#39922, Sage Weil, Yaarit Hatuka)

  • mgr/volumes: Retain suid guid bits in clone (pr#40268, Kotresh HR)

  • mgr: fix deadlock in ActivePyModules::get_osdmap() (pr#39341, peng jiaqi)

  • mgr: relax osd ok-to-stop condition on degraded pgs (pr#39887, Xuehan Xu)

  • mgr: update mon metadata when monmap is updated (pr#39219, Kefu Chai)

  • mon/ConfigMap: fix stray option leak (pr#40298, Sage Weil)

  • mon/MgrMonitor: populate available_modules from promote_standby() (pr#40757, Sage Weil)

  • mon/MonClient: reset authenticate_err in _reopen_session() (pr#41017, Ilya Dryomov)

  • mon/OSDMonitor: drop stale failure_info after a grace period (pr#40558, Kefu Chai)

  • mon/OSDMonitor: fix safety/idempotency of {set,rm}-device-class (pr#40276, Sage Weil)

  • mon: Modifying trim logic to change paxos_service_trim_max dynamically (pr#40699, Aishwarya Mathuria)

  • mon: check mdsmap is resizeable before promoting standby-replay (pr#40783, Patrick Donnelly)

  • monmaptool: Don’t call set_port on an invalid address (pr#40758, Brad Hubbard, Kefu Chai)

  • mount.ceph: collect v2 addresses for non-legacy ms_mode options (pr#40763, Jeff Layton)

  • os/FileStore: don’t propagate split/merge error to “create”/”remove” (pr#40988, Mykola Golub)

  • os/FileStore: fix to handle readdir error correctly (pr#41237, Misono Tomohiro)

  • os/bluestore/BlueFS: do not _flush_range deleted files (pr#40793, weixinwei)

  • os/bluestore/BlueFS: use iterator_impl::copy instead of bufferlist::c_str() to avoid bufferlist rebuild (pr#39884, weixinwei)

  • os/bluestore: Make Onode::put/get resiliant to split_cache (pr#40441, Igor Fedotov, Adam Kupczyk)

  • os/bluestore: be more verbose in _open_super_meta by default (pr#41061, Igor Fedotov)

  • osd/OSDMap: An empty bucket or OSD is not an error (pr#39970, Brad Hubbard)

  • osd: add osd_fast_shutdown_notify_mon option (default false) (issue#46978, pr#40013, Mauricio Faria de Oliveira)

  • osd: compute OSD’s space usage ratio via raw space utilization (pr#41112, Igor Fedotov)

  • osd: do not dump an osd multiple times (pr#40788, Xue Yantao)

  • osd: don’t assert in-flight backfill is always in recovery list (pr#41321, Mykola Golub)

  • osd: fix potential null pointer dereference when sending ping (pr#40277, Mykola Golub)

  • osd: propagate base pool application_metadata to tiers (pr#40274, Sage Weil)

  • packaging: require ceph-common for immutable object cache daemon (pr#40666, Ilya Dryomov)

  • pybind/ceph_argparse.py: use a safe value for timeout (pr#40476, Kefu Chai)

  • pybind/cephfs: DT_REG and DT_LNK values are wrong (pr#40770, Varsha Rao)

  • pybind/mgr/balancer/module.py: assign weight-sets to all buckets before balancing (pr#40127, Neha Ojha)

  • pybind/mgr/dashboard: bump flake8 to 3.9.0 (pr#40492, Kefu Chai, Volker Theile)

  • qa/\*/thrash_cache_writeback_proxy_none.yaml: disable writeback overlay tests (pr#39578, Neha Ojha)

  • qa/ceph-ansible: Update ansible version and ceph_stable_release (pr#40945, Brad Hubbard)

  • qa/suites/krbd: address recent issues caused by newer kernels (pr#40065, Ilya Dryomov)

  • qa/suites/rados/cephadm/upgrade: change starting version by distro (pr#40364, Sage Weil)

  • qa/suites/rados/cephadm: rm ubuntu_18.04_podman (pr#39949, Sebastian Wagner)

  • qa/suites/rados/singletone: whitelist MON_DOWN when injecting msgr errors (pr#40138, Sage Weil)

  • qa/tasks/mgr/test_progress.py: remove calling of _osd_in_out_completed_events_count() (pr#40225, Kamoltat)

  • qa/tasks/mgr/test_progress: fix wait_until_equal (pr#39360, Kamoltat)

  • qa/tasks/vstart_runner.py: start max required mgrs (pr#40792, Alfonso Martínez)

  • qa/tests: advanced octopus initial version to 15.2.10 (pr#41228, Yuri Weinstein)

  • qa: add sleep for blocklisting to take effect (pr#40773, Patrick Donnelly)

  • qa: bump osd heartbeat grace for ffsb workload (pr#40767, Patrick Donnelly)

  • qa: delete all fs during tearDown (pr#40772, Patrick Donnelly)

  • qa: for the latest kclient it will also return EIO (pr#40765, Xiubo Li)

  • qa: krbd_blkroset.t: update for separate hw and user read-only flags (pr#40211, Ilya Dryomov)

  • rbd-mirror: bad state and crashes in snapshot-based mirroring (pr#39961, Jason Dillaman)

  • rbd-mirror: delay update snapshot mirror image state (pr#39967, Jason Dillaman)

  • rbd-mirror: fix UB while registering perf counters (pr#40790, Arthur Outhenin-Chalandre)

  • rbd/bench: include used headers (pr#40388, Kefu Chai)

  • rgw/amqp: fix race condition in amqp manager initialization (pr#40382, Yuval Lifshitz)

  • rgw/http: add timeout to http client (pr#40384, Yuval Lifshitz)

  • rgw/notification: support GetTopicAttributes API (pr#40812, Yuval Lifshitz)

  • rgw/notification: trigger notifications on changes from any user (pr#40029, Yuval Lifshitz)

  • rgw: Use correct bucket info when put or get large object with swift (pr#40296, zhiming zhang, yupeng chen)

  • rgw: add MD5 in forward_request (pr#39758, caolei)

  • rgw: allow rgw-orphan-list to handle intermediate files w/ binary data (pr#39766, J. Eric Ivancich)

  • rgw: catch non int exception (pr#39746, caolei)

  • rgw: during reshard lock contention, adjust logging (pr#41157, J. Eric Ivancich)

  • rgw: fix sts get_session_token duration check failed (pr#39954, yuliyang_yewu)

  • rgw: multisite: fix single-part-MPU object etag misidentify problem (pr#39611, Yang Honggang)

  • rgw: objectlock: improve client error messages (pr#40755, Matt Benjamin)

  • rgw: return error when trying to copy encrypted object without key (pr#40672, Ilsoo Byun)

  • rgw: tooling to locate rgw objects with missing rados components (pr#39785, Michael Kidd, J. Eric Ivancich)

  • run-make-check.sh: let ctest generate XML output (pr#40406, Kefu Chai)

  • src/global/signal_handler.h: fix preprocessor logic for alpine (pr#39940, Duncan Bellamy)

  • test/rbd-mirror: fix broken ceph_test_rbd_mirror_random_write (pr#39965, Jason Dillaman)

  • test/rgw: test_datalog_autotrim filters out new entries (pr#40673, Casey Bodley)

  • test: cancelling both noscrub \*and\* nodeep-scrub (pr#40278, Ronen Friedman)

  • test: reduce number of threads to 32 in LibCephFS.ShutdownRace (pr#40776, Jeff Layton)

  • test: use std::atomic instead of volatile for cb_done var (pr#40708, Jeff Layton)

  • tests: ceph_test_rados_api_watch_notify: Allow for reconnect (pr#40756, Brad Hubbard)

  • tools/cephfs: don’t bind to public_addr (pr#40762, “Yan, Zheng”)

  • vstart.sh: disable “auth_allow_insecure_global_id_reclaim” (pr#40958, Kefu Chai)

dgalloway

Careers