1. 24 Sep, 2016 2 commits
    • Yi Wu's avatar
      Split DBOptions into ImmutableDBOptions and MutableDBOptions · 9ed928e7
      Yi Wu authored
      Summary: Use ImmutableDBOptions/MutableDBOptions internally and DBOptions only for user-facing APIs. MutableDBOptions is barely a placeholder for now. I'll start to move options to MutableDBOptions in following diffs.
      
      Test Plan:
        make all check
      
      Reviewers: yhchiang, IslamAbdelRahman, sdong
      
      Reviewed By: sdong
      
      Subscribers: andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D64065
      9ed928e7
    • yiwu-arbug's avatar
      Recover same sequence id from WAL (#1350) · 4bc8c88e
      yiwu-arbug authored
      Summary:
      Revert the behavior where we don't read sequence id from WAL, but increase it as we replay the log. We still keep the behave for 2PC for now but will fix later.
      
      This change fixes github issue 1339, where some writes come with WAL disabled and we may recover records with wrong sequence id.
      
      Test Plan: Added unit test.
      
      Subscribers: andrewkr, dhruba
      
      Differential Revision: https://reviews.facebook.net/D64275
      4bc8c88e
  2. 23 Sep, 2016 1 commit
    • Aaron Gao's avatar
      add cfh deletion started listener · 0a1bd9c5
      Aaron Gao authored
      Summary: add ColumnFamilyHandleDeletionStarted listener which can be called when user deletes handler.
      
      Test Plan: ./listener_test
      
      Reviewers: yiwu, IslamAbdelRahman, sdong, andrewkr
      
      Reviewed By: andrewkr
      
      Subscribers: andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D60717
      0a1bd9c5
  3. 22 Sep, 2016 4 commits
  4. 21 Sep, 2016 4 commits
  5. 20 Sep, 2016 3 commits
    • sdong's avatar
      DBImpl::GetWalPreallocateBlockSize() should return size_t · d78a4401
      sdong authored
      Summary: WritableFile::SetPreallocationBlockSize() requires parameter as size_t, and options used in DBImpl::GetWalPreallocateBlockSize() are all size_t. WritableFile::SetPreallocationBlockSize() should return size_t to avoid build break if size_t is not uint64_t.
      
      Test Plan: Run existing tests.
      
      Reviewers: andrewkr, IslamAbdelRahman, yiwu
      
      Reviewed By: yiwu
      
      Subscribers: leveldb, andrewkr, dhruba
      
      Differential Revision: https://reviews.facebook.net/D64137
      d78a4401
    • Islam AbdelRahman's avatar
      Retry getting arcanist token on failure · 42ac9c5f
      Islam AbdelRahman authored
      Summary:
      Many of our diffs dont have sandcastle tests because we failed to load arcanist token file (loaded over the network)
      this diff try for at least 5 seconds (once every 0.2 second) to load the file instead of failing the first time the file is not found
      This will make it less probable that diffs are submitted without sandcastle tests
      
      Test Plan: arc diff --preview
      
      Reviewers: kradhakrishnan, gunnarku, sdong
      
      Reviewed By: sdong
      
      Subscribers: andrewkr, dhruba
      
      Differential Revision: https://reviews.facebook.net/D63951
      42ac9c5f
    • sdong's avatar
      Consider more factors when determining preallocation size of WAL files · b666f854
      sdong authored
      Summary: Currently the WAL file preallocation size is 1.1 * write_buffer_size. This, however, will be over-estimated if options.db_write_buffer_size or options.max_total_wal_size is set and is much smaller.
      
      Test Plan: Add a unit test.
      
      Reviewers: andrewkr, yiwu
      
      Reviewed By: yiwu
      
      Subscribers: leveldb, andrewkr, dhruba
      
      Differential Revision: https://reviews.facebook.net/D63957
      b666f854
  6. 18 Sep, 2016 1 commit
  7. 17 Sep, 2016 3 commits
  8. 16 Sep, 2016 4 commits
    • Yi Wu's avatar
      Fix DBOptionsTest.GetLatestOptions · 8d9bf5c4
      Yi Wu authored
      Summary: RandomInitCFOptions will allocate a new compaction filter, which we have to delete afterward.
      
      Test Plan: valgrind against the test
      
      Reviewers: IslamAbdelRahman
      
      Reviewed By: IslamAbdelRahman
      
      Subscribers: andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D64011
      8d9bf5c4
    • Yi Wu's avatar
      Fix DBWALTest.RecoveryWithLogDataForSomeCFs with mac · 40cfa3e0
      Yi Wu authored
      Summary: Seems there's no std::array on mac+clang. Use raw array instead.
      
      Test Plan: run ./db_wal_test on mac.
      
      Reviewers: andrewkr
      
      Reviewed By: andrewkr
      
      Subscribers: andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D64005
      40cfa3e0
    • Andrew Kryczka's avatar
      Fix recovery for WALs without data for all CFs · 06b4785f
      Andrew Kryczka authored
      Summary:
      if one or more CFs had no data in the WAL, the log number that's used
      by FindObsoleteFiles() wasn't updated. We need to treat this case the same as
      if the data for that WAL had been flushed.
      
      Test Plan: new unit test
      
      Reviewers: IslamAbdelRahman, yiwu, sdong
      
      Reviewed By: sdong
      
      Subscribers: andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D63963
      06b4785f
    • Andrew Kryczka's avatar
      Fix GetSortedWalFiles when log recycling enabled · d7242ff4
      Andrew Kryczka authored
      Summary:
      Previously the sequence number was mistakenly passed in an argument
      where the log number should go. This caused the reader to assume the old WAL
      format was used, which is incompatible with the WAL recycling format.
      
      Test Plan:
      new unit test, verified it fails before this change and passes
      afterwards.
      
      Reviewers: yiwu, lightmark, IslamAbdelRahman, sdong
      
      Reviewed By: sdong
      
      Subscribers: andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D63987
      d7242ff4
  9. 15 Sep, 2016 5 commits
  10. 14 Sep, 2016 6 commits
    • Yi Wu's avatar
      Refactor GetMutableOptionsFromStrings · 8e061f97
      Yi Wu authored
      Summary: Add mutable options info into `OptionsTypeInfo` and use it to parse mutable options map. Also support `max_bytes_for_level_multiplier_additional` in option file.
      
      Test Plan: unit test
      
      Reviewers: yhchiang, IslamAbdelRahman, sdong
      
      Reviewed By: sdong
      
      Subscribers: andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D63843
      8e061f97
    • Yi Wu's avatar
      Refactor MutableCFOptions · 81747f1b
      Yi Wu authored
      Summary:
      * Change constructor of MutableCFOptions to depends only on ColumnFamilyOptions.
      * Move `max_subcompactions`, `compaction_options_fifo` and `compaction_pri` to ImmutableCFOptions to make it clear that they are immutable.
      
      Test Plan: existing unit tests.
      
      Reviewers: yhchiang, IslamAbdelRahman, sdong
      
      Reviewed By: sdong
      
      Subscribers: andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D63945
      81747f1b
    • Islam AbdelRahman's avatar
      Support POSIX RandomRWFile · ba65c816
      Islam AbdelRahman authored
      Summary:
      Add Env::RandomRWFile in env.h and implement it for POSIX
      RandomRWFile is a file that allow us to read from / write to random offsets in the file
      
      I will implement it for other Envs later after finishing the whole task for AddFile()
      
      Test Plan: unit tests
      
      Reviewers: andrewkr, kradhakrishnan, sdong
      
      Reviewed By: sdong
      
      Subscribers: andrewkr, dhruba
      
      Differential Revision: https://reviews.facebook.net/D62433
      ba65c816
    • Joel Marcey's avatar
      Create CNAME · 1d980a8e
      Joel Marcey authored
      1d980a8e
    • Joel Marcey's avatar
      Add API links to the header bar · 2adab1dd
      Joel Marcey authored
      Summary:
      Until we get new API infra for gh-pages, this will point to the C++ headers and Java
      files, respectively for API information.
      
      Test Plan:
      Visual
      
      https://www.facebook.com/pxlcld/pwzQ
      
      Reviewers: lgalanis, sdong
      
      Reviewed By: sdong
      
      Subscribers: andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D63771
      2adab1dd
    • Joel Marcey's avatar
      Preserve blog comments in markdown · a182b298
      Joel Marcey authored
      Summary:
      While we won't have new comments when we move to gh-pages (for now), this preserves
      the current comments in markdown format.
      
      Test Plan:
      Visual
      
      https://www.facebook.com/pxlcld/pwCR
      
      Reviewers: lgalanis, sdong
      
      Reviewed By: sdong
      
      Subscribers: jamesgpearce, andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D63783
      a182b298
  11. 13 Sep, 2016 5 commits
  12. 10 Sep, 2016 1 commit
  13. 09 Sep, 2016 1 commit