Skip to content

Commit 9363ed6

Browse files
committed
tools/ceph_dedup: Add const qualifiers and reference parameters
Improve code quality in ceph_dedup tool by: - Adding const qualifiers to member functions and parameters where appropriate - Converting parameter passing to use references instead of value copies for complex objects These changes enhance code readability, better express intent through const-correctness, and improve performance by avoiding unnecessary deep copies. Signed-off-by: Kefu Chai <[email protected]>
1 parent 10938b6 commit 9363ed6

File tree

1 file changed

+15
-15
lines changed

1 file changed

+15
-15
lines changed

src/tools/ceph_dedup/ceph_dedup_daemon.cc

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -190,13 +190,13 @@ class SampleDedupWorkerThread : public Thread
190190
}
191191
}
192192

193-
bool contains(std::string& fp) {
193+
bool contains(const std::string& fp) {
194194
std::shared_lock lock(fingerprint_lock);
195195
return fp_map.contains(fp);
196196
}
197197

198198
// return true if the chunk is duplicate
199-
bool add(chunk_t& chunk) {
199+
bool add(const chunk_t& chunk) {
200200
std::unique_lock lock(fingerprint_lock);
201201
auto entry = fp_map.find(chunk.fingerprint);
202202
total_bytes += chunk.size;
@@ -246,7 +246,7 @@ class SampleDedupWorkerThread : public Thread
246246
fp_store(chunk_threshold, report_period, fpstore_threshold),
247247
sampling_ratio(static_cast<double>(sampling_ratio) / 100) { }
248248

249-
bool is_all_stop() {
249+
bool is_all_stop() const {
250250
std::shared_lock l{glock};
251251
return all_stop;
252252
}
@@ -319,14 +319,14 @@ class SampleDedupWorkerThread : public Thread
319319
ObjectCursor end,
320320
size_t max_object_count);
321321
std::vector<size_t> sample_object(size_t count);
322-
void try_dedup_and_accumulate_result(ObjectItem &object, snap_t snap = 0);
322+
void try_dedup_and_accumulate_result(const ObjectItem &object, snap_t snap = 0);
323323
int do_chunk_dedup(chunk_t &chunk, snap_t snap);
324-
bufferlist read_object(ObjectItem &object);
324+
bufferlist read_object(const ObjectItem &object);
325325
std::vector<std::tuple<bufferlist, std::pair<uint64_t, uint64_t>>> do_cdc(
326-
ObjectItem &object,
327-
bufferlist &data);
328-
std::string generate_fingerprint(bufferlist chunk_data);
329-
AioCompRef do_async_evict(std::string oid);
326+
const ObjectItem &object,
327+
const bufferlist &data) const;
328+
std::string generate_fingerprint(const bufferlist& chunk_data) const;
329+
AioCompRef do_async_evict(const std::string& oid);
330330

331331
IoCtx io_ctx;
332332
IoCtx chunk_io_ctx;
@@ -393,7 +393,7 @@ void SampleDedupWorkerThread::crawl()
393393
}
394394
}
395395

396-
AioCompRef SampleDedupWorkerThread::do_async_evict(std::string oid)
396+
AioCompRef SampleDedupWorkerThread::do_async_evict(const std::string& oid)
397397
{
398398
Rados rados;
399399
ObjectReadOperation op_tier;
@@ -443,7 +443,7 @@ std::vector<size_t> SampleDedupWorkerThread::sample_object(size_t count)
443443
}
444444

445445
void SampleDedupWorkerThread::try_dedup_and_accumulate_result(
446-
ObjectItem &object, snap_t snap)
446+
const ObjectItem &object, snap_t snap)
447447
{
448448
bufferlist data = read_object(object);
449449
if (data.length() == 0) {
@@ -504,7 +504,7 @@ void SampleDedupWorkerThread::try_dedup_and_accumulate_result(
504504
total_object_size += object_size;
505505
}
506506

507-
bufferlist SampleDedupWorkerThread::read_object(ObjectItem &object)
507+
bufferlist SampleDedupWorkerThread::read_object(const ObjectItem &object)
508508
{
509509
bufferlist whole_data;
510510
size_t offset = 0;
@@ -527,8 +527,8 @@ bufferlist SampleDedupWorkerThread::read_object(ObjectItem &object)
527527
}
528528

529529
std::vector<std::tuple<bufferlist, std::pair<uint64_t, uint64_t>>> SampleDedupWorkerThread::do_cdc(
530-
ObjectItem &object,
531-
bufferlist &data)
530+
const ObjectItem &object,
531+
const bufferlist &data) const
532532
{
533533
std::vector<std::tuple<bufferlist, std::pair<uint64_t, uint64_t>>> ret;
534534

@@ -544,7 +544,7 @@ std::vector<std::tuple<bufferlist, std::pair<uint64_t, uint64_t>>> SampleDedupWo
544544
return ret;
545545
}
546546

547-
std::string SampleDedupWorkerThread::generate_fingerprint(bufferlist chunk_data)
547+
std::string SampleDedupWorkerThread::generate_fingerprint(const bufferlist& chunk_data) const
548548
{
549549
std::string ret;
550550

0 commit comments

Comments
 (0)