summaryrefslogtreecommitdiff
path: root/leveldb/0004-bloom_test-failure-on-big-endian-archs.patch
blob: cb679b65cf95adc399cba0f172622f1ac4a1168b (plain)
    1 From: Yehuda Sadeh <yehuda@inktank.com>
    2 Date: Mon, 2 Jul 2012 14:29:06 -0700
    3 Subject: [PATCH] bloom_test failure on big endian archs
    4 
    5 When running bloom_test on big endian machines it fails due to unacceptable
    6 false positive rate. I've looked into the issue and it seems that the
    7 reason for that is that it passes a different input than when it runs on
    8 little endian. When transforming the input to be little endian it behaves
    9 as expected.
   10 This issue holds up inclusion of ceph to debian due to ceph's use of
   11 leveldb. The fix can be to bump up the acceptable false positives.
   12 
   13 https://groups.google.com/d/topic/leveldb/SbVPvl4j4vU/discussion
   14 
   15 diff --git a/util/bloom_test.cc b/util/bloom_test.cc
   16 index 520473e..e4053e6 100644
   17 --- a/util/bloom_test.cc
   18 +++ b/util/bloom_test.cc
   19 @@ -136,7 +136,7 @@ TEST_F(BloomTest, VaryingLengths) {
   20                     "False positives: %5.2f%% @ length = %6d ; bytes = %6d\n",
   21                     rate * 100.0, length, static_cast<int>(FilterSize()));
   22      }
   23 -    ASSERT_LE(rate, 0.02);  // Must not be over 2%
   24 +    ASSERT_LE(rate, 0.03);  // Must not be over 3%
   25      if (rate > 0.0125)
   26        mediocre_filters++;  // Allowed, but not too often
   27      else

Generated by cgit