From 753ff84a3d436a5c92de8cfe5617bf5c23f02c24 Mon Sep 17 00:00:00 2001 From: Vitaliy Liptchinsky Date: Fri, 20 Jan 2017 15:51:21 -0800 Subject: [PATCH] Fix get approx size Summary: Fixing GetApproximateSize bug for the case of computing stats for mem tables only. Closes https://github.com/facebook/rocksdb/pull/1795 Differential Revision: D4445507 Pulled By: IslamAbdelRahman fbshipit-source-id: 3905846 --- db/db_impl.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/db/db_impl.cc b/db/db_impl.cc index 0fbcb4d9d..c1a4760b9 100644 --- a/db/db_impl.cc +++ b/db/db_impl.cc @@ -5596,8 +5596,9 @@ void DBImpl::GetApproximateSizes(ColumnFamilyHandle* column_family, // Convert user_key into a corresponding internal key. InternalKey k1(range[i].start, kMaxSequenceNumber, kValueTypeForSeek); InternalKey k2(range[i].limit, kMaxSequenceNumber, kValueTypeForSeek); + sizes[i] = 0; if (include_flags & DB::SizeApproximationFlags::INCLUDE_FILES) { - sizes[i] = versions_->ApproximateSize(v, k1.Encode(), k2.Encode()); + sizes[i] += versions_->ApproximateSize(v, k1.Encode(), k2.Encode()); } if (include_flags & DB::SizeApproximationFlags::INCLUDE_MEMTABLES) { sizes[i] += sv->mem->ApproximateSize(k1.Encode(), k2.Encode());