Removed __unused__ attribute

Summary:
The current build is failing on some platforms due to an __unused__ attribute.
This patch prevents the problem by using a pattern similar to MergeHelper
(assert not on the variable but inside a condition that uses the variable). We
should have better error handling in both cases in the future.

Test Plan: make clean all check

Reviewers: rven, anthony, yhchiang, sdong, igor, aekmekji

Reviewed By: aekmekji

Subscribers: dhruba, leveldb

Differential Revision: https://reviews.facebook.net/D46623
main
Andres Noetzli 9 years ago
parent 6db0a939d2
commit c25f6a85bf
  1. 7
      db/compaction_iterator.cc
  2. 2
      db/compaction_iterator.h

@ -98,8 +98,11 @@ void CompactionIterator::NextFromInput() {
if (!ParseInternalKey(key_, &ikey_)) { if (!ParseInternalKey(key_, &ikey_)) {
// If `expect_valid_internal_key_` is false, return the corrupted key // If `expect_valid_internal_key_` is false, return the corrupted key
// and let the caller decide what to do with it. // and let the caller decide what to do with it.
// TODO(noetzli): Maybe we should have a more elegant solution for this. // TODO(noetzli): We should have a more elegant solution for this.
assert(!expect_valid_internal_key_); if (expect_valid_internal_key_) {
assert(!"corrupted internal key is not expected");
break;
}
current_user_key_.Clear(); current_user_key_.Clear();
has_current_user_key_ = false; has_current_user_key_ = false;
current_user_key_sequence_ = kMaxSequenceNumber; current_user_key_sequence_ = kMaxSequenceNumber;

@ -90,7 +90,7 @@ class CompactionIterator {
MergeHelper* merge_helper_; MergeHelper* merge_helper_;
const std::vector<SequenceNumber>* snapshots_; const std::vector<SequenceNumber>* snapshots_;
Env* env_; Env* env_;
bool expect_valid_internal_key_ __attribute__((__unused__)); bool expect_valid_internal_key_;
Statistics* stats_; Statistics* stats_;
Compaction* compaction_; Compaction* compaction_;
const CompactionFilter* compaction_filter_; const CompactionFilter* compaction_filter_;

Loading…
Cancel
Save