From b954847fcad59af80b72c50a793d9840c2dbfc52 Mon Sep 17 00:00:00 2001 From: Gunnar Kudrjavets Date: Wed, 6 Jul 2016 16:07:53 -0700 Subject: [PATCH] Fix release build for MyRocks by using debug-only code only in debug builds Summary: MyRocks release integration build breaks because we treat warnings caused by unused variables as errors. Variable `edit` is only used in debug builds. Therefore we need to guard it using `#ifndef NDEBUG` check. Test Plan: - `[p]arc diff --preview` for the default validation. - Verify that release build fails before this fix and passes after applying it. Reviewers: andrewkr, sdong Reviewed By: sdong Subscribers: andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D60423 --- db/version_set.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/db/version_set.cc b/db/version_set.cc index 43000b394..3a7390519 100644 --- a/db/version_set.cc +++ b/db/version_set.cc @@ -2160,10 +2160,12 @@ Status VersionSet::LogAndApply(ColumnFamilyData* column_family_data, if (num_edits == 0) { return Status::OK(); } else if (num_edits > 1) { +#ifndef NDEBUG // no group commits for column family add or drop for (auto& edit : edit_list) { assert(!edit->IsColumnFamilyManipulation()); } +#endif } // column_family_data can be nullptr only if this is column_family_add.