From 9b3b75322f4b93d7c2ad4673136770e5f51345e4 Mon Sep 17 00:00:00 2001 From: "Adam C. Emerson" Date: Thu, 5 Feb 2026 17:02:44 -0500 Subject: [PATCH] rgw/datalog: `radosgw-admin` will no longer convert datalog to omap Omap-backed datalogs are deprecated, so we remove the ability to convert to them. Signed-off-by: Adam C. Emerson --- PendingReleaseNotes | 1 + src/rgw/radosgw-admin/radosgw-admin.cc | 8 ++++++-- src/test/cli/radosgw-admin/help.t | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/PendingReleaseNotes b/PendingReleaseNotes index c0d63924a9f..2eb6e6be2e8 100644 --- a/PendingReleaseNotes +++ b/PendingReleaseNotes @@ -16,6 +16,7 @@ * RGW: Omap backing for the RGW Datalog is deprecated and support will be removed in a future version. - The `rgw default data log backing` option is removed and it is no longer possible to create clusters with an omap based datalog. + - `radosgw-admin datalog type` will only accept `--log_type=fifo`. * RGW: Bucket Logging suppports creating log buckets in EC pools. Implicit logging object commits are now performed asynchronously. * RGW: radosgw-admin bucket list now supports pagination for versioned buckets by using diff --git a/src/rgw/radosgw-admin/radosgw-admin.cc b/src/rgw/radosgw-admin/radosgw-admin.cc index 2f2cbe9dc78..f767c1d7eaa 100644 --- a/src/rgw/radosgw-admin/radosgw-admin.cc +++ b/src/rgw/radosgw-admin/radosgw-admin.cc @@ -311,7 +311,7 @@ void usage() cout << " datalog list list data log\n"; cout << " datalog trim trim data log\n"; cout << " datalog status read data log status\n"; - cout << " datalog type change datalog type to --log_type={fifo,omap}\n"; + cout << " datalog type change datalog type to --log_type=fifo\n"; cout << " datalog semaphore list List recovery semaphores\n"; cout << " datalog semaphore reset Reset recovery semaphore (use marker)\n"; cout << " orphans find deprecated -- init and run search for leaked rados objects (use job-id, pool)\n"; @@ -11427,10 +11427,14 @@ next: std::cerr << "log-type not specified." << std::endl; return -EINVAL; } + if (opt_log_type == log_type::omap) { + std::cerr << "omap datalogs are deprecated. You cannot convert to them." << std::endl; + return -EINVAL; + } auto datalog = static_cast(driver)->svc()->datalog_rados; std::string errstr; ret = run_coro(dpp(), context_pool, - datalog->change_format(dpp(), *opt_log_type), + datalog->change_format(dpp(), log_type::fifo), &errstr); if (ret < 0) { cerr << "ERROR: change_format(): " << errstr << std::endl; diff --git a/src/test/cli/radosgw-admin/help.t b/src/test/cli/radosgw-admin/help.t index 008aecd56cb..b62489296e6 100644 --- a/src/test/cli/radosgw-admin/help.t +++ b/src/test/cli/radosgw-admin/help.t @@ -170,7 +170,7 @@ datalog list list data log datalog trim trim data log datalog status read data log status - datalog type change datalog type to --log_type={fifo,omap} + datalog type change datalog type to --log_type=fifo datalog semaphore list List recovery semaphores datalog semaphore reset Reset recovery semaphore (use marker) orphans find deprecated -- init and run search for leaked rados objects (use job-id, pool) -- 2.47.3