1. 04 4月, 2021 1 次提交
    • Y
      Use separate db dir for different tests hoping to remove flakiness (#8147) · dd3fbbbf
      Yanqin Jin 提交于
      Summary:
      DBWALTestWithParam relies on `SstFileManager` to have the expected behavior. However, if this test shares
      db directories with other DBSSTTest, then the SstFileManager may see non-empty data, thus will change its
      behavior to be different from expectation, introducing flakiness.
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8147
      
      Test Plan: make check
      
      Reviewed By: jay-zhuang
      
      Differential Revision: D27553362
      
      Pulled By: riversand963
      
      fbshipit-source-id: a2d86343e8e2220bc553b6695ce87dd21a97ddec
      dd3fbbbf
  2. 03 4月, 2021 1 次提交
  3. 02 4月, 2021 3 次提交
    • A
      Add request_id in IODebugContext. (#8045) · 689b13e6
      Akanksha Mahajan 提交于
      Summary:
      Add request_id in IODebugContext which will be populated by
          underlying FileSystem for IOTracing purposes. Update IOTracer to trace
          request_id in the tracing records. Provided API
          IODebugContext::SetRequestId which will set the request_id and enable
          tracing for request_id. The API hides the implementation and underlying
          file system needs to call this API directly.
      
      Update DB::StartIOTrace API and remove redundant Env* from the
          argument as its not used and DB already has Env that is passed down to
          IOTracer.
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8045
      
      Test Plan: Update unit test.
      
      Differential Revision: D26899871
      
      Pulled By: akankshamahajan15
      
      fbshipit-source-id: 56adef52ee5af0fb3060b607c3af1ec01635fa2b
      689b13e6
    • R
      version_set_test.cc: remove a redundent obj copy (#7880) · 5025c7ec
      rockeet 提交于
      Summary:
      Remove redundant obj copy
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/7880
      
      Reviewed By: akankshamahajan15
      
      Differential Revision: D26921119
      
      Pulled By: riversand963
      
      fbshipit-source-id: f227da688b067870a069e728a67799a8a95fee99
      5025c7ec
    • Z
      Replace Status with IOStatus for block fetcher IO function (#8130) · 17002365
      Zhichao Cao 提交于
      Summary:
      To propagate the IOStatus from file reads to RocksDB read logic, some of the existing status needs to be replaced by IOStatus.
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8130
      
      Test Plan: make check
      
      Reviewed By: anand1976
      
      Differential Revision: D27440188
      
      Pulled By: zhichao-cao
      
      fbshipit-source-id: bbe7622c2106fe4e46871d60f7c26944e5030d78
      17002365
  4. 01 4月, 2021 4 次提交
    • A
      Fix compression dictionary sampling with dedicated range tombstone SSTs (#8141) · c43a37a9
      Andrew Kryczka 提交于
      Summary:
      Return early in case there are zero data blocks when
      `BlockBasedTableBuilder::EnterUnbuffered()` is called. This crash can
      only be triggered by applying dictionary compression to SST files that
      contain only range tombstones. It cannot be triggered by a low buffer
      limit alone since we only consider entering unbuffered mode after
      buffering a data block causing the limit to be breached, or `Finish()`ing the file. It also cannot
      be triggered by a totally empty file because those go through
      `Abandon()` rather than `Finish()` so unbuffered mode is never entered.
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8141
      
      Test Plan: added a unit test that repro'd the "Floating point exception"
      
      Reviewed By: riversand963
      
      Differential Revision: D27495640
      
      Pulled By: ajkr
      
      fbshipit-source-id: a463cfba476919dc5c5c380800a75a86c31ffa23
      c43a37a9
    • shadowlux's avatar
      Merge checks into one (#8138) · a3a943bf
      shadowlux 提交于
      Summary: Pull Request resolved: https://github.com/facebook/rocksdb/pull/8138
      
      Reviewed By: zhichao-cao
      
      Differential Revision: D27475616
      
      Pulled By: riversand963
      
      fbshipit-source-id: d2815eed578a90c53d6a4e0dc4aaa232516eb4f8
      a3a943bf
    • A
      Add sample_for_compression results to table properties (#8139) · 1ba2b8a5
      Andrew Kryczka 提交于
      Summary:
      Added `TableProperties::{fast,slow}_compression_estimated_data_size`.
      These properties are present in block-based tables when
      `ColumnFamilyOptions::sample_for_compression > 0` and the necessary
      compression library is supported when the file is generated. They
      contain estimates of what `TableProperties::data_size` would be if the
      "fast"/"slow" compression library had been used instead. One
      limitation is we do not record exactly which "fast" (ZSTD or Zlib)
      or "slow" (LZ4 or Snappy) compression library produced the result.
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8139
      
      Test Plan:
      - new unit test
      - ran `db_bench` with `sample_for_compression=1`; verified the `data_size` property matches the `{slow,fast}_compression_estimated_data_size` when the same compression type is used for the output file compression and the sampled compression
      
      Reviewed By: riversand963
      
      Differential Revision: D27454338
      
      Pulled By: ajkr
      
      fbshipit-source-id: 9529293de93ddac7f03b2e149d746e9f634abac4
      1ba2b8a5
    • J
      Fix getApproximateMemTableStats() return type (#8098) · a781b103
      Jay Zhuang 提交于
      Summary:
      Which should return 2 long instead of an array.
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8098
      
      Reviewed By: mrambacher
      
      Differential Revision: D27308741
      
      Pulled By: jay-zhuang
      
      fbshipit-source-id: 44beea2bd28cf6779b048bebc98f2426fe95e25c
      a781b103
  5. 31 3月, 2021 5 次提交
    • M
      Pass PLATFORM_FLAGS in build_detect_platform (#8111) · 493a4e28
      mrambacher 提交于
      Summary:
      At least under MacOS, some things were excluded from the build (like Snappy) because the compilation flags were not passed in correctly.  This PR does a few things:
      - Passes the EXTRA_CXX/LDFLAGS into build_detect_platform.  This means that if some tool (like TBB for example) is not installed in a standard place, it could still be detected by build_detect_platform.  In this case, the developer would invoke: "EXTRA_CXXFLAGS=<path to TBB include> EXTRA_LDFLAGS=<path to TBB library> make", and the build script would find the tools in the extra location.
      - Changes the compilation tests to use PLATFORM_CXXFLAGS.  This change causes the EXTRA_FLAGS passed in to the script to be included in the compilation check.  Additionally, flags set by the script itself (like --std=c++11) will be used during the checks.
      
      Validated that the make_platform.mk file generated on Linux does not change with this change.  On my MacOS machine, the SNAPPY libraries are now available (they were not before as they required --std=c++11 to build).
      
      I also verified that I can build against TBB installed on my Mac by passing in the EXTRA CXX and LD FLAGS to the location in which TBB is installed.
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8111
      
      Reviewed By: jay-zhuang
      
      Differential Revision: D27353516
      
      Pulled By: mrambacher
      
      fbshipit-source-id: b6b378c96dbf678bab1479556dcbcb49c47e807d
      493a4e28
    • Z
      Fix error_handler_fs_test failure due to statistics (#8136) · 335c5a6b
      Zhichao Cao 提交于
      Summary:
      Fix error_handler_fs_test failure due to statistics, it will fails due to multi-thread running and resume is different.
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8136
      
      Test Plan: make check
      
      Reviewed By: akankshamahajan15
      
      Differential Revision: D27448828
      
      Pulled By: zhichao-cao
      
      fbshipit-source-id: b94255c45e9e66e93334b5ca2e4e1bfcba23fc20
      335c5a6b
    • S
      Fix possible hang issue in ~DBImpl() when flush is scheduled in LOW pool (#8125) · e6534900
      sherriiiliu 提交于
      Summary:
      In DBImpl::CloseHelper, we wait for bg_compaction_scheduled_
      and bg_flush_scheduled_ to drop to 0. Unschedule is called prior
      to cancel any unscheduled flushes/compactions. It is assumed that
      anything in the high priority is a flush, and anything in the low
      priority pool is a compaction. This assumption, however, is broken when
      the high-pri pool is full.
      As a result, bg_compaction_scheduled_ can go < 0 and bg_flush_scheduled_
      will remain > 0 and DB can be in hang state.
      The fix is, we decrement the `bg_{flush,compaction,bottom_compaction}_scheduled_`
      inside the `Unschedule{Flush,Compaction,BottomCompaction}Callback()`s. DB
      `mutex_` will make the counts atomic in `Unschedule`.
      Related discussion: https://github.com/facebook/rocksdb/issues/7928
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8125
      
      Test Plan: Added new test case which hangs without the fix.
      
      Reviewed By: jay-zhuang
      
      Differential Revision: D27390043
      
      Pulled By: ajkr
      
      fbshipit-source-id: 78a367fba9a59ac5607ad24bd1c46dc16d5ec110
      e6534900
    • J
      Unittest uses unique test db name (#8124) · 9418403c
      Jay Zhuang 提交于
      Summary:
      thread_id is only unique within a process. If we run the same test-set with multiple processes, it could cause db path collision between 2 runs, error message will be like:
      ```
      ...
      IO error: While lock file: /tmp/rocksdbtest-501//deletefile_test_8093137327721791717/LOCK: Resource temporarily unavailable
      ...
      ```
      This is could be likely reproduced by:
      ```
      gtest-parallel ./deletefile_test --gtest_filter=DeleteFileTest.BackgroundPurgeCFDropTest -r 1000 -w 1000
      ```
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8124
      
      Reviewed By: ajkr
      
      Differential Revision: D27435195
      
      Pulled By: jay-zhuang
      
      fbshipit-source-id: 850fc72cdb660edf93be9a1ca9327008c16dd720
      9418403c
    • A
      Vulnerability issue in kramdown dependency (#8131) · f03606cd
      Akanksha Mahajan 提交于
      Summary:
      GitHub has detected that a package defined in the
      docs/Gemfile.lock file of the facebook/rocksdb repository contains a
      security vulnerability.
      This patch fixes it by upgrading the version of kramdown to 2.3.1
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8131
      
      Reviewed By: jay-zhuang
      
      Differential Revision: D27418776
      
      Pulled By: akankshamahajan15
      
      fbshipit-source-id: 0a4b0b85922b9958afcbc44560584701b1c6c82d
      f03606cd
  6. 30 3月, 2021 7 次提交
    • P
      Add thread safety to BackupEngine, explain more (#8115) · ec11c23c
      Peter Dillinger 提交于
      Summary:
      BackupEngine previously had unclear but strict concurrency
      requirements that the API user must follow for safe use. Now we make
      that clear, by separating operations into "Read," "Append," and "Write"
      operations, and specifying which combinations are safe across threads on
      the same BackupEngine object (previously none; now all, using a
      read-write lock), and which are safe across different BackupEngine
      instances open on the same backup_dir.
      
      The changes to backupable_db.h should be backward compatible. It is
      mostly about eliminating copies of what should be the same function and
      (unsurprisingly) useful documentation comments were often placed on
      only one of the two copies. With the re-organization, we are also
      grouping different categories of operations. In the future we might add
      BackupEngineReadAppendOnly, but that didn't seem necessary.
      
      To mark API Read operations 'const', I had to mark some implementation
      functions 'const' and some fields mutable.
      
      Functional changes:
      * Added RWMutex locking around public API functions to implement thread
      safety on a single object. To avoid future bugs, this is another
      internal class layered on top (removing many "override" in
      BackupEngineImpl). It would be possible to allow more concurrency
      between operations, rather than mutual exclusion, but IMHO not worth the
      work.
      * Fixed a race between Open() (Initialize()) and CreateNewBackup() for
      different objects on the same backup_dir, where Initialize() could
      delete the temporary meta file created during CreateNewBackup().
      (This was found by the new test.)
      
      Also cleaned up a couple of "status checked" TODOs, and improved a
      checksum mismatch error message to include involved files.
      
      Potential follow-up work:
      * CreateNewBackup has an API wart because it doesn't tell you the
      BackupID it just created, which makes it of limited use in a multithreaded
      setting.
      * We could also consider a Refresh() function to catch up to
      changes made from another BackupEngine object to the same dir.
      * Use a lock file to prevent multiple writer BackupEngines, but this
      won't work on remote filesystems not supporting lock files.
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8115
      
      Test Plan:
      new mini-stress test in backup unit tests, run with gcc,
      clang, ASC, TSAN, and UBSAN, 100 iterations each.
      
      Reviewed By: ajkr
      
      Differential Revision: D27347589
      
      Pulled By: pdillinger
      
      fbshipit-source-id: 28d82ed2ac672e44085a739ddb19d297dad14b15
      ec11c23c
    • I
      Adding safer permissions to PosixFilesystem::NewLogger (#8106) · 04191e1c
      Imanol-Mikel Barba Sabariego 提交于
      Summary:
      We have observed rocksdb databases creating info log files with world-writeable permissions.
      
      The reason why the file is created like so is because stdio streams opened with fopen calls use mode 0666, and while normally most systems have a umask of 022, in some occasions (for instance, while running daemons), you may find that the application is running with a less restrictive umask. The result is that when opening the DB, the LOG file would be created with world-writeable perms:
      
      ```
      $ ls -lh db/
      total 6.4M
      -rw-r--r-- 1 ibarba users  115 Mar 24 17:41 000004.log
      -rw-r--r-- 1 ibarba users   16 Mar 24 17:41 CURRENT
      -rw-r--r-- 1 ibarba users   37 Mar 24 17:41 IDENTITY
      -rw-r--r-- 1 ibarba users    0 Mar 24 17:41 LOCK
      -rw-rw-r-- 1 ibarba users 114K Mar 24 17:41 LOG
      -rw-r--r-- 1 ibarba users  514 Mar 24 17:41 MANIFEST-000003
      -rw-r--r-- 1 ibarba users  31K Mar 24 17:41 OPTIONS-000018
      -rw-r--r-- 1 ibarba users  31K Mar 24 17:41 OPTIONS-000020
      ```
      
      This diff replaces the fopen call with a regular open() call restricting mode, and then using fdopen to associate an stdio stream with that file descriptor. Resulting in the following files being created:
      
      ```
      -rw-r--r-- 1 ibarba users   58 Mar 24 18:16 000004.log
      -rw-r--r-- 1 ibarba users   16 Mar 24 18:16 CURRENT
      -rw-r--r-- 1 ibarba users   37 Mar 24 18:16 IDENTITY
      -rw-r--r-- 1 ibarba users    0 Mar 24 18:16 LOCK
      -rw-r--r-- 1 ibarba users 111K Mar 24 18:16 LOG
      -rw-r--r-- 1 ibarba users  514 Mar 24 18:16 MANIFEST-000003
      -rw-r--r-- 1 ibarba users  31K Mar 24 18:16 OPTIONS-000018
      -rw-r--r-- 1 ibarba users  31K Mar 24 18:16 OPTIONS-000020
      ```
      
      With the correct permissions
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8106
      
      Reviewed By: akankshamahajan15
      
      Differential Revision: D27415377
      
      Pulled By: mrambacher
      
      fbshipit-source-id: 97ac6c215700a7ea306f4a1fdf9fcf64a3cbb202
      04191e1c
    • J
      Compaction should not move data to up level (#8116) · a037bb35
      Jay Zhuang 提交于
      Summary: Pull Request resolved: https://github.com/facebook/rocksdb/pull/8116
      
      Reviewed By: ajkr, mrambacher
      
      Differential Revision: D27353828
      
      Pulled By: jay-zhuang
      
      fbshipit-source-id: 42703fb01b04d92cc097d7979e64798448852e88
      a037bb35
    • A
      range_tree requires GNU libc on ppc64 (#8070) · 24b7ebee
      Adam Retter 提交于
      Summary:
      If the platform is ppc64 and the libc is not GNU libc, then we exclude the range_tree from compilation.
      
      See https://jira.percona.com/browse/PS-7559
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8070
      
      Reviewed By: jay-zhuang
      
      Differential Revision: D27246004
      
      Pulled By: mrambacher
      
      fbshipit-source-id: 59d8433242ce7ce608988341becb4f83312445f5
      24b7ebee
    • K
      Fix comment spelling (#7960) · 25ae3807
      kshair 提交于
      Summary:
      terated -> treated
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/7960
      
      Reviewed By: ajkr
      
      Differential Revision: D26677005
      
      Pulled By: zhichao-cao
      
      fbshipit-source-id: 6221305afb263aa60f674a4113aa30cb8f3914e6
      25ae3807
    • M
      Fix check in db_bench for num shard bits to match check in LRUCache (#8110) · 1be38676
      mrambacher 提交于
      Summary:
      The check in db_bench for table_cache_numshardbits was 0 < bits <= 20, whereas the check in LRUCache was 0 < bits < 20.  Changed the two values to match to avoid a crash in db_bench on a null cache.
      
      Fixes https://github.com/facebook/rocksdb/issues/7393
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8110
      
      Reviewed By: zhichao-cao
      
      Differential Revision: D27353522
      
      Pulled By: mrambacher
      
      fbshipit-source-id: a414bd23b5bde1f071146b34cfca5e35c02de869
      1be38676
    • Y
      fix typo (#8118) · 70e80c91
      yaphet 提交于
      Summary: Pull Request resolved: https://github.com/facebook/rocksdb/pull/8118
      
      Reviewed By: ajkr
      
      Differential Revision: D27367488
      
      Pulled By: zhichao-cao
      
      fbshipit-source-id: 6ed598c74ab9232f2e56326b3a30476d473699d7
      70e80c91
  7. 29 3月, 2021 4 次提交
    • M
      Fix spelling in comments in include/rocksdb/ (#8120) · 524b10bd
      mrambacher 提交于
      Summary:
      Ran a spell check over the comments in the include/rocksdb directory and fixed any mis-spellings.
      
      There are still some variable names that are spelled incorrectly (like SizeApproximationOptions::include_memtabtles, SstFileMetaData::oldest_ancester_time) that were not fixed, as those would break compilation.
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8120
      
      Reviewed By: zhichao-cao
      
      Differential Revision: D27366034
      
      Pulled By: mrambacher
      
      fbshipit-source-id: 6a3f3674890bb6acc751e9c5887a8fbb6adca5df
      524b10bd
    • Y
      Disable partitioned filters in ts stress test (#8127) · ae7a7956
      Yanqin Jin 提交于
      Summary:
      Currently, partitioned filter does not support user-defined timestamp. Disable it for now in ts stress test so that
      the contrun jobs can proceed.
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8127
      
      Test Plan: make crash_test_with_ts
      
      Reviewed By: ajkr
      
      Differential Revision: D27388488
      
      Pulled By: riversand963
      
      fbshipit-source-id: 5ccff18121cb537bd82f2ac072cd25efb625c666
      ae7a7956
    • M
      Fix make tags to not rebuild all the object files (#8097) · 5841bbe3
      mrambacher 提交于
      Summary:
      Because build_version.cc is dependent on the library objects (to force a re-generation of it), the library objects would be built in order to satisfy this rule.  Because there is a build_version.d file, it would need generated and included.
      
      Change the ALL_DEPS/FILES to not include build_version.cc (meaning no .d file for it, which is okay since it is generated).  Also changed the rule on whether or not to generate DEP files to skip tags.
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8097
      
      Reviewed By: ajkr
      
      Differential Revision: D27299815
      
      Pulled By: mrambacher
      
      fbshipit-source-id: 1efbe8a56d062f57ae13b6c2944ad3faf775087e
      5841bbe3
    • A
      Always truncate the latest WAL file on DB Open (#8122) · 7d7f1448
      anand76 提交于
      Summary:
      Currently, we only truncate the latest alive WAL files when the DB is opened. If the latest WAL file is empty or was flushed during Open, its not truncated since the file will be deleted later on in the Open path. However, before deletion, a new WAL file is created, and if the process crash loops between the new WAL file creation and deletion of the old WAL file, the preallocated space will keep accumulating and eventually use up all disk space. To prevent this, always truncate the latest WAL file, even if its empty or the data was flushed.
      
      Tests:
      Add unit tests to db_wal_test
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8122
      
      Reviewed By: riversand963
      
      Differential Revision: D27366132
      
      Pulled By: anand1976
      
      fbshipit-source-id: f923cc03ef033ccb32b140d36c6a63a8152f0e8e
      7d7f1448
  8. 27 3月, 2021 7 次提交
  9. 26 3月, 2021 4 次提交
    • L
      Introduce a ThreadGuard class and use it in ExternalSSTFileTest.PickedLevelBug (#8112) · 303cb23a
      Levi Tamasi 提交于
      Summary:
      The patch adds a resource management/RAII class called `ThreadGuard`,
      which can be used to ensure that the managed thread is joined when the
      `ThreadGuard` is destroyed, regardless of whether it is due to the
      object going out of scope, an early return, an exception etc. This is
      important because if an `std::thread` object is destroyed without having
      been joined (or detached) first, the process is aborted (via
      `std::terminate`).
      
      For now, `ThreadGuard` is only used in the test case
      `ExternalSSTFileTest.PickedLevelBug`; however, it could come in handy
      elsewhere in the codebase as well (both in test code and "real" code).
      Case in point: in the `PickedLevelBug` test case, with the earlier code we
      could end up in the above situation when the following assertion (which is
      before the threads are joined) is triggered:
      
      ```
      ASSERT_FALSE(bg_compact_started.load());
      ```
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8112
      
      Test Plan:
      ```
      make check
      gtest-parallel --repeat=10000 ./external_sst_file_test --gtest_filter="*PickedLevelBug"
      ```
      
      Reviewed By: riversand963
      
      Differential Revision: D27343185
      
      Pulled By: ltamasi
      
      fbshipit-source-id: 2a8c3aa68bc78cc03ec0dbae909fb25c2cd15c69
      303cb23a
    • Z
      Fix flush no wal IO error bug (#8107) · af80a78b
      Zhichao Cao 提交于
      Summary:
      There is bug in the current code base introduced in https://github.com/facebook/rocksdb/issues/8049 , we still set the SST file write IO Error only case as hard error. Fix it by removing the logic.
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8107
      
      Test Plan: make check, error_handler_fs_test
      
      Reviewed By: anand1976
      
      Differential Revision: D27321422
      
      Pulled By: zhichao-cao
      
      fbshipit-source-id: c014afc1553ca66b655e3bbf9d0bf6eb417ccf94
      af80a78b
    • S
      Fix some typos in comments (#8066) · 711881bc
      storagezhang 提交于
      Summary: Pull Request resolved: https://github.com/facebook/rocksdb/pull/8066
      
      Reviewed By: jay-zhuang
      
      Differential Revision: D27280799
      
      Pulled By: mrambacher
      
      fbshipit-source-id: 68f91f5af4ffe0a84be581961bf9366887f47702
      711881bc
    • A
      Apply `sample_for_compression` to all block-based tables (#8105) · c20a7cd6
      Andrew Kryczka 提交于
      Summary:
      Previously it only applied to block-based tables generated by flush. This restriction
      was undocumented and blocked a new use case. Now compression sampling
      applies to all block-based tables we generate when it is enabled.
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8105
      
      Test Plan: new unit test
      
      Reviewed By: riversand963
      
      Differential Revision: D27317275
      
      Pulled By: ajkr
      
      fbshipit-source-id: cd9fcc5178d6515e8cb59c6facb5ac01893cb5b0
      c20a7cd6
  10. 25 3月, 2021 3 次提交
  11. 24 3月, 2021 1 次提交
    • P
      Improve bloom_test bits_per_key flag (#8093) · da6b90ab
      Peter Dillinger 提交于
      Summary:
      Improved handling of -bits_per_key other than 10, but at least
      the OptimizeForMemory test is simply not designed for generally handling
      other settings. (ribbon_test does have a statistical framework for this
      kind of testing, but it's not important to do that same for Bloom right
      now.)
      
      Closes https://github.com/facebook/rocksdb/issues/7019
      
      Pull Request resolved: https://github.com/facebook/rocksdb/pull/8093
      
      Test Plan: for I in `seq 1 20`; do ./bloom_test --gtest_filter=-*OptimizeForMemory* --bits_per_key=$I &> /dev/null || echo FAILED; done
      
      Reviewed By: mrambacher
      
      Differential Revision: D27275875
      
      Pulled By: pdillinger
      
      fbshipit-source-id: 7362e8ac2c41ea11f639412e4f30c8b375f04388
      da6b90ab