doc/releases/squid.rst
Squid is the 19th stable release of Ceph.
This is the third backport release in the Squid series. We recommend that all users update to this release.
July 28, 2025
RGW: PutObjectLockConfiguration can now be used to enable S3 Object Lock on an existing versioning-enabled bucket that was not created with Object Lock enabled.
RADOS: A new command, ceph osd rm-pg-upmap-primary-all, has been added that allows
users to clear all pg-upmap-primary mappings in the osdmap when desired.
Related trackers:
RBD: Moving an image that is a member of a group to trash is no longer
allowed. rbd trash mv command now behaves the same way as rbd rm in this
scenario.
MGR: MGR's always-on modulues/plugins can now be force-disabled. This can be necessary in cases where MGR(s) needs to be prevented from being flooded by the module commands when coresponding Ceph service is down/degraded.
RGW: An authentication bypass vulnerability in STS [CVE-2023-43040] has been fixed.
RGW: S3 policy now enforces ARN-based conditionals.
RGW: Copying an object to itself no longer causes data loss. Potential corruption on ETIMEDOUT (not enabled by default), was also fixed.
pr#62137 <https://github.com/ceph/ceph/pull/62137>_, Pritha Srivastava, Adam Emerson)pr#63030 <https://github.com/ceph/ceph/pull/63030>_, Soumya Koduri)pr#61260 <https://github.com/ceph/ceph/pull/61260>_, Guillaume Abrioux)pr#63828 <https://github.com/ceph/ceph/pull/63828>_, Zac Dover)pr#61178 <https://github.com/ceph/ceph/pull/61178>_, Kevin Niederwanger)pr#61448 <https://github.com/ceph/ceph/pull/61448>_, Zac Dover)pr#62035 <https://github.com/ceph/ceph/pull/62035>_, David Galloway)issue#68865 <http://tracker.ceph.com/issues/68865>, pr#62058 <https://github.com/ceph/ceph/pull/62058>, Venky Shankar)pr#61809 <https://github.com/ceph/ceph/pull/61809>_, Yuri Weinstein)pr#64309 <https://github.com/ceph/ceph/pull/64309>_, yuriw)pr#61971 <https://github.com/ceph/ceph/pull/61971>_, Jaya Prakash)pr#63211 <https://github.com/ceph/ceph/pull/63211>_, David Galloway)pr#61104 <https://github.com/ceph/ceph/pull/61104>_, liubingrun)pr#62607 <https://github.com/ceph/ceph/pull/62607>_, Casey Bodley, liubingrun)pr#61401 <https://github.com/ceph/ceph/pull/61401>_, Anthony D'Atri)pr#62540 <https://github.com/ceph/ceph/pull/62540>_, Igor Fedotov, Jrchyang Yu)pr#61629 <https://github.com/ceph/ceph/pull/61629>_, Kamoltat Sirivadhna)pr#62254 <https://github.com/ceph/ceph/pull/62254>_, Igor Fedotov, Yite Gu)pr#62576 <https://github.com/ceph/ceph/pull/62576>_, Yite Gu)pr#62221 <https://github.com/ceph/ceph/pull/62221>_, Joshua Baergen)pr#62151 <https://github.com/ceph/ceph/pull/62151>_, Yite Gu)pr#61912 <https://github.com/ceph/ceph/pull/61912>_, John Mulligan)pr#62161 <https://github.com/ceph/ceph/pull/62161>_, John Mulligan)pr#62340 <https://github.com/ceph/ceph/pull/62340>_, John Mulligan)pr#64012 <https://github.com/ceph/ceph/pull/64012>_, Adam C. Emerson)pr#62177 <https://github.com/ceph/ceph/pull/62177>_, Guillaume Abrioux)pr#61420 <https://github.com/ceph/ceph/pull/61420>_, Guillaume Abrioux)pr#63012 <https://github.com/ceph/ceph/pull/63012>_, Janne Heß)pr#61975 <https://github.com/ceph/ceph/pull/61975>_, Guillaume Abrioux)pr#60487 <https://github.com/ceph/ceph/pull/60487>_, Guillaume Abrioux)pr#63998 <https://github.com/ceph/ceph/pull/63998>_, Matan Breizman)pr#62905 <https://github.com/ceph/ceph/pull/62905>_, Adam King)pr#60443 <https://github.com/ceph/ceph/pull/60443>_, Neeraj Pratap Singh)pr#62605 <https://github.com/ceph/ceph/pull/62605>_, Kefu Chai)pr#59899 <https://github.com/ceph/ceph/pull/59899>_, Jos Collin)pr#62095 <https://github.com/ceph/ceph/pull/62095>_, Patrick Donnelly, Casey Bodley, Lucian Petrut, John Mulligan)pr#60218 <https://github.com/ceph/ceph/pull/60218>_, Dhairya Parmar)pr#63458 <https://github.com/ceph/ceph/pull/63458>_, Xiubo Li, Venky Shankar)pr#60372 <https://github.com/ceph/ceph/pull/60372>_, Anoop C S)pr#60694 <https://github.com/ceph/ceph/pull/60694>_, Tod Chen)pr#59395 <https://github.com/ceph/ceph/pull/59395>_, Xiubo Li)pr#59621 <https://github.com/ceph/ceph/pull/59621>_, Chengen Du)pr#60656 <https://github.com/ceph/ceph/pull/60656>_, Milind Changire)pr#63234 <https://github.com/ceph/ceph/pull/63234>_, N Balachandran)pr#62590 <https://github.com/ceph/ceph/pull/62590>_, Casey Bodley)pr#57675 <https://github.com/ceph/ceph/pull/57675>_, Patrick Donnelly)pr#62377 <https://github.com/ceph/ceph/pull/62377>_, Satoru Takeuchi)pr#61323 <https://github.com/ceph/ceph/pull/61323>_, Nitzan Mordechai)pr#57361 <https://github.com/ceph/ceph/pull/57361>_, Rongqi Sun)pr#62852 <https://github.com/ceph/ceph/pull/62852>, Casey Bodley)pr#61398 <https://github.com/ceph/ceph/pull/61398>_, Ronen Friedman)pr#59389 <https://github.com/ceph/ceph/pull/59389>_, Tyler Stachecki)pr#61639 <https://github.com/ceph/ceph/pull/61639>_, edef)pr#61585 <https://github.com/ceph/ceph/pull/61585>_, Dan Mick)pr#61584 <https://github.com/ceph/ceph/pull/61584>_, Dan Mick)pr#62066 <https://github.com/ceph/ceph/pull/62066>_, Dan Mick)pr#61583 <https://github.com/ceph/ceph/pull/61583>_, Dan Mick)pr#61611 <https://github.com/ceph/ceph/pull/61611>_, John Mulligan)pr#62346 <https://github.com/ceph/ceph/pull/62346>_, John Mulligan)pr#61681 <https://github.com/ceph/ceph/pull/61681>_, John Mulligan)pr#61956 <https://github.com/ceph/ceph/pull/61956>_, Kefu Chai)pr#62270 <https://github.com/ceph/ceph/pull/62270>_, Shinya Hayashi)pr#62198 <https://github.com/ceph/ceph/pull/62198>_, Nitzan Mordechai)pr#61614 <https://github.com/ceph/ceph/pull/61614>_, Zac Dover)pr#62443 <https://github.com/ceph/ceph/pull/62443>_, Anthony D'Atri)pr#62427 <https://github.com/ceph/ceph/pull/62427>_, Anthony D'Atri)pr#62810 <https://github.com/ceph/ceph/pull/62810>_, Anthony D'Atri)pr#62694 <https://github.com/ceph/ceph/pull/62694>_, Anthony D'Atri)pr#61952 <https://github.com/ceph/ceph/pull/61952>_, Anthony D'Atri)pr#62796 <https://github.com/ceph/ceph/pull/62796>_, Anthony D'Atri)pr#62379 <https://github.com/ceph/ceph/pull/62379>_, Anthony D'Atri)pr#61664 <https://github.com/ceph/ceph/pull/61664>_, Zac Dover)pr#63147 <https://github.com/ceph/ceph/pull/63147>_, Anthony D'Atri)pr#63073 <https://github.com/ceph/ceph/pull/63073>_, Zac Dover)pr#61528 <https://github.com/ceph/ceph/pull/61528>_, Zac Dover)pr#61747 <https://github.com/ceph/ceph/pull/61747>_, Zac Dover)pr#61725 <https://github.com/ceph/ceph/pull/61725>_, Zac Dover)pr#63495 <https://github.com/ceph/ceph/pull/63495>_, Zac Dover)pr#62644 <https://github.com/ceph/ceph/pull/62644>_, Zac Dover)pr#61574 <https://github.com/ceph/ceph/pull/61574>_, Zac Dover)pr#63501 <https://github.com/ceph/ceph/pull/63501>_, Zac Dover)pr#63544 <https://github.com/ceph/ceph/pull/63544>_, Zac Dover)pr#63467 <https://github.com/ceph/ceph/pull/63467>_, Ville Ojamo)pr#61446 <https://github.com/ceph/ceph/pull/61446>_, Zac Dover)pr#63977 <https://github.com/ceph/ceph/pull/63977>_, Zac Dover)pr#61193 <https://github.com/ceph/ceph/pull/61193>_, Dhairya Parmar)pr#61058 <https://github.com/ceph/ceph/pull/61058>_, Zac Dover)pr#61423 <https://github.com/ceph/ceph/pull/61423>_, Zac Dover)pr#61443 <https://github.com/ceph/ceph/pull/61443>_, Zac Dover)pr#61453 <https://github.com/ceph/ceph/pull/61453>_, Zac Dover)pr#61479 <https://github.com/ceph/ceph/pull/61479>_, Zac Dover)pr#61499 <https://github.com/ceph/ceph/pull/61499>_, Zac Dover)pr#61521 <https://github.com/ceph/ceph/pull/61521>_, Zac Dover)pr#61056 <https://github.com/ceph/ceph/pull/61056>_, Zac Dover)pr#61459 <https://github.com/ceph/ceph/pull/61459>_, Zac Dover)pr#62874 <https://github.com/ceph/ceph/pull/62874>_, Rishabh Dave)pr#63948 <https://github.com/ceph/ceph/pull/63948>_, Ville Ojamo)pr#63298 <https://github.com/ceph/ceph/pull/63298>_, Zac Dover)pr#63273 <https://github.com/ceph/ceph/pull/63273>_, Zac Dover)pr#63547 <https://github.com/ceph/ceph/pull/63547>_, Zac Dover)pr#63660 <https://github.com/ceph/ceph/pull/63660>_, Zac Dover)pr#62375 <https://github.com/ceph/ceph/pull/62375>_, Laimis Juzeliunas)pr#61817 <https://github.com/ceph/ceph/pull/61817>_, Dan Mick, Zac Dover)pr#63993 <https://github.com/ceph/ceph/pull/63993>_, Matan Breizman)pr#63990 <https://github.com/ceph/ceph/pull/63990>_, Zac Dover)pr#63737 <https://github.com/ceph/ceph/pull/63737>_, Zac Dover)pr#60199 <https://github.com/ceph/ceph/pull/60199>_, Zac Dover)pr#63197 <https://github.com/ceph/ceph/pull/63197>_, Zac Dover)pr#63704 <https://github.com/ceph/ceph/pull/63704>_, Zac Dover)pr#61884 <https://github.com/ceph/ceph/pull/61884>_, Anuradha Gadge, Zac Dover)pr#63207 <https://github.com/ceph/ceph/pull/63207>_, Zac Dover)pr#63200 <https://github.com/ceph/ceph/pull/63200>_, Zac Dover)pr#63743 <https://github.com/ceph/ceph/pull/63743>_, Zac Dover)pr#63689 <https://github.com/ceph/ceph/pull/63689>_, Zac Dover)pr#63538 <https://github.com/ceph/ceph/pull/63538>_, Zac Dover)pr#63315 <https://github.com/ceph/ceph/pull/63315>_, Zac Dover)pr#63393 <https://github.com/ceph/ceph/pull/63393>_, Zac Dover)pr#63423 <https://github.com/ceph/ceph/pull/63423>_, Zac Dover)pr#63396 <https://github.com/ceph/ceph/pull/63396>_, Zac Dover)pr#63507 <https://github.com/ceph/ceph/pull/63507>_, Zac Dover)pr#63454 <https://github.com/ceph/ceph/pull/63454>_, Zac Dover)pr#63510 <https://github.com/ceph/ceph/pull/63510>_, Zac Dover)pr#63680 <https://github.com/ceph/ceph/pull/63680>_, Zac Dover)pr#63513 <https://github.com/ceph/ceph/pull/63513>_, Zac Dover)pr#63669 <https://github.com/ceph/ceph/pull/63669>_, Zac Dover)pr#63550 <https://github.com/ceph/ceph/pull/63550>_, Zac Dover)pr#63492 <https://github.com/ceph/ceph/pull/63492>_, Zac Dover)pr#63666 <https://github.com/ceph/ceph/pull/63666>_, Zac Dover)pr#63577 <https://github.com/ceph/ceph/pull/63577>_, Zac Dover)pr#63402 <https://github.com/ceph/ceph/pull/63402>_, Zac Dover)pr#63663 <https://github.com/ceph/ceph/pull/63663>_, Zac Dover)pr#63580 <https://github.com/ceph/ceph/pull/63580>_, Zac Dover)pr#63583 <https://github.com/ceph/ceph/pull/63583>_, Zac Dover)pr#63657 <https://github.com/ceph/ceph/pull/63657>_, Zac Dover)pr#63586 <https://github.com/ceph/ceph/pull/63586>_, Zac Dover)pr#63589 <https://github.com/ceph/ceph/pull/63589>_, Zac Dover)pr#63592 <https://github.com/ceph/ceph/pull/63592>_, Zac Dover)pr#63611 <https://github.com/ceph/ceph/pull/63611>_, Zac Dover)pr#63768 <https://github.com/ceph/ceph/pull/63768>_, Zac Dover)pr#63771 <https://github.com/ceph/ceph/pull/63771>_, Zac Dover)pr#63774 <https://github.com/ceph/ceph/pull/63774>_, Zac Dover)pr#63777 <https://github.com/ceph/ceph/pull/63777>_, Zac Dover)pr#63905 <https://github.com/ceph/ceph/pull/63905>_, Zac Dover)pr#63864 <https://github.com/ceph/ceph/pull/63864>_, Zac Dover)pr#63692 <https://github.com/ceph/ceph/pull/63692>_, Zac Dover)pr#63867 <https://github.com/ceph/ceph/pull/63867>_, Zac Dover)pr#62930 <https://github.com/ceph/ceph/pull/62930>_, Anthony D'Atri)pr#63625 <https://github.com/ceph/ceph/pull/63625>_, Ville Ojamo)pr#63541 <https://github.com/ceph/ceph/pull/63541>_, Zac Dover)pr#62265 <https://github.com/ceph/ceph/pull/62265>_, Anthony D'Atri)pr#62290 <https://github.com/ceph/ceph/pull/62290>_, Dan van der Ster)pr#62620 <https://github.com/ceph/ceph/pull/62620>_, Anthony D'Atri)pr#63942 <https://github.com/ceph/ceph/pull/63942>_, Anthony D'Atri)pr#61006 <https://github.com/ceph/ceph/pull/61006>_, Kamoltat Sirivadhna)upmap_max_deviation setting … (pr#64118 <https://github.com/ceph/ceph/pull/64118>_, Niklas Hambüchen)pr#63535 <https://github.com/ceph/ceph/pull/63535>_, Anthony D'Atri)pr#63649 <https://github.com/ceph/ceph/pull/63649>_, Anthony D'Atri)pr#63849 <https://github.com/ceph/ceph/pull/63849>_, Anthony D'Atri, Zac Dover)pr#62077 <https://github.com/ceph/ceph/pull/62077>_, Anthony D'Atri)pr#63958 <https://github.com/ceph/ceph/pull/63958>_, Ville Ojamo)pr#62317 <https://github.com/ceph/ceph/pull/62317>_, Anthony D'Atri)pr#62573 <https://github.com/ceph/ceph/pull/62573>_, Anthony D'Atri)pr#63646 <https://github.com/ceph/ceph/pull/63646>_, Anthony D'Atri)pr#61728 <https://github.com/ceph/ceph/pull/61728>_, Anthony D'Atri)pr#63815 <https://github.com/ceph/ceph/pull/63815>_, Anthony D'Atri)pr#63830 <https://github.com/ceph/ceph/pull/63830>_, Zac Dover)pr#62320 <https://github.com/ceph/ceph/pull/62320>_, Anthony D'Atri)pr#63683 <https://github.com/ceph/ceph/pull/63683>_, Zac Dover)pr#63861 <https://github.com/ceph/ceph/pull/63861>_, Zac Dover)pr#63504 <https://github.com/ceph/ceph/pull/63504>_, Zac Dover)pr#62056 <https://github.com/ceph/ceph/pull/62056>_, Zac Dover)pr#61523 <https://github.com/ceph/ceph/pull/61523>_, Ilya Dryomov)pr#63498 <https://github.com/ceph/ceph/pull/63498>_, Zac Dover)pr#63071 <https://github.com/ceph/ceph/pull/63071>_, Sridhar Seshasayee)pr#62404 <https://github.com/ceph/ceph/pull/62404>_, Laimis Juzeliunas)pr#64021 <https://github.com/ceph/ceph/pull/64021>_, Hyun Jin Kim)pr#62834 <https://github.com/ceph/ceph/pull/62834>_, Laimis Juzeliunas)pr#61437 <https://github.com/ceph/ceph/pull/61437>_, Laimis Juzeliunas)pr#61308 <https://github.com/ceph/ceph/pull/61308>_, Anthony D'Atri)pr#64139 <https://github.com/ceph/ceph/pull/64139>_, Zac Dover)pr#63229 <https://github.com/ceph/ceph/pull/63229>_, Ville Ojamo)pr#63448 <https://github.com/ceph/ceph/pull/63448>_, Ville Ojamo)pr#64058 <https://github.com/ceph/ceph/pull/64058>_, Ville Ojamo)pr#64024 <https://github.com/ceph/ceph/pull/64024>_, Zac Dover)pr#63700 <https://github.com/ceph/ceph/pull/63700>_, Zac Dover)pr#62989 <https://github.com/ceph/ceph/pull/62989>_, Ville Ojamo)pr#64113 <https://github.com/ceph/ceph/pull/64113>_, Zac Dover)pr#62909 <https://github.com/ceph/ceph/pull/62909>_, Ville Ojamo)pr#62666 <https://github.com/ceph/ceph/pull/62666>_, Anthony D'Atri)pr#62999 <https://github.com/ceph/ceph/pull/62999>_, Anthony D'Atri)pr#62449 <https://github.com/ceph/ceph/pull/62449>_, Anthony D'Atri)pr#63915 <https://github.com/ceph/ceph/pull/63915>_, Ville Ojamo)pr#62856 <https://github.com/ceph/ceph/pull/62856>_, Ville Ojamo)pr#64126 <https://github.com/ceph/ceph/pull/64126>_, Zac Dover)pr#64155 <https://github.com/ceph/ceph/pull/64155>_, Zac Dover)pr#61556 <https://github.com/ceph/ceph/pull/61556>_, Zac Dover)pr#64095 <https://github.com/ceph/ceph/pull/64095>_, Zac Dover)pr#63311 <https://github.com/ceph/ceph/pull/63311>_, Ville Ojamo)pr#63846 <https://github.com/ceph/ceph/pull/63846>_, Zac Dover)pr#61605 <https://github.com/ceph/ceph/pull/61605>_, Ilya Dryomov)pr#61359 <https://github.com/ceph/ceph/pull/61359>_, Zac Dover)pr#62192 <https://github.com/ceph/ceph/pull/62192>_, Anthony D'Atri)pr#61988 <https://github.com/ceph/ceph/pull/61988>_, Zac Dover)pr#63996 <https://github.com/ceph/ceph/pull/63996>_, J. Eric Ivancich)pr#63728 <https://github.com/ceph/ceph/pull/63728>_, Matan Breizman, J. Eric Ivancich)pr#61986 <https://github.com/ceph/ceph/pull/61986>_, Casey Bodley)pr#62881 <https://github.com/ceph/ceph/pull/62881>_, Casey Bodley)pr#61333 <https://github.com/ceph/ceph/pull/61333>_, Casey Bodley)pr#63441 <https://github.com/ceph/ceph/pull/63441>_, Casey Bodley)pr#63955 <https://github.com/ceph/ceph/pull/63955>_, Zac Dover)pr#63652 <https://github.com/ceph/ceph/pull/63652>_, Zac Dover)pr#63707 <https://github.com/ceph/ceph/pull/63707>_, Zac Dover)pr#61926 <https://github.com/ceph/ceph/pull/61926>_, Anthony D'Atri)pr#61246 <https://github.com/ceph/ceph/pull/61246>_, Neeraj Pratap Singh)pr#61730 <https://github.com/ceph/ceph/pull/61730>_, Anthony D'Atri)pr#63250 <https://github.com/ceph/ceph/pull/63250>_, Jos Collin)pr#62004 <https://github.com/ceph/ceph/pull/62004>_, Toshikuni Fukaya)pr#63337 <https://github.com/ceph/ceph/pull/63337>_, Ville Ojamo)pr#62297 <https://github.com/ceph/ceph/pull/62297>_, dawg)pr#61342 <https://github.com/ceph/ceph/pull/61342>_, Vallari Agrawal)pr#64033 <https://github.com/ceph/ceph/pull/64033>_, Pedro Gonzalez Gomez, Zac Dover)pr#61641 <https://github.com/ceph/ceph/pull/61641>_, Anthony D'Atri)pr#63108 <https://github.com/ceph/ceph/pull/63108>_, Jos Collin)pr#61931 <https://github.com/ceph/ceph/pull/61931>_, David Galloway)pr#64049 <https://github.com/ceph/ceph/pull/64049>_, mertsunacoglu, Emin)issue#70287 <http://tracker.ceph.com/issues/70287>, issue#69791 <http://tracker.ceph.com/issues/69791>, issue#70225 <http://tracker.ceph.com/issues/70225>, issue#70584 <http://tracker.ceph.com/issues/70584>, pr#63241 <https://github.com/ceph/ceph/pull/63241>_, Venky Shankar, Jos Collin)pr#64097 <https://github.com/ceph/ceph/pull/64097>_, Kefu Chai)pr#64196 <https://github.com/ceph/ceph/pull/64196>_, Ilya Dryomov)pr#63406 <https://github.com/ceph/ceph/pull/63406>_, Ilya Dryomov, Effi Ofer, Or Ozeri)pr#62130 <https://github.com/ceph/ceph/pull/62130>_, Ilya Dryomov, Vinay Bhaskar Varada)pr#61527 <https://github.com/ceph/ceph/pull/61527>_, Ilya Dryomov)pr#62968 <https://github.com/ceph/ceph/pull/62968>_, Ilya Dryomov)pr#62044 <https://github.com/ceph/ceph/pull/62044>_, Ilya Dryomov, N Balachandran)pr#62128 <https://github.com/ceph/ceph/pull/62128>_, Ilya Dryomov)pr#61832 <https://github.com/ceph/ceph/pull/61832>_, Ilya Dryomov)pr#62963 <https://github.com/ceph/ceph/pull/62963>_, Ilya Dryomov)pr#61645 <https://github.com/ceph/ceph/pull/61645>_, Ilya Dryomov)pr#61287 <https://github.com/ceph/ceph/pull/61287>_, Patrick Donnelly)pr#62213 <https://github.com/ceph/ceph/pull/62213>_, Nitzan Mordechai)pr#60837 <https://github.com/ceph/ceph/pull/60837>_, Max Kellermann)pr#60836 <https://github.com/ceph/ceph/pull/60836>_, Zhansong Gao)issue#63259 <http://tracker.ceph.com/issues/63259>, pr#60688 <https://github.com/ceph/ceph/pull/60688>, Venky Shankar)pr#59518 <https://github.com/ceph/ceph/pull/59518>_, Patrick Donnelly)pr#59866 <https://github.com/ceph/ceph/pull/59866>_, Patrick Donnelly)pr#61994 <https://github.com/ceph/ceph/pull/61994>_, Igor Golikov)pr#60691 <https://github.com/ceph/ceph/pull/60691>_, Xiubo Li)pr#60752 <https://github.com/ceph/ceph/pull/60752>_, Christopher Hoffman)issue#68132 <http://tracker.ceph.com/issues/68132>, pr#60059 <https://github.com/ceph/ceph/pull/60059>, Venky Shankar)pr#59616 <https://github.com/ceph/ceph/pull/59616>_, Patrick Donnelly)pr#61840 <https://github.com/ceph/ceph/pull/61840>_, Xiubo Li, Sunnatillo)pr#60838 <https://github.com/ceph/ceph/pull/60838>_, Venky Shankar)pr#63853 <https://github.com/ceph/ceph/pull/63853>_, Redouane Kachach)pr#61969 <https://github.com/ceph/ceph/pull/61969>_, Afreen Misbah)pr#63477 <https://github.com/ceph/ceph/pull/63477>_, Naman Munet)pr#64132 <https://github.com/ceph/ceph/pull/64132>_, Afreen Misbah)pr#61039 <https://github.com/ceph/ceph/pull/61039>_, Nizamudeen A)pr#61998 <https://github.com/ceph/ceph/pull/61998>_, Tomer Haskalovitch)pr#62267 <https://github.com/ceph/ceph/pull/62267>_, Aashish Sharma)pr#62650 <https://github.com/ceph/ceph/pull/62650>_, Nizamudeen A)pr#62393 <https://github.com/ceph/ceph/pull/62393>_, Pedro Gonzalez Gomez)pr#61181 <https://github.com/ceph/ceph/pull/61181>_, Naman Munet)pr#62381 <https://github.com/ceph/ceph/pull/62381>_, Piyush Agarwal)pr#62382 <https://github.com/ceph/ceph/pull/62382>_, Piyush Agarwal)pr#62383 <https://github.com/ceph/ceph/pull/62383>_, Piyush Agarwal)pr#62384 <https://github.com/ceph/ceph/pull/62384>_, Piyush Agarwal)pr#61961 <https://github.com/ceph/ceph/pull/61961>_, Naman Munet)pr#63287 <https://github.com/ceph/ceph/pull/63287>_, John Mulligan, Afreen Misbah)pr#61972 <https://github.com/ceph/ceph/pull/61972>_, Naman Munet)pr#62623 <https://github.com/ceph/ceph/pull/62623>_, Nizamudeen A)pr#62731 <https://github.com/ceph/ceph/pull/62731>_, Afreen Misbah)pr#62531 <https://github.com/ceph/ceph/pull/62531>_, Aashish Sharma)pr#61238 <https://github.com/ceph/ceph/pull/61238>_, Aashish Sharma)pr#63187 <https://github.com/ceph/ceph/pull/63187>_, John Mulligan, Afreen Misbah)pr#61189 <https://github.com/ceph/ceph/pull/61189>_, Naman Munet)pr#61457 <https://github.com/ceph/ceph/pull/61457>_, Aashish Sharma)pr#62208 <https://github.com/ceph/ceph/pull/62208>_, Juan Ferrer Toribio)pr#61999 <https://github.com/ceph/ceph/pull/61999>_, Tomer Haskalovitch)pr#62257 <https://github.com/ceph/ceph/pull/62257>_, Nizamudeen A)pr#61235 <https://github.com/ceph/ceph/pull/61235>_, Aashish Sharma)pr#62628 <https://github.com/ceph/ceph/pull/62628>_, Nizamudeen A)pr#62353 <https://github.com/ceph/ceph/pull/62353>_, Aashish Sharma)pr#58285 <https://github.com/ceph/ceph/pull/58285>_, Anoop C S, Ponnuvel Palaniyappan)pr#62965 <https://github.com/ceph/ceph/pull/62965>_, Ilya Dryomov)pr#60396 <https://github.com/ceph/ceph/pull/60396>_, Neeraj Pratap Singh)pr#62504 <https://github.com/ceph/ceph/pull/62504>_, Patrick Donnelly)pr#60562 <https://github.com/ceph/ceph/pull/60562>_, Rishabh Dave)pr#62086 <https://github.com/ceph/ceph/pull/62086>_, Hannes Baum)pr#57064 <https://github.com/ceph/ceph/pull/57064>_, Patrick Donnelly)pr#60629 <https://github.com/ceph/ceph/pull/60629>_, Kamoltat Sirivadhna)pr#62421 <https://github.com/ceph/ceph/pull/62421>_, Laura Flores)pr#58235 <https://github.com/ceph/ceph/pull/58235>_, Patrick Donnelly)pr#61069 <https://github.com/ceph/ceph/pull/61069>_, Prashant D)pr#61603 <https://github.com/ceph/ceph/pull/61603>_, Ilya Dryomov)pr#61346 <https://github.com/ceph/ceph/pull/61346>_, Yite Gu)pr#63341 <https://github.com/ceph/ceph/pull/63341>_, Aishwarya Mathuria)fs set down to adjust max_mds only when cluster is not down (pr#59704 <https://github.com/ceph/ceph/pull/59704>_, chungfengz)pr#62625 <https://github.com/ceph/ceph/pull/62625>_, Aashish Sharnma)ceph orch hardware status cmd (pr#63787 <https://github.com/ceph/ceph/pull/63787>_, Guillaume Abrioux)pr#61363 <https://github.com/ceph/ceph/pull/61363>_, Radoslaw Zarzynski)pr#60543 <https://github.com/ceph/ceph/pull/60543>_, Adam Kupczyk)pr#61910 <https://github.com/ceph/ceph/pull/61910>_, Adam Kupczyk)pr#59497 <https://github.com/ceph/ceph/pull/59497>_, tan changzhi)pr#61671 <https://github.com/ceph/ceph/pull/61671>_, Adam Kupczyk)pr#62143 <https://github.com/ceph/ceph/pull/62143>_, Igor Fedotov, Adam Kupczyk)pr#62202 <https://github.com/ceph/ceph/pull/62202>_, Igor Fedotov)pr#61111 <https://github.com/ceph/ceph/pull/61111>_, Adam Kupczyk)pr#62053 <https://github.com/ceph/ceph/pull/62053>, Adam Kupczyk)pr#62839 <https://github.com/ceph/ceph/pull/62839>_, Adam Kupczyk)pr#61891 <https://github.com/ceph/ceph/pull/61891>, Wang Linke)pr#60240 <https://github.com/ceph/ceph/pull/60240>_, Adam Kupczyk, Igor Fedotov)pr#62514 <https://github.com/ceph/ceph/pull/62514>_, Igor Fedotov)pr#60613 <https://github.com/ceph/ceph/pull/60613>_, Casey Bodley)pr#62802 <https://github.com/ceph/ceph/pull/62802>_, Sridhar Seshasayee)pr#62956 <https://github.com/ceph/ceph/pull/62956>_, Ronen Friedman)pr#62995 <https://github.com/ceph/ceph/pull/62995>_, Ronen Friedman)pr#64073 <https://github.com/ceph/ceph/pull/64073>_, Ronen Friedman)pr#61935 <https://github.com/ceph/ceph/pull/61935>_, Ronen Friedman)pr#61185 <https://github.com/ceph/ceph/pull/61185>_, Ronen Friedman)pr#57613 <https://github.com/ceph/ceph/pull/57613>_, Md Mahamudur Rahaman Sajib)pr#62363 <https://github.com/ceph/ceph/pull/62363>_, Samuel Just)pr#57586 <https://github.com/ceph/ceph/pull/57586>_, Samuel Just, Nitzan Mordechai, Matan Breizman, jiawd)pr#61337 <https://github.com/ceph/ceph/pull/61337>_, Dongdong Tao)pr#62400 <https://github.com/ceph/ceph/pull/62400>_, Md Mahamudur Rahaman Sajib)pr#63154 <https://github.com/ceph/ceph/pull/63154>_, Nitzan Mordechai)pr#62327 <https://github.com/ceph/ceph/pull/62327>_, Nitzan Mordechai)pr#62467 <https://github.com/ceph/ceph/pull/62467>_, Laura Flores)pr#62437 <https://github.com/ceph/ceph/pull/62437>_, Michael J. Kidd)pr#59005 <https://github.com/ceph/ceph/pull/59005>_, Neeraj Pratap Singh)pr#61854 <https://github.com/ceph/ceph/pull/61854>_, Patrick Donnelly)pr#57189 <https://github.com/ceph/ceph/pull/57189>_, Patrick Donnelly)pr#63911 <https://github.com/ceph/ceph/pull/63911>_, John Mulligan, Avan Thakkar)pr#59698 <https://github.com/ceph/ceph/pull/59698>_, Nizamudeen A, Ernesto Puerta)pr#62306 <https://github.com/ceph/ceph/pull/62306>_, Shilpa Jagannath, Adam C. Emerson)pr#61281 <https://github.com/ceph/ceph/pull/61281>_, Aishwarya Mathuria)pr#61023 <https://github.com/ceph/ceph/pull/61023>_, Casey Bodley)pr#63928 <https://github.com/ceph/ceph/pull/63928>_, Casey Bodley)pr#62033 <https://github.com/ceph/ceph/pull/62033>_, Casey Bodley)pr#64227 <https://github.com/ceph/ceph/pull/64227>_, Mark Kogan, Adam C. Emerson)pr#62365 <https://github.com/ceph/ceph/pull/62365>_, Casey Bodley)pr#62954 <https://github.com/ceph/ceph/pull/62954>_, Casey Bodley)pr#61475 <https://github.com/ceph/ceph/pull/61475>_, Shraddha Agrawal, Naveen Naidu)pr#62974 <https://github.com/ceph/ceph/pull/62974>_, Ronen Friedman)pr#61118 <https://github.com/ceph/ceph/pull/61118>_, Ronen Friedman)pr#63054 <https://github.com/ceph/ceph/pull/63054>_, Shraddha Agrawal)pr#60912 <https://github.com/ceph/ceph/pull/60912>_, Matan Breizman, Laura Flores)pr#61335 <https://github.com/ceph/ceph/pull/61335>_, Ilya Dryomov, Pere Diaz Bou)pr#60375 <https://github.com/ceph/ceph/pull/60375>_, Mohit Agrawal)pr#59245 <https://github.com/ceph/ceph/pull/59245>_, Laura Flores)pr#63718 <https://github.com/ceph/ceph/pull/63718>_, Nitzan Mordechai)pr#60651 <https://github.com/ceph/ceph/pull/60651>_, Neeraj Pratap Singh)pr#61864 <https://github.com/ceph/ceph/pull/61864>_, Laura Flores)pr#61435 <https://github.com/ceph/ceph/pull/61435>_, Christopher Hoffman, Ilya Dryomov)pr#59191 <https://github.com/ceph/ceph/pull/59191>_, Nitzan Mordechai)pr#61496 <https://github.com/ceph/ceph/pull/61496>_, Laura Flores)pr#62219 <https://github.com/ceph/ceph/pull/62219>_, Ilya Dryomov)pr#60618 <https://github.com/ceph/ceph/pull/60618>_, Brad Hubbard)pr#59327 <https://github.com/ceph/ceph/pull/59327>_, Tobias Urdin)fs volume ls (pr#59919 <https://github.com/ceph/ceph/pull/59919>_, Milind Changire)pr#60181 <https://github.com/ceph/ceph/pull/60181>_, Jos Collin)pr#60835 <https://github.com/ceph/ceph/pull/60835>_, Xiubo Li)pr#60975 <https://github.com/ceph/ceph/pull/60975>_, Jos Collin)issue#67408 <http://tracker.ceph.com/issues/67408>, pr#59685 <https://github.com/ceph/ceph/pull/59685>, Venky Shankar)pr#62395 <https://github.com/ceph/ceph/pull/62395>_, Shraddha Agrawal)pr#60980 <https://github.com/ceph/ceph/pull/60980>_, Casey Bodley)pr#60979 <https://github.com/ceph/ceph/pull/60979>_, Casey Bodley)pr#60982 <https://github.com/ceph/ceph/pull/60982>_, Casey Bodley)pr#62155 <https://github.com/ceph/ceph/pull/62155>_, Casey Bodley)pr#62042 <https://github.com/ceph/ceph/pull/62042>_, N Balachandran)pr#64092 <https://github.com/ceph/ceph/pull/64092>_, VinayBhaskar-V)pr#62940 <https://github.com/ceph/ceph/pull/62940>_, N Balachandran)pr#61170 <https://github.com/ceph/ceph/pull/61170>_, Ilya Dryomov)pr#61162 <https://github.com/ceph/ceph/pull/61162>_, Casey Bodley, Pritha Srivastava)pr#63405 <https://github.com/ceph/ceph/pull/63405>_, Seena Fallah)pr#61134 <https://github.com/ceph/ceph/pull/61134>_, Casey Bodley, Artem Vasilev)pr#62337 <https://github.com/ceph/ceph/pull/62337>_, Yuval Lifshitz, Casey Bodley)pr#63438 <https://github.com/ceph/ceph/pull/63438>_, Mark Kogan)pr#62435 <https://github.com/ceph/ceph/pull/62435>_, Casey Bodley)pr#62892 <https://github.com/ceph/ceph/pull/62892>_, Pritha Srivastava)pr#60783 <https://github.com/ceph/ceph/pull/60783>_, Juan Zhu)pr#61484 <https://github.com/ceph/ceph/pull/61484>_, lightmelodies)pr#62134 <https://github.com/ceph/ceph/pull/62134>_, kchheda3)pr#62310 <https://github.com/ceph/ceph/pull/62310>_, Shilpa Jagannath, Adam C. Emerson)pr#61330 <https://github.com/ceph/ceph/pull/61330>_, Adam Emerson)pr#62307 <https://github.com/ceph/ceph/pull/62307>_, Shilpa Jagannath, Adam C. Emerson)pr#60784 <https://github.com/ceph/ceph/pull/60784>_, Yuval Lifshitz, kchheda3)pr#62495 <https://github.com/ceph/ceph/pull/62495>_, kchheda3)pr#61242 <https://github.com/ceph/ceph/pull/61242>_, kchheda3)pr#61147 <https://github.com/ceph/ceph/pull/61147>_, Casey Bodley)pr#62093 <https://github.com/ceph/ceph/pull/62093>_, Casey Bodley, Samuel Just)pr#63363 <https://github.com/ceph/ceph/pull/63363>_, Xuehan Xu)pr#60952 <https://github.com/ceph/ceph/pull/60952>_, Igor Gomon)pr#62526 <https://github.com/ceph/ceph/pull/62526>_, Casey Bodley)pr#62959 <https://github.com/ceph/ceph/pull/62959>_, Gal Salomon, Seena Fallah, J. Eric Ivancich, galsalomon66)pr#63065 <https://github.com/ceph/ceph/pull/63065>_, Pritha Srivastava)pr#63052 <https://github.com/ceph/ceph/pull/63052>_, Pritha Srivastava)pr#62386 <https://github.com/ceph/ceph/pull/62386>_, Pritha Srivastava)pr#62131 <https://github.com/ceph/ceph/pull/62131>_, Casey Bodley)pr#61430 <https://github.com/ceph/ceph/pull/61430>_, Casey Bodley)pr#62748 <https://github.com/ceph/ceph/pull/62748>_, J. Eric Ivancich)pr#61546 <https://github.com/ceph/ceph/pull/61546>_, Andrei Ivashchenko)accounts user caps (pr#61782 <https://github.com/ceph/ceph/pull/61782>_, Richard Poole)pr#61764 <https://github.com/ceph/ceph/pull/61764>_, Hoai-Thu Vuong)pr#61159 <https://github.com/ceph/ceph/pull/61159>_, Seena Fallah)pr#62420 <https://github.com/ceph/ceph/pull/62420>_, Seena Fallah, Shilpa Jagannath)pr#63710 <https://github.com/ceph/ceph/pull/63710>_, Artem Vasilev)pr#62741 <https://github.com/ceph/ceph/pull/62741>_, Jane Zhu)pr#61062 <https://github.com/ceph/ceph/pull/61062>_, Shasha Lu)pr#62309 <https://github.com/ceph/ceph/pull/62309>_, Shilpa Jagannath, Adam C. Emerson, Kalpesh Pandya)pr#61306 <https://github.com/ceph/ceph/pull/61306>_, Adam Emerson)pr#64387 <https://github.com/ceph/ceph/pull/64387>_, Casey Bodley)pr#62305 <https://github.com/ceph/ceph/pull/62305>_, Seena Fallah, Adam C. Emerson)pr#61532 <https://github.com/ceph/ceph/pull/61532>_, Soumya Koduri)pr#61051 <https://github.com/ceph/ceph/pull/61051>_, Yehuda Sadeh)pr#62722 <https://github.com/ceph/ceph/pull/62722>_, J. Eric Ivancich, Michael J. Kidd)pr#61092 <https://github.com/ceph/ceph/pull/61092>_, Shasha Lu)pr#61995 <https://github.com/ceph/ceph/pull/61995>_, Soumya Koduri, Pritha Srivastava, Wei Wang)pr#62586 <https://github.com/ceph/ceph/pull/62586>_, Alexey Odinokov)pr#60785 <https://github.com/ceph/ceph/pull/60785>_, Alex Wojno, Casey Bodley)pr#62711 <https://github.com/ceph/ceph/pull/62711>_, Jane Zhu)pr#63193 <https://github.com/ceph/ceph/pull/63193>_, Jane Zhu)radosgw-admin bucket object shard ... (pr#62884 <https://github.com/ceph/ceph/pull/62884>_, J. Eric Ivancich)pr#62064 <https://github.com/ceph/ceph/pull/62064>_, Casey Bodley)pr#62417 <https://github.com/ceph/ceph/pull/62417>_, J. Eric Ivancich)pr#61161 <https://github.com/ceph/ceph/pull/61161>_, Seena Fallah)pr#62740 <https://github.com/ceph/ceph/pull/62740>_, Jane Zhu, Juan Zhu)pr#62559 <https://github.com/ceph/ceph/pull/62559>_, Casey Bodley)pr#61431 <https://github.com/ceph/ceph/pull/61431>_, Simon Jürgensmeyer)pr#62994 <https://github.com/ceph/ceph/pull/62994>_, Seena Fallah)pr#62356 <https://github.com/ceph/ceph/pull/62356>_, Oguzhan Ozmen, Casey Bodley)pr#62402 <https://github.com/ceph/ceph/pull/62402>_, Adam C. Emerson)pr#62154 <https://github.com/ceph/ceph/pull/62154>_, Casey Bodley)pr#62034 <https://github.com/ceph/ceph/pull/62034>_, kchheda3)pr#62534 <https://github.com/ceph/ceph/pull/62534>_, Casey Bodley, Ali Masarwa)pr#61869 <https://github.com/ceph/ceph/pull/61869>_, Matan Breizman)strict_iec_cast (pr#60581 <https://github.com/ceph/ceph/pull/60581>_, Neeraj Pratap Singh)pr#62502 <https://github.com/ceph/ceph/pull/62502>_, Zac Dover)pr#61331 <https://github.com/ceph/ceph/pull/61331>_, Anthony D'Atri)pr#61419 <https://github.com/ceph/ceph/pull/61419>_, Zac Dover)pr#62039 <https://github.com/ceph/ceph/pull/62039>_, Kamoltat Sirivadhna)pr#62211 <https://github.com/ceph/ceph/pull/62211>_, Nitzan Mordechai)pr#62311 <https://github.com/ceph/ceph/pull/62311>_, Yuval Lifshitz, Adam C. Emerson)pr#63720 <https://github.com/ceph/ceph/pull/63720>_, batrick)pr#62752 <https://github.com/ceph/ceph/pull/62752>_, Ilya Dryomov)pr#61110 <https://github.com/ceph/ceph/pull/61110>_, Nitzan Mordechai)pr#61377 <https://github.com/ceph/ceph/pull/61377>_, Paulo E. Castro)pr#61960 <https://github.com/ceph/ceph/pull/61960>_, Ilya Dryomov)pr#61958 <https://github.com/ceph/ceph/pull/61958>_, Ilya Dryomov)pr#60978 <https://github.com/ceph/ceph/pull/60978>_, Casey Bodley)pr#61088 <https://github.com/ceph/ceph/pull/61088>_, Ronen Friedman)pr#61482 <https://github.com/ceph/ceph/pull/61482>_, Nitzan Mordechai)pr#58919 <https://github.com/ceph/ceph/pull/58919>_, Mohit Agrawal)pr#59625 <https://github.com/ceph/ceph/pull/59625>_, Nitzan Mordechai)pr#60902 <https://github.com/ceph/ceph/pull/60902>_, Mohit Agrawal)pr#62125 <https://github.com/ceph/ceph/pull/62125>_, Igor Fedotov)pr#62123 <https://github.com/ceph/ceph/pull/62123>_, Igor Fedotov)pr#61100 <https://github.com/ceph/ceph/pull/61100>_, Igor Fedotov)pr#60861 <https://github.com/ceph/ceph/pull/60861>_, Pere Diaz Bou)pr#58732 <https://github.com/ceph/ceph/pull/58732>_, Pere Diaz Bou)pr#60687 <https://github.com/ceph/ceph/pull/60687>_, Adam Kupczyk)pr#61631 <https://github.com/ceph/ceph/pull/61631>_, Lucian Petrut)pr#61011 <https://github.com/ceph/ceph/pull/61011>_, NitzanMordhai)This is the second hotfix release in the Squid series. We recommend that all users update to this release.
.. warning:: Upgrade to Squid v19.2.2. Do not upgrade to Squid v19.2.1.
April 10, 2025
pr#62711 <https://github.com/ceph/ceph/pull/62711>_, cbodley)This is the first backport release in the Squid series.
.. warning:: Do not upgrade to Squid v19.2.1. Upgrade instead to Squid v19.2.2.
February 6, 2025
CephFS: The command fs subvolume create now allows tagging subvolumes by supplying the option
--earmark with a unique identifier needed for NFS or SMB services. The earmark
string for a subvolume is empty by default. To remove an already present earmark,
an empty string can be assigned to it. Additionally, the commands
ceph fs subvolume earmark set, ceph fs subvolume earmark get, and
ceph fs subvolume earmark rm have been added to set, get and remove earmark from a given subvolume.
CephFS: Expanded removexattr support for CephFS virtual extended attributes. Previously one had to use setxattr to restore the default in order to "remove". You may now properly use removexattr to remove. You can also now remove layout on the root inode, which then will restore the layout to the default.
RADOS: A performance bottleneck in the balancer mgr module has been fixed.
Related Tracker: https://tracker.ceph.com/issues/68657
RADOS: Based on tests performed at scale on an HDD-based Ceph cluster, it was found that scheduling with mClock was not optimal with multiple OSD shards. For example, in the test cluster with multiple OSD node failures, the client throughput was found to be inconsistent across test runs coupled with multiple reported slow requests. However, the same test with a single OSD shard and with multiple worker threads yielded significantly better results in terms of consistency of client and recovery throughput across multiple test runs. Therefore, as an interim measure until the issue with multiple OSD shards (or multiple mClock queues per OSD) is investigated and fixed, the following change to the default HDD OSD shard configuration is made:
osd_op_num_shards_hdd = 1 (was 5)osd_op_num_threads_per_shard_hdd = 5 (was 1)For more details, see https://tracker.ceph.com/issues/66289.
mgr/REST: The REST manager module will trim requests based on the 'max_requests' option. Without this feature, and in the absence of manual deletion of old requests, the accumulation of requests in the array can lead to Out Of Memory (OOM) issues, resulting in the Manager crashing.
pr#60609 <https://github.com/ceph/ceph/pull/60609>_, Yuval Lifshitz)pr#59123 <https://github.com/ceph/ceph/pull/59123>_, liubingrun)pr#59065 <https://github.com/ceph/ceph/pull/59065>_, Adam Kupczyk, Joshua Baergen, Gabriel BenHanokh, Matt Vandermeulen)pr#60229 <https://github.com/ceph/ceph/pull/60229>_, Dan Mick)pr#60447 <https://github.com/ceph/ceph/pull/60447>_, Mohit Agrawal)pr#58676 <https://github.com/ceph/ceph/pull/58676>_, Yingxin Cheng, Igor Fedotov, Adam Kupczyk, Robin Geuze)pr#60616 <https://github.com/ceph/ceph/pull/60616>_, Yite Gu)pr#58816 <https://github.com/ceph/ceph/pull/58816>_, Rongqi Sun)pr#59967 <https://github.com/ceph/ceph/pull/59967>_, Adam Kupczyk, Igor Fedotov)ceph-bluestore-tool zap-device (pr#59968 <https://github.com/ceph/ceph/pull/59968>_, Guillaume Abrioux)pr#60091 <https://github.com/ceph/ceph/pull/60091>_, Guillaume Abrioux)pr#59196 <https://github.com/ceph/ceph/pull/59196>_, Guillaume Abrioux)pr#58954 <https://github.com/ceph/ceph/pull/58954>_, Guillaume Abrioux)pr#58964 <https://github.com/ceph/ceph/pull/58964>_, Guillaume Abrioux, Igor Fedotov)get_single_lv() (pr#60353 <https://github.com/ceph/ceph/pull/60353>_, Guillaume Abrioux)pr#60734 <https://github.com/ceph/ceph/pull/60734>_, Guillaume Abrioux)pr#59598 <https://github.com/ceph/ceph/pull/59598>_, Guillaume Abrioux)pr#59953 <https://github.com/ceph/ceph/pull/59953>_, Guillaume Abrioux)pr#59622 <https://github.com/ceph/ceph/pull/59622>_, Guillaume Abrioux)pr#59623 <https://github.com/ceph/ceph/pull/59623>_, Guillaume Abrioux)pr#60075 <https://github.com/ceph/ceph/pull/60075>_, Kyr Shatskyy)pr#58381 <https://github.com/ceph/ceph/pull/58381>_, Bernard Landon)pr#60880 <https://github.com/ceph/ceph/pull/60880>_, Shweta Bhosale)pr#59929 <https://github.com/ceph/ceph/pull/59929>_, Matthew Vernon)pr#58542 <https://github.com/ceph/ceph/pull/58542>_, John Mulligan)pr#60354 <https://github.com/ceph/ceph/pull/60354>_, Guillaume Abrioux)pr#59933 <https://github.com/ceph/ceph/pull/59933>_, Michal Nasiadka)pr#59827 <https://github.com/ceph/ceph/pull/59827>_, Adam King)pr#59672 <https://github.com/ceph/ceph/pull/59672>_, Rishabh Dave)pr#58810 <https://github.com/ceph/ceph/pull/58810>_, teng jie)pr#58804 <https://github.com/ceph/ceph/pull/58804>_, Tod Chen)pr#59070 <https://github.com/ceph/ceph/pull/59070>_, Jos Collin)pr#59406 <https://github.com/ceph/ceph/pull/59406>_, Jos Collin)pr#58984 <https://github.com/ceph/ceph/pull/58984>_, Jos Collin)pr#59487 <https://github.com/ceph/ceph/pull/59487>, Venky Shankar)pr#58587 <https://github.com/ceph/ceph/pull/58587>_, Yite Gu, Dhairya Parmar)pr#60164 <https://github.com/ceph/ceph/pull/60164>_, Casey Bodley)pr#60107 <https://github.com/ceph/ceph/pull/60107>_, Casey Bodley)pr#60660 <https://github.com/ceph/ceph/pull/60660>_, Sridhar Seshasayee)pr#59055 <https://github.com/ceph/ceph/pull/59055>_, Radoslaw Zarzynski)pr#59973 <https://github.com/ceph/ceph/pull/59973>_, Sridhar Seshasayee)pr#58923 <https://github.com/ceph/ceph/pull/58923>_, NitzanMordhai)pr#58957 <https://github.com/ceph/ceph/pull/58957>_, Xuehan Xu)pr#58820 <https://github.com/ceph/ceph/pull/58820>_, Xuehan Xu)pr#58830 <https://github.com/ceph/ceph/pull/58830>_, Xuehan Xu)pr#58837 <https://github.com/ceph/ceph/pull/58837>_, Xuehan Xu)pr#59298 <https://github.com/ceph/ceph/pull/59298>_, Myoungwon Oh)pr#58828 <https://github.com/ceph/ceph/pull/58828>_, Myoungwon Oh)pr#58835 <https://github.com/ceph/ceph/pull/58835>_, Yingxin Cheng)pr#58958 <https://github.com/ceph/ceph/pull/58958>_, Xuehan Xu)pr#58841 <https://github.com/ceph/ceph/pull/58841>_, Samuel Just)pr#58839 <https://github.com/ceph/ceph/pull/58839>_, Samuel Just)pr#58905 <https://github.com/ceph/ceph/pull/58905>_, Matan Breizman, Samuel Just)pr#59202 <https://github.com/ceph/ceph/pull/59202>_, Kefu Chai, Thomas Lamprecht)pr#60338 <https://github.com/ceph/ceph/pull/60338>_, Patrick Donnelly)pr#59540 <https://github.com/ceph/ceph/pull/59540>_, Zac Dover)pr#59663 <https://github.com/ceph/ceph/pull/59663>_, Zac Dover)pr#60809 <https://github.com/ceph/ceph/pull/60809>_, Zac Dover)pr#60679 <https://github.com/ceph/ceph/pull/60679>_, Zac Dover)pr#60432 <https://github.com/ceph/ceph/pull/60432>_, Zac Dover)pr#59430 <https://github.com/ceph/ceph/pull/59430>_, Zac Dover)pr#60644 <https://github.com/ceph/ceph/pull/60644>_, Zac Dover)pr#60637 <https://github.com/ceph/ceph/pull/60637>_, rhkelson)pr#59148 <https://github.com/ceph/ceph/pull/59148>_, Zac Dover)pr#60496 <https://github.com/ceph/ceph/pull/60496>_, Rishabh Dave)pr#60467 <https://github.com/ceph/ceph/pull/60467>_, Zac Dover)pr#59021 <https://github.com/ceph/ceph/pull/59021>_, Zac Dover)pr#61080 <https://github.com/ceph/ceph/pull/61080>_, Zac Dover)pr#59250 <https://github.com/ceph/ceph/pull/59250>_, Zac Dover)pr#59214 <https://github.com/ceph/ceph/pull/59214>_, Zac Dover)pr#60435 <https://github.com/ceph/ceph/pull/60435>_, Indira Sawant)pr#59294 <https://github.com/ceph/ceph/pull/59294>_, Zac Dover)pr#59289 <https://github.com/ceph/ceph/pull/59289>_, Zac Dover)pr#60482 <https://github.com/ceph/ceph/pull/60482>_, TruongSinh Tran-Nguyen)pr#59062 <https://github.com/ceph/ceph/pull/59062>_, qn2060)pr#59813 <https://github.com/ceph/ceph/pull/59813>_, Yaarit Hatuka)pr#59812 <https://github.com/ceph/ceph/pull/59812>_, Neha Ojha)pr#60971 <https://github.com/ceph/ceph/pull/60971>_, Dan Mick)pr#59654 <https://github.com/ceph/ceph/pull/59654>_, Zac Dover)pr#61063 <https://github.com/ceph/ceph/pull/61063>_, Zac Dover)pr#60272 <https://github.com/ceph/ceph/pull/60272>_, Zac Dover)pr#60896 <https://github.com/ceph/ceph/pull/60896>_, Zac Dover)pr#59007 <https://github.com/ceph/ceph/pull/59007>_, Zac Dover)pr#60864 <https://github.com/ceph/ceph/pull/60864>_, Zac Dover)pr#59424 <https://github.com/ceph/ceph/pull/59424>_, Zac Dover)pr#60503 <https://github.com/ceph/ceph/pull/60503>_, Zac Dover)pr#60139 <https://github.com/ceph/ceph/pull/60139>_, Zac Dover)pr#60134 <https://github.com/ceph/ceph/pull/60134>_, Zac Dover)pr#59756 <https://github.com/ceph/ceph/pull/59756>_, hejindong)pr#59682 <https://github.com/ceph/ceph/pull/59682>_, Zac Dover)pr#59585 <https://github.com/ceph/ceph/pull/59585>_, Piotr Parczewski)pr#59031 <https://github.com/ceph/ceph/pull/59031>_, Mindy Preston)pr#59582 <https://github.com/ceph/ceph/pull/59582>_, Anthony D'Atri)pr#60824 <https://github.com/ceph/ceph/pull/60824>_, Anthony D'Atri)pr#59733 <https://github.com/ceph/ceph/pull/59733>_, Zac Dover)pr#60537 <https://github.com/ceph/ceph/pull/60537>_, Zac Dover)pr#59871 <https://github.com/ceph/ceph/pull/59871>_, Zac Dover)pr#59794 <https://github.com/ceph/ceph/pull/59794>_, Zac Dover)pr#59802 <https://github.com/ceph/ceph/pull/59802>_, Zac Dover)pr#60737 <https://github.com/ceph/ceph/pull/60737>_, Zac Dover)pr#59380 <https://github.com/ceph/ceph/pull/59380>_, Zac Dover)pr#60046 <https://github.com/ceph/ceph/pull/60046>_, Zac Dover)pr#60931 <https://github.com/ceph/ceph/pull/60931>_, Zac Dover)pr#60949 <https://github.com/ceph/ceph/pull/60949>_, Zac Dover)pr#60920 <https://github.com/ceph/ceph/pull/60920>_, Zac Dover)pr#60500 <https://github.com/ceph/ceph/pull/60500>_, Zac Dover)pr#60332 <https://github.com/ceph/ceph/pull/60332>_, Casey Bodley)pr#58874 <https://github.com/ceph/ceph/pull/58874>_, Feng, Hualong)pr#60852 <https://github.com/ceph/ceph/pull/60852>_, Anthony D'Atri)pr#60867 <https://github.com/ceph/ceph/pull/60867>_, Anthony D'Atri)pr#59578 <https://github.com/ceph/ceph/pull/59578>_, Anthony D'Atri)pr#59179 <https://github.com/ceph/ceph/pull/59179>_, Anthony D'Atri)pr#60707 <https://github.com/ceph/ceph/pull/60707>_, Zac Dover)pr#60885 <https://github.com/ceph/ceph/pull/60885>_, Zac Dover)pr#60269 <https://github.com/ceph/ceph/pull/60269>_, N Balachandran)pr#59798 <https://github.com/ceph/ceph/pull/59798>_, Zac Dover)pr#59834 <https://github.com/ceph/ceph/pull/59834>_, Zac Dover)pr#59637 <https://github.com/ceph/ceph/pull/59637>_, Zac Dover)pr#59785 <https://github.com/ceph/ceph/pull/59785>_, Zac Dover)pr#59700 <https://github.com/ceph/ceph/pull/59700>_, Zac Dover)pr#59491 <https://github.com/ceph/ceph/pull/59491>_, Oguzhan Ozmen)pr#59767 <https://github.com/ceph/ceph/pull/59767>_, Mark Kogan)pr#60662 <https://github.com/ceph/ceph/pull/60662>_, Yuval Lifshitz)pr#59233 <https://github.com/ceph/ceph/pull/59233>_, Yuval Lifshitz)pr#60557 <https://github.com/ceph/ceph/pull/60557>_, Zac Dover)pr#60461 <https://github.com/ceph/ceph/pull/60461>_, Zac Dover)pr#60708 <https://github.com/ceph/ceph/pull/60708>_, Zac Dover)pr#60698 <https://github.com/ceph/ceph/pull/60698>_, Zac Dover)pr#60766 <https://github.com/ceph/ceph/pull/60766>_, Zac Dover)pr#59559 <https://github.com/ceph/ceph/pull/59559>_, Matthew Vernon)pr#60033 <https://github.com/ceph/ceph/pull/60033>_, Lucian Petrut)pr#60671 <https://github.com/ceph/ceph/pull/60671>_, Niklas Hambüchen)pr#59078 <https://github.com/ceph/ceph/pull/59078>_, Neeraj Pratap Singh)pr#60525 <https://github.com/ceph/ceph/pull/60525>_, Jos Collin)pr#60233 <https://github.com/ceph/ceph/pull/60233>_, Ernesto Puerta)pr#59991 <https://github.com/ceph/ceph/pull/59991>_, N Balachandran)pr#59291 <https://github.com/ceph/ceph/pull/59291>_, Anthony D'Atri)pr#60593 <https://github.com/ceph/ceph/pull/60593>_, Zac Dover)pr#60297 <https://github.com/ceph/ceph/pull/60297>_, Zac Dover)pr#59907 <https://github.com/ceph/ceph/pull/59907>_, Matthew Vernon)pr#60343 <https://github.com/ceph/ceph/pull/60343>_, Jos Collin)pr#59939 <https://github.com/ceph/ceph/pull/59939>_, Avan Thakkar)pr#59548 <https://github.com/ceph/ceph/pull/59548>_, Vallari Agrawal)pr#60084 <https://github.com/ceph/ceph/pull/60084>_, Tobias Fischer)pr#59099 <https://github.com/ceph/ceph/pull/59099>_, Kamoltat Sirivadhna)pr#60127 <https://github.com/ceph/ceph/pull/60127>_, Adam Emerson)pr#59284 <https://github.com/ceph/ceph/pull/59284>_, Chen Yuanrun)pr#60171 <https://github.com/ceph/ceph/pull/60171>_, Ilya Dryomov)pr#59145 <https://github.com/ceph/ceph/pull/59145>_, Ilya Dryomov)pr#61095 <https://github.com/ceph/ceph/pull/61095>_, Ilya Dryomov)pr#59661 <https://github.com/ceph/ceph/pull/59661>_, Ilya Dryomov)pr#61168 <https://github.com/ceph/ceph/pull/61168>_, Ilya Dryomov)pr#60279 <https://github.com/ceph/ceph/pull/60279>_, Milind Changire)pr#60751 <https://github.com/ceph/ceph/pull/60751>_, shenjiatong)pr#58912 <https://github.com/ceph/ceph/pull/58912>_, junxiang Mu)pr#56887 <https://github.com/ceph/ceph/pull/56887>_, Dhairya Parmar)pr#59517 <https://github.com/ceph/ceph/pull/59517>_, Patrick Donnelly)pr#57494 <https://github.com/ceph/ceph/pull/57494>_, Xiubo Li)pr#58727 <https://github.com/ceph/ceph/pull/58727>_, Neeraj Pratap Singh)pr#59097 <https://github.com/ceph/ceph/pull/59097>_, Patrick Donnelly)pr#60718 <https://github.com/ceph/ceph/pull/60718>_, Laura Flores)pr#58515 <https://github.com/ceph/ceph/pull/58515>_, Bernard Landon)pr#59410 <https://github.com/ceph/ceph/pull/59410>_, Adam King)pr#59935 <https://github.com/ceph/ceph/pull/59935>_, Adam King)pr#59931 <https://github.com/ceph/ceph/pull/59931>_, Adam King)pr#58711 <https://github.com/ceph/ceph/pull/58711>_, Nizamudeen A)pr#59710 <https://github.com/ceph/ceph/pull/59710>_, Adam King)pr#58383 <https://github.com/ceph/ceph/pull/58383>_, Redouane Kachach)pr#60321 <https://github.com/ceph/ceph/pull/60321>_, Aashish Sharma)pr#59948 <https://github.com/ceph/ceph/pull/59948>_, Aashish Sharma)pr#58887 <https://github.com/ceph/ceph/pull/58887>_, NitzanMordhai)pr#60620 <https://github.com/ceph/ceph/pull/60620>_, Yite Gu)pr#59446 <https://github.com/ceph/ceph/pull/59446>_, Afreen Misbah)pr#59751 <https://github.com/ceph/ceph/pull/59751>_, Nizamudeen A)pr#60310 <https://github.com/ceph/ceph/pull/60310>_, Nizamudeen A)pr#59139 <https://github.com/ceph/ceph/pull/59139>_, sunlan)pr#58988 <https://github.com/ceph/ceph/pull/58988>_, Prachi Goel)pr#59951 <https://github.com/ceph/ceph/pull/59951>, Dnyaneshwari talwekar)pr#59879 <https://github.com/ceph/ceph/pull/59879>_, Pedro Gonzalez Gomez)pr#59038 <https://github.com/ceph/ceph/pull/59038>_, Aashish Sharma)pr#60078 <https://github.com/ceph/ceph/pull/60078>_, Afreen Misbah)pr#60466 <https://github.com/ceph/ceph/pull/60466>_, Nizamudeen A)pr#59140 <https://github.com/ceph/ceph/pull/59140>_, Nizamudeen A)pr#60154 <https://github.com/ceph/ceph/pull/60154>_, Pedro Gonzalez Gomez)pr#60231 <https://github.com/ceph/ceph/pull/60231>_, Aashish Sharma)pr#60348 <https://github.com/ceph/ceph/pull/60348>_, Nizamudeen A)pr#59961 <https://github.com/ceph/ceph/pull/59961>_, Aashish Sharma)pr#60378 <https://github.com/ceph/ceph/pull/60378>_, Pedro Gonzalez Gomez)pr#60292 <https://github.com/ceph/ceph/pull/60292>_, Afreen Misbah)pr#59970 <https://github.com/ceph/ceph/pull/59970>_, Aashish Sharma)pr#59995 <https://github.com/ceph/ceph/pull/59995>_, Dnyaneshwari Talwekar)pr#61096 <https://github.com/ceph/ceph/pull/61096>_, Afreen)pr#60311 <https://github.com/ceph/ceph/pull/60311>_, Nizamudeen A)pr#59717 <https://github.com/ceph/ceph/pull/59717>_, Afreen Misbah)pr#60294 <https://github.com/ceph/ceph/pull/60294>_, Nizamudeen A)pr#59811 <https://github.com/ceph/ceph/pull/59811>_, Afreen Misbah)pr#59965 <https://github.com/ceph/ceph/pull/59965>_, Naman Munet)pr#59900 <https://github.com/ceph/ceph/pull/59900>_, Dnyaneshwari Talwekar)pr#59819 <https://github.com/ceph/ceph/pull/59819>_, Afreen Misbah)pr#58638 <https://github.com/ceph/ceph/pull/58638>_, Aashish Sharma)pr#60632 <https://github.com/ceph/ceph/pull/60632>_, Nizamudeen A)pr#59851 <https://github.com/ceph/ceph/pull/59851>_, Naman Munet)pr#59721 <https://github.com/ceph/ceph/pull/59721>_, Aashish Sharma)pr#59825 <https://github.com/ceph/ceph/pull/59825>_, Naman Munet)pr#60604 <https://github.com/ceph/ceph/pull/60604>_, Nizamudeen A)pr#59760 <https://github.com/ceph/ceph/pull/59760>_, Naman Munet)pr#60232 <https://github.com/ceph/ceph/pull/60232>_, Aashish Sharma)pr#59597 <https://github.com/ceph/ceph/pull/59597>_, Aashish Sharma)pr#60346 <https://github.com/ceph/ceph/pull/60346>_, Naman Munet)pr#60356 <https://github.com/ceph/ceph/pull/60356>_, Dnyaneshwari Talwekar)pr#60293 <https://github.com/ceph/ceph/pull/60293>_, Naman Munet)pr#59718 <https://github.com/ceph/ceph/pull/59718>_, Afreen Misbah)pr#59964 <https://github.com/ceph/ceph/pull/59964>_, Aashish Sharma)pr#60367 <https://github.com/ceph/ceph/pull/60367>_, Nizamudeen A)pr#59722 <https://github.com/ceph/ceph/pull/59722>_, Aashish Sharma)pr#59693 <https://github.com/ceph/ceph/pull/59693>_, Dnyaneshwari Talwekar)pr#59596 <https://github.com/ceph/ceph/pull/59596>_, Aashish Sharma)pr#59892 <https://github.com/ceph/ceph/pull/59892>_, Naman Munet)pr#59896 <https://github.com/ceph/ceph/pull/59896>_, Avan Thakkar, avanthakkar, John Mulligan)pr#59473 <https://github.com/ceph/ceph/pull/59473>_, Yonatan Zaken)pr#59372 <https://github.com/ceph/ceph/pull/59372>_, Nitzan Mordechai)pr#59138 <https://github.com/ceph/ceph/pull/59138>_, Kritik Sachdeva)pr#59945 <https://github.com/ceph/ceph/pull/59945>_, Aashish Sharma)pr#59894 <https://github.com/ceph/ceph/pull/59894>_, Avan Thakkar)pr#60962 <https://github.com/ceph/ceph/pull/60962>_, Dan Mick)pr#58669 <https://github.com/ceph/ceph/pull/58669>_, Kamoltat)pr#59306 <https://github.com/ceph/ceph/pull/59306>_, Patrick Donnelly)pr#59402 <https://github.com/ceph/ceph/pull/59402>_, Matan Breizman)pr#55865 <https://github.com/ceph/ceph/pull/55865>_, Matan Breizman)pr#58914 <https://github.com/ceph/ceph/pull/58914>_, Mohit Agrawal)pr#58991 <https://github.com/ceph/ceph/pull/58991>_, Casey Bodley)pr#59997 <https://github.com/ceph/ceph/pull/59997>_, Guillaume Abrioux)pr#58482 <https://github.com/ceph/ceph/pull/58482>_, Guillaume Abrioux)pr#57819 <https://github.com/ceph/ceph/pull/57819>_, Nitzan Mordechai)pr#60486 <https://github.com/ceph/ceph/pull/60486>_, Guillaume Abrioux)pr#59863 <https://github.com/ceph/ceph/pull/59863>_, Guillaume Abrioux)pr#58740 <https://github.com/ceph/ceph/pull/58740>_, Igor Fedotov)pr#59969 <https://github.com/ceph/ceph/pull/59969>_, Adam Kupczyk)pr#60335 <https://github.com/ceph/ceph/pull/60335>_, Adam Kupczyk)pr#60336 <https://github.com/ceph/ceph/pull/60336>_, Adam Kupczyk)pr#60893 <https://github.com/ceph/ceph/pull/60893>_, Anthony D'Atri)pr#59106 <https://github.com/ceph/ceph/pull/59106>_, Adam Kupczyk)pr#59217 <https://github.com/ceph/ceph/pull/59217>_, Adam Kupczyk)pr#59464 <https://github.com/ceph/ceph/pull/59464>_, Md Mahamudur Rahaman Sajib)pr#59035 <https://github.com/ceph/ceph/pull/59035>_, zhangjianwei2)pr#59791 <https://github.com/ceph/ceph/pull/59791>_, Ronen Friedman)pr#59020 <https://github.com/ceph/ceph/pull/59020>_, Ronen Friedman)pr#59885 <https://github.com/ceph/ceph/pull/59885>_, Ronen Friedman)pr#59492 <https://github.com/ceph/ceph/pull/59492>_, Samuel Just, Radoslaw Zarzynski)pr#59083 <https://github.com/ceph/ceph/pull/59083>_, Kamoltat)pr#59934 <https://github.com/ceph/ceph/pull/59934>_, Adam King)pr#59398 <https://github.com/ceph/ceph/pull/59398>_, Xiubo Li)pr#58788 <https://github.com/ceph/ceph/pull/58788>_, Patrick Donnelly)pr#59471 <https://github.com/ceph/ceph/pull/59471>_, Adam King)pr#59603 <https://github.com/ceph/ceph/pull/59603>_, Casey Bodley)pr#61023 <https://github.com/ceph/ceph/pull/61023>_, Casey Bodley)pr#61053 <https://github.com/ceph/ceph/pull/61053>_, J. Eric Ivancich)pr#61120 <https://github.com/ceph/ceph/pull/61120>_, J. Eric Ivancich)pr#61101 <https://github.com/ceph/ceph/pull/61101>_, J. Eric Ivancich)pr#58967 <https://github.com/ceph/ceph/pull/58967>_, Ronen Friedman)pr#59974 <https://github.com/ceph/ceph/pull/59974>_, Ronen Friedman)pr#60287 <https://github.com/ceph/ceph/pull/60287>_, Ronen Friedman)pr#61109 <https://github.com/ceph/ceph/pull/61109>_, Nitzan Mordechai)pr#58629 <https://github.com/ceph/ceph/pull/58629>_, Kamoltat)pr#58607 <https://github.com/ceph/ceph/pull/58607>_, Laura Flores)pr#58785 <https://github.com/ceph/ceph/pull/58785>_, Sridhar Seshasayee)pr#59156 <https://github.com/ceph/ceph/pull/59156>_, Brad Hubbard)pr#60089 <https://github.com/ceph/ceph/pull/60089>_, Ilya Dryomov)pr#59068 <https://github.com/ceph/ceph/pull/59068>_, Jos Collin)pr#59930 <https://github.com/ceph/ceph/pull/59930>_, Nizamudeen A)pr#58263 <https://github.com/ceph/ceph/pull/58263>_, Kamoltat)pr#61026 <https://github.com/ceph/ceph/pull/61026>_, Adam King)pr#59472 <https://github.com/ceph/ceph/pull/59472>_, Adam King)pr#59232 <https://github.com/ceph/ceph/pull/59232>_, Ilya Dryomov)issue#66640 <http://tracker.ceph.com/issues/66640>, issue#67117 <http://tracker.ceph.com/issues/67117>, pr#58808 <https://github.com/ceph/ceph/pull/58808>_, Venky Shankar)pr#59521 <https://github.com/ceph/ceph/pull/59521>_, Patrick Donnelly)pr#60021 <https://github.com/ceph/ceph/pull/60021>_, Guillaume Abrioux)pr#58790 <https://github.com/ceph/ceph/pull/58790>_, Patrick Donnelly)pr#59084 <https://github.com/ceph/ceph/pull/59084>_, Kamoltat)pr#59771 <https://github.com/ceph/ceph/pull/59771>_, N Balachandran)pr#59502 <https://github.com/ceph/ceph/pull/59502>_, Ilya Dryomov)pr#59602 <https://github.com/ceph/ceph/pull/59602>_, Ilya Dryomov)pr#61172 <https://github.com/ceph/ceph/pull/61172>_, Ilya Dryomov)pr#60244 <https://github.com/ceph/ceph/pull/60244>_, Mingyuan Liang, Casey Bodley)pr#59439 <https://github.com/ceph/ceph/pull/59439>_, Casey Bodley)pr#59754 <https://github.com/ceph/ceph/pull/59754>_, Yuval Lifshitz)pr#61138 <https://github.com/ceph/ceph/pull/61138>_, Trang Tran)pr#59678 <https://github.com/ceph/ceph/pull/59678>_, Jane Zhu)pr#60792 <https://github.com/ceph/ceph/pull/60792>_, Shilpa Jagannath)pr#59302 <https://github.com/ceph/ceph/pull/59302>_, Yuval Lifshitz)pr#59671 <https://github.com/ceph/ceph/pull/59671>_, Yuval Lifshitz)pr#59226 <https://github.com/ceph/ceph/pull/59226>_, Casey Bodley)pr#60065 <https://github.com/ceph/ceph/pull/60065>_, Casey Bodley)pr#59120 <https://github.com/ceph/ceph/pull/59120>_, Seena Fallah)pr#59670 <https://github.com/ceph/ceph/pull/59670>_, Mark Kogan)pr#60130 <https://github.com/ceph/ceph/pull/60130>_, sungjoon-koh)pr#59445 <https://github.com/ceph/ceph/pull/59445>_, Casey Bodley)pr#59413 <https://github.com/ceph/ceph/pull/59413>_, Seena Fallah)pr#61070 <https://github.com/ceph/ceph/pull/61070>_, J. Eric Ivancich)pr#59221 <https://github.com/ceph/ceph/pull/59221>_, Casey Bodley)pr#60823 <https://github.com/ceph/ceph/pull/60823>_, Casey Bodley)pr#60133 <https://github.com/ceph/ceph/pull/60133>_, Casey Bodley)pr#59223 <https://github.com/ceph/ceph/pull/59223>_, Matt Benjamin)pr#59010 <https://github.com/ceph/ceph/pull/59010>_, Ali Masarwa)pr#60774 <https://github.com/ceph/ceph/pull/60774>_, Oshrey Avraham, Ali Masarwa)pr#58955 <https://github.com/ceph/ceph/pull/58955>_, Matan Breizman)pr#59537 <https://github.com/ceph/ceph/pull/59537>_, Neha Ojha)pr#58885 <https://github.com/ceph/ceph/pull/58885>_, junxiang Mu)pr#60003 <https://github.com/ceph/ceph/pull/60003>_, Kamoltat)pr#59624 <https://github.com/ceph/ceph/pull/59624>_, Nitzan Mordechai)pr#58267 <https://github.com/ceph/ceph/pull/58267>_, Nitzan Mordechai)pr#59147 <https://github.com/ceph/ceph/pull/59147>_, Nitzan Mordechai)pr#58144 <https://github.com/ceph/ceph/pull/58144>_, Laura Flores)pr#60545 <https://github.com/ceph/ceph/pull/60545>_, Yuval Lifshitz)pr#59303 <https://github.com/ceph/ceph/pull/59303>_, Yuval Lifshitz)pr#59917 <https://github.com/ceph/ceph/pull/59917>_, Yuval Lifshitz)pr#61119 <https://github.com/ceph/ceph/pull/61119>_, Yuval Lifshitz)pr#59041 <https://github.com/ceph/ceph/pull/59041>_, Nitzan Mordechai)pr#59865 <https://github.com/ceph/ceph/pull/59865>_, Kamoltat Sirivadhna)pr#61306 <https://github.com/ceph/ceph/pull/61306>_, Adam Emerson)pr#61583 <https://github.com/ceph/ceph/pull/61583>_, Dan Mick)pr#61584 <https://github.com/ceph/ceph/pull/61584>_, Dan Mick)pr#61585 <https://github.com/ceph/ceph/pull/61585>_, Dan Mick).. ATTENTION::
iSCSI users are advised that the upstream developers of Ceph encountered a
bug during an upgrade from Ceph 19.1.1 to Ceph 19.2.0. Read Tracker Issue 68215 <https://tracker.ceph.com/issues/68215>_ before attempting an upgrade
to 19.2.0.
Some users have encountered a Ceph Manager balancer module issue when
upgrading to Ceph 19.2.0. If you encounter this issue, disable the balancer
by running the command ceph balancer off and the cluster will operate as
expected. A fix has been implemented in 19.2.1, please read Tracker Issue 68657 <https://tracker.ceph.com/issues/68657>_ before attempting an
upgrade.
September 26, 2024
RADOS
Dashboard
RBD
RGW
Crimson/Seastore
--daemon-output-file switch is available for ceph tell
commands to dump output to a file local to the daemon. For commands which
produce large amounts of output, this avoids a potential spike in memory
usage on the daemon, allows for faster streaming writes to a file local to
the daemon, and reduces time holding any locks required to execute the
command. For analysis, it is necessary to manually retrieve the file from the host
running the daemon. Currently, only --format=json|json-pretty
are supported.cls_cxx_gather is marked as deprecated.ceph pg dump --format json has changed.
The default JSON format produces a rather massive output in large clusters
and isn't scalable, so we have removed the 'network_ping_times' section from
the output. Details in the tracker: https://tracker.ceph.com/issues/57460mds_session_metadata_threshold config controls the maximum size that a
(encoded) session metadata can grow.m now implies minutes and the period
specifier M now implies months. This has been made consistent with the
rest of the system.mds_client_delegate_inos_pct defaults to 0 which disables async dirops
in the kclient.mds_log_trim_upkeep_interval config). Also, a
couple of configs govern how much time the MDS spends in trimming its logs.
These configs are mds_log_trim_threshold and mds_log_trim_decay_rate.subvolume snapshot clone command now depends on the config
option snapshot_clone_no_wait which is used to reject the clone operation
when all the cloner threads are busy. This config option is enabled by
default which means that if no cloner threads are free, the clone request
errors out with EAGAIN. The value of the config option can be fetched by
using: ceph config get mgr mgr/volumes/snapshot_clone_no_wait and it can be
disabled by using: ceph config set mgr mgr/volumes/snapshot_clone_no_wait false
for snap_schedule Manager module.ceph mds fail and ceph fs fail now require a
confirmation flag when some MDSs exhibit health warning MDS_TRIM or
MDS_CACHE_OVERSIZED. This is to prevent accidental MDS failover causing
further delays in recovery.root_squash mechanism enabled
via cephx mds caps on a client credential require a new client feature
bit, client_mds_auth_caps. Clients using credentials with root_squash
without this feature will trigger the MDS to raise a HEALTH_ERR on the
cluster, MDS_CLIENTS_BROKEN_ROOTSQUASH. See the documentation on this warning
and the new feature bit for more information.balance_automate
can be used to toggle it on or off. It can be enabled or disabled via
ceph fs set <fs_name> balance_automate <bool>.ceph auth rotate. Previously,
this was only possible by deleting and then recreating the key.mon_cluster_log_file_level and mon_cluster_log_to_syslog_level
options have been removed. Henceforth, users should use the new generic
option mon_cluster_log_level to control the cluster log level verbosity
for the cluster log file as well as for all external entities.A POOL_APP_NOT_ENABLED health warning will now be reported if the
application is not enabled for the pool irrespective of whether the pool is
in use or not. Always tag a pool with an application using ceph osd pool application enable command to avoid reporting of POOL_APP_NOT_ENABLED
health warning for that pool. The user might temporarily mute this warning
using ceph health mute POOL_APP_NOT_ENABLED.get_pool_is_selfmanaged_snaps_mode C++ API has been deprecated due
to being prone to false negative results. Its safer replacement is
pool_is_in_selfmanaged_snaps_mode.ceph config set osd osd_async_recovery_min_cost 1099511627776balancer status CLI command in the
balancer module is now available. Users may run ceph balancer status detail
to see more details about which PGs were updated in the balancer's last
optimization. See https://docs.ceph.com/en/latest/rados/operations/balancer/
for more information.upmap-read, which
offers upmap and read optimization simultaneously, or read, which may be
used to only optimize reads. For more detailed information see
https://docs.ceph.com/en/latest/rados/operations/read-balancer/#online-optimization.fromsnapname == NULL) in
fast-diff mode (whole_object == true with fast-diff image feature enabled
and valid), diff-iterate is now guaranteed to execute locally if exclusive
lock is available. This brings a dramatic performance improvement for QEMU
live disk synchronization and backup use cases.try-netlink mapping option for rbd-nbd has become the default
and is now deprecated. If the NBD netlink interface is not supported by the
kernel, then the mapping is retried using the legacy ioctl interface.--image-id has been added to rbd children CLI command,
so it can be run for images in the trash.Image::access_timestamp and Image::modify_timestamp Python APIs now
return timestamps in UTC.rbd group snap create command, but has also been
exposed via the new --snap-id option for rbd clone command.rbd snap ls --all command now includes the original
type for trashed snapshots.RBD_IMAGE_OPTION_CLONE_FORMAT option has been exposed in Python
bindings via clone_format optional parameter to clone, deep_copy and
migration_prepare methods.RBD_IMAGE_OPTION_FLATTEN option has been exposed in Python bindings
via flatten optional parameter to deep_copy and migration_prepare
methods.rbd-wnbd driver has gained the ability to multiplex image mappings.
Previously, each image mapping spawned its own rbd-wnbd daemon, which lead
to an excessive amount of TCP sessions and other resources being consumed,
eventually exceeding Windows limits. With this change, a single rbd-wnbd
daemon is spawned per host and most OS resources are shared between image
mappings. Additionally, ceph-rbd service starts much faster.radosgw-admin bucket resync encrypted multipart, can be used to identify these original multipart uploads. The
LastModified timestamp of any identified object is incremented by 1ns to
cause peer zones to replicate it again. For multi-site deployments that make
any use of Server-Side Encryption, we recommended running this command
against every bucket in every zone after all zones have upgraded.notification_v2 zone feature can
be enabled to migrate to the new format. See
https://docs.ceph.com/en/squid/radosgw/zone-features for details. The "v1"
format is now considered deprecated and may be removed after 2 major releases.radosgw-admin bucket check olh. If the --fix flag is used, the extra entries will
be safely removed. A distinct issue from the one described thus far, it is
also possible that some versioned buckets are maintaining extra unlinked
objects that are not listable from the S3/ Swift APIs. These extra objects
are typically a result of PUT requests that exited abnormally, in the middle
of a bucket index transaction - so the client would not have received a
successful response. Bugs in prior releases made these unlinked objects easy
to reproduce with any PUT request that was made on a bucket that was actively
resharding. Besides the extra space that these hidden, unlinked objects
consume, there can be another side effect in certain scenarios, caused by
the nature of the failure mode that produced them, where a client of a bucket
that was a victim of this bug may find the object associated with the key to
be in an inconsistent state. To check whether a versioned bucket has unlinked
entries, users can now run radosgw-admin bucket check unlinked. If the
--fix flag is used, the unlinked objects will be safely removed. Finally,
a third issue made it possible for versioned bucket index stats to be
accounted inaccurately. The tooling for recalculating versioned bucket stats
also had a bug, and was not previously capable of fixing these inaccuracies.
This release resolves those issues and users can now expect that the existing
radosgw-admin bucket check command will produce correct results. We
recommend that users with versioned buckets, especially those that existed
on prior releases, use these new tools to check whether their buckets are
affected and to clean them up accordingly.rgw_realm
config option. Previously, they would ignore invalid or missing realms and go
on to load a zone/zonegroup in a different realm. If startup fails with a
"failed to load realm" error, fix or remove the rgw_realm option.realm create and realm pull no longer
set the default realm without --default.Get/HeadObject now supports the query parameter partNumber to read
a specific part of a completed multipart upload.rgw_topic_require_publish_policy, can be enabled to deny sns:Publish
permissions unless explicitly granted by topic policy.principalId inside ownerIdentity
now contains the complete user ID, prefixed with the tenant ID.basic channel in telemetry now captures pool flags that allows us to
better understand feature adoption, such as Crimson.
To opt in to telemetry, run ceph telemetry on.Before starting, make sure your cluster is stable and healthy (no down or recovering OSDs). (This is optional, but recommended.) You can disable the autoscaler for all pools during the upgrade using the noautoscale flag.
.. note::
You can monitor the progress of your upgrade at each stage with the ceph versions command, which will tell you what ceph version(s) are running for each type of daemon.
If your cluster is deployed with cephadm (first introduced in Octopus), then the upgrade process is entirely automated. To initiate the upgrade,
.. prompt:: bash #
ceph orch upgrade start --image quay.io/ceph/ceph:v19.2.0
The same process is used to upgrade to future minor releases.
Upgrade progress can be monitored with
.. prompt:: bash #
ceph orch upgrade status
Upgrade progress can also be monitored with ceph -s (which provides a simple progress bar) or more verbosely with
.. prompt:: bash #
ceph -W cephadm
The upgrade can be paused or resumed with
.. prompt:: bash #
ceph orch upgrade pause # to pause
ceph orch upgrade resume # to resume
or canceled with
.. prompt:: bash #
ceph orch upgrade stop
Note that canceling the upgrade simply stops the process; there is no ability to downgrade back to Quincy or Reef.
.. note::
If your cluster is running Quincy (17.2.x) or later, you might choose to first convert it to use cephadm so that the upgrade to Squid is automated (see above). For more information, see https://docs.ceph.com/en/squid/cephadm/adoption/.
If your cluster is running Quincy (17.2.x) or later, systemd unit file names have changed to include the cluster fsid. To find the correct systemd unit file name for your cluster, run following command:
::
systemctl -l | grep <daemon type>
Example:
.. prompt:: bash $
systemctl -l | grep mon | grep active
::
ceph-6ce0347c-314a-11ee-9b52-000af7995d6c@mon.f28-h21-000-r630.service loaded active running Ceph mon.f28-h21-000-r630 for 6ce0347c-314a-11ee-9b52-000af7995d6c
#. Set the noout flag for the duration of the upgrade. (Optional, but recommended.)
.. prompt:: bash #
ceph osd set noout
#. Upgrade monitors by installing the new packages and restarting the monitor daemons. For example, on each monitor host
.. prompt:: bash #
systemctl restart ceph-mon.target
Once all monitors are up, verify that the monitor upgrade is complete by looking for the squid string in the mon map. The command
.. prompt:: bash #
ceph mon dump | grep min_mon_release
should report:
.. prompt:: bash #
min_mon_release 19 (squid)
If it does not, that implies that one or more monitors hasn't been upgraded and restarted and/or the quorum does not include all monitors.
#. Upgrade ceph-mgr daemons by installing the new packages and restarting all manager daemons. For example, on each manager host,
.. prompt:: bash #
systemctl restart ceph-mgr.target
Verify the ceph-mgr daemons are running by checking ceph -s:
.. prompt:: bash #
ceph -s
::
...
services:
mon: 3 daemons, quorum foo,bar,baz
mgr: foo(active), standbys: bar, baz
...
#. Upgrade all OSDs by installing the new packages and restarting the ceph-osd daemons on all OSD hosts
.. prompt:: bash #
systemctl restart ceph-osd.target
#. Upgrade all CephFS MDS daemons. For each CephFS file system,
#. Disable standby_replay:
.. prompt:: bash #
ceph fs set <fs_name> allow_standby_replay false
#. Reduce the number of ranks to 1. (Make note of the original number of MDS daemons first if you plan to restore it later.)
.. prompt:: bash #
ceph status # ceph fs set <fs_name> max_mds 1
#. Wait for the cluster to deactivate any non-zero ranks by periodically checking the status
.. prompt:: bash #
ceph status
#. Take all standby MDS daemons offline on the appropriate hosts with
.. prompt:: bash #
systemctl stop ceph-mds@<daemon_name>
#. Confirm that only one MDS is online and is rank 0 for your FS
.. prompt:: bash #
ceph status
#. Upgrade the last remaining MDS daemon by installing the new packages and restarting the daemon
.. prompt:: bash #
systemctl restart ceph-mds.target
#. Restart all standby MDS daemons that were taken offline
.. prompt:: bash #
systemctl start ceph-mds.target
#. Restore the original value of max_mds for the volume
.. prompt:: bash #
ceph fs set <fs_name> max_mds <original_max_mds>
#. Upgrade all radosgw daemons by upgrading packages and restarting daemons on all hosts
.. prompt:: bash #
systemctl restart ceph-radosgw.target
#. Complete the upgrade by disallowing pre-Squid OSDs and enabling all new Squid-only functionality
.. prompt:: bash #
ceph osd require-osd-release squid
#. If you set noout at the beginning, be sure to clear it with
.. prompt:: bash #
ceph osd unset noout
#. Consider transitioning your cluster to use the cephadm deployment and orchestration framework to simplify cluster management and future upgrades. For more information on converting an existing cluster to cephadm, see https://docs.ceph.com/en/squid/cephadm/adoption/.
#. Verify the cluster is healthy with ceph health. If your cluster is running Filestore, and you are upgrading directly from Quincy to Squid, a deprecation warning is expected. This warning can be temporarily muted using the following command
.. prompt:: bash #
ceph health mute OSD_FILESTORE
#. Consider enabling the telemetry module <https://docs.ceph.com/en/squid/mgr/telemetry/>_ to send anonymized usage statistics and crash information to the Ceph upstream developers. To see what would be reported (without actually sending any information to anyone),
.. prompt:: bash #
ceph telemetry preview-all
If you are comfortable with the data that is reported, you can opt-in to automatically report the high-level cluster metadata with
.. prompt:: bash #
ceph telemetry on
The public dashboard that aggregates Ceph telemetry can be found at https://telemetry-public.ceph.com/.
You must first upgrade to Quincy (17.2.z) or Reef (18.2.z) before upgrading to Squid.