1. 28 1月, 2015 8 次提交
  2. 27 1月, 2015 5 次提交
    • S
      Rename DBImpl::log_dir_unsynced_ to log_dir_synced_ · be8f0b12
      sdong 提交于
      Summary: log_dir_unsynced_ is a confusing name. Rename it to log_dir_synced_ and flip the value.
      
      Test Plan: Run ./fault_injection_test
      
      Reviewers: rven, yhchiang, igor
      
      Reviewed By: igor
      
      Subscribers: leveldb, dhruba
      
      Differential Revision: https://reviews.facebook.net/D32235
      be8f0b12
    • S
      fault_injection_test: add a test case to drop random number of unsynced data · c1de6c42
      sdong 提交于
      Summary: Currently fault_injection_test has a test case to drop all the unsynced data. Add one more case to take a randomized bytes from it.
      
      Test Plan: Run the test
      
      Reviewers: rven, yhchiang, igor
      
      Reviewed By: igor
      
      Subscribers: leveldb, dhruba
      
      Differential Revision: https://reviews.facebook.net/D32229
      c1de6c42
    • S
      Sync WAL Directory and DB Path if different from DB directory · d888c957
      sdong 提交于
      Summary:
      1. If WAL directory is different from db directory. Sync the directory after creating a log file under it.
      2. After creating an SST file, sync its parent directory instead of DB directory.
      3. change the check of kResetDeleteUnsyncedFiles in fault_injection_test. Since we changed the behavior to sync log files' parent directory after first WAL sync, instead of creating, kResetDeleteUnsyncedFiles will not guarantee to show post sync updates.
      
      Test Plan: make all check
      
      Reviewers: yhchiang, rven, igor
      
      Reviewed By: igor
      
      Subscribers: leveldb, dhruba
      
      Differential Revision: https://reviews.facebook.net/D32067
      d888c957
    • I
      Fix valgrind · 58f34edf
      Igor Canadi 提交于
      58f34edf
    • I
      Fix data race #1 · f1c88624
      Igor Canadi 提交于
      Summary:
      This is first in a series of diffs that fixes data races detected by thread sanitizer.
      
      Here the problem is that we call Ref() on a column family during a single-threaded write, without holding a mutex.
      
      Test Plan: TSAN is no longer complaining about LevelLimitReopen.
      
      Reviewers: yhchiang, rven, sdong
      
      Reviewed By: sdong
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D32121
      f1c88624
  3. 26 1月, 2015 1 次提交
  4. 24 1月, 2015 11 次提交
    • F
      [RocksJava] Fix native library loader · e61f38e5
      fyrz 提交于
      Summary:
      Prior to this the native library loader instance didn`t
      care about a state. So if library loading was called multiple
      times, multiple copies of the shared object were put into
      the tmp folder and loaded into the JVM.
      
      This changed within this commit to the following behavior:
      
      - library loading is now synchronized
      - library is loaded within the first call
      - if loading was successful the library loaded sets a flag
      - every subsequent call checks for a boolean flag indicating if there was
        already a successful attempt
      
      Test Plan:
      - Execute example and watch tmp folder while the example is running
      
      - After this patch only one shared object will be in the tmp folder
      
      Usual tests:
      - make rocksdbjava jtest
      - mvn -f rocksjni.pom package
      
      Reviewers: adamretter, ankgup87, yhchiang
      
      Subscribers: dhruba
      
      Differential Revision: https://reviews.facebook.net/D32133
      e61f38e5
    • I
      Fix assert in histogramData · 26b50783
      Igor Canadi 提交于
      26b50783
    • I
      Fix data race #2 · 42189612
      Igor Canadi 提交于
      Summary: We should not be calling InternalStats methods outside of the mutex.
      
      Test Plan:
      COMPILE_WITH_TSAN=1 m db_test && ROCKSDB_TESTS=CompactionTrigger ./db_test
      
      failing before the diff, works now
      
      Reviewers: yhchiang, rven, sdong
      
      Reviewed By: sdong
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D32127
      42189612
    • I
      Fix archive WAL race conditions · f5a83983
      Igor Canadi 提交于
      Summary: More race condition bugs with our archive WAL files. I do believe this caused t5988326, but can't reproduce the failure unfortunately.
      
      Test Plan: make check
      
      Reviewers: yhchiang, rven, sdong
      
      Reviewed By: sdong
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D32103
      f5a83983
    • S
      fault_injection_test: bring back 3 iteration runs · 43ec4e68
      sdong 提交于
      Summary: 3 iterations were disabled by mistake by one recent commit, causing CLANG build error. Fix it
      
      Test Plan:
      USE_CLANG=1 make fault_injection_test
      and run the test
      
      Reviewers: igor
      
      Reviewed By: igor
      
      Subscribers: leveldb, dhruba
      
      Differential Revision: https://reviews.facebook.net/D32109
      43ec4e68
    • S
      Fix two namings in fault_injection_test.cc · c2e8e8c1
      sdong 提交于
      Summary: fault_injection_test.cc has two variable names not following the convention fix it.
      
      Test Plan: run the test
      
      Reviewers: rven, yhchiang, igor
      
      Reviewed By: igor
      
      Subscribers: leveldb, dhruba
      
      Differential Revision: https://reviews.facebook.net/D32097
      c2e8e8c1
    • S
      fault_injection_test: improvements and add new tests · b4c13a86
      sdong 提交于
      Summary:
      Wrapper classes in fault_injection_test doesn't simulate RocksDB Env behavior close enough. Improve it by:
      (1) when fsync, don't sync parent
      (2) support directory fsync
      (3) support multiple directories
      
      Add test cases of
      (1) persisting by WAL fsync, not just compact range
      (2) different WAL dir
      (3) combination of (1) and (2)
      (4) data directory is not the same as db name.
      
      Test Plan: Run the test and make sure it passes.
      
      Reviewers: rven, yhchiang, igor
      
      Subscribers: leveldb, dhruba
      
      Differential Revision: https://reviews.facebook.net/D32031
      b4c13a86
    • I
      Fix ASAN failure with backupable DB · a52dd002
      Igor Canadi 提交于
      Summary: It looks like ASAN with gcc 4.9 works better than 4.8.1. It detected this possibility of heap buffer overflow. This was in our codebase for a year :)
      
      Test Plan: COMPILE_WITH_ASAN=1 make backupable_db && ./backupable_db
      
      Reviewers: yhchiang, rven, sdong
      
      Reviewed By: sdong
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D32085
      a52dd002
    • I
      Return the build with 4.8.1 · 910186c2
      Igor Canadi 提交于
      Summary: We need this because we build MySQL with 4.8.1.
      
      Test Plan: ROCKSDB_FBCODE_BUILD_WITH_481=1 make check
      
      Reviewers: sdong, yhchiang, rven, yoshinorim
      
      Reviewed By: yoshinorim
      
      Subscribers: jonahcohen, yoshinorim, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D32073
      910186c2
    • I
      Add thread sanitizer · 401d4205
      Igor Canadi 提交于
      Summary: When you compile with COMPILE_WITH_TSAN=1, we will compile the code with -fsanitize=thread. This will resolve bunch of data race issues we might have.
      
      Test Plan: COMPILE_WITH_TSAN=1 m db_test
      
      Reviewers: yhchiang, rven, sdong
      
      Reviewed By: sdong
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D32019
      401d4205
    • I
      Upgrade our compilers · b068f0a6
      Igor Canadi 提交于
      Summary:
      Upgrade gcc to 4.9.1 and clang to dev.
      
      With new compilers I succeeded to run thread sanitizer, too. I'll post output (doesn't look good) and fix some things in separate diffs.
      
      Test Plan: compiles with both g++ and clang
      
      Reviewers: yhchiang, rven, sdong
      
      Reviewed By: sdong
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D32007
      b068f0a6
  5. 23 1月, 2015 14 次提交
  6. 22 1月, 2015 1 次提交