swh:1:snp:5115096b921df712aeb2a08114fede57fb3331fb
- HEAD
- refs/heads/2.2.fb.branch
- refs/heads/2.3.fb.branch
- refs/heads/2.4.fb.branch
- refs/heads/2.5.fb.branch
- refs/heads/2.6.fb.branch
- refs/heads/2.7
- refs/heads/2.7.fb.branch
- refs/heads/2.8.1.fb
- refs/heads/2.8.fb
- refs/heads/2.8.fb.trunk
- refs/heads/3.0.fb
- refs/heads/3.0.fb.branch
- refs/heads/3.1.fb
- refs/heads/3.10.fb
- refs/heads/3.11.fb
- refs/heads/3.12.fb
- refs/heads/3.13.fb
- refs/heads/3.2.fb
- refs/heads/3.3.fb
- refs/heads/3.4.fb
- refs/heads/3.5.fb
- refs/heads/3.6.fb
- refs/heads/3.7.fb
- refs/heads/3.8.fb
- refs/heads/3.9.fb
- refs/heads/4.0.fb
- refs/heads/4.1.fb
- refs/heads/4.10.fb
- refs/heads/4.11.fb
- refs/heads/4.12.fb
- refs/heads/4.13.fb
- refs/heads/4.2.fb
- refs/heads/4.3.fb
- refs/heads/4.4.fb
- refs/heads/4.5.fb
- refs/heads/4.6.fb
- refs/heads/4.7.fb
- refs/heads/4.8.fb
- refs/heads/4.9.fb
- refs/heads/5.0.fb
- refs/heads/5.1.fb
- refs/heads/5.10.fb
- refs/heads/5.11.fb
- refs/heads/5.12.fb
- refs/heads/5.13.fb
- refs/heads/5.13.fb.myrocks
- refs/heads/5.14.fb
- refs/heads/5.14.fb.myrocks
- refs/heads/5.15.fb
- refs/heads/5.16.fb
- refs/heads/5.17.fb
- refs/heads/5.17.fb.myrocks
- refs/heads/5.18.fb
- refs/heads/5.2.fb
- refs/heads/5.3.fb
- refs/heads/5.4.fb
- refs/heads/5.5.fb
- refs/heads/5.6.fb
- refs/heads/5.7.fb
- refs/heads/5.7.fb.myrocks
- refs/heads/5.8.3
- refs/heads/5.8.fb
- refs/heads/5.9.fb
- refs/heads/5.9.fb.myrocks
- refs/heads/6.0.fb
- refs/heads/6.0.fb.myrocks
- refs/heads/6.1.fb
- refs/heads/6.1.fb.myrocks
- refs/heads/6.1.fb.prod201905
- refs/heads/6.10.fb
- refs/heads/6.11.fb
- refs/heads/6.12.fb
- refs/heads/6.13.fb
- refs/heads/6.13.fb.laser
- refs/heads/6.14.fb
- refs/heads/6.14.fb.laser
- refs/heads/6.15.fb
- refs/heads/6.16.fb
- refs/heads/6.17.fb
- refs/heads/6.2.fb
- refs/heads/6.3.fb
- refs/heads/6.3.fb.myrocks
- refs/heads/6.3.fb.myrocks2
- refs/heads/6.3fb
- refs/heads/6.4.fb
- refs/heads/6.5.fb
- refs/heads/6.6.fb
- refs/heads/6.7.fb
- refs/heads/6.8.fb
- refs/heads/6.9.fb
- refs/heads/adaptive
- refs/heads/ajkr-patch-1
- refs/heads/blob_shadow
- refs/heads/bottom-pri-level
- refs/heads/bugfix-build-detect
- refs/heads/checksum_readahead_mmap_fix
- refs/heads/fb-config
- refs/heads/feature/debug-rocksdbjavastatic
- refs/heads/feature/travis-arm64
- refs/heads/fix-release-notes
- refs/heads/fix-write-batch-comment
- refs/heads/format_compatible_4
- refs/heads/getmergeops
- refs/heads/gh-pages-old
- refs/heads/history-update
- refs/heads/hotfix/lambda-capture
- refs/heads/improve-support
- refs/heads/jay-stress
- refs/heads/katherinez-patch-1
- refs/heads/katherinez-patch-2
- refs/heads/master
- refs/heads/pr-sanity-check-as-GHAction
- refs/heads/pr/6062
- refs/heads/ramvadiv-patch-1
- refs/heads/scaffold
- refs/heads/siying-patch-1
- refs/heads/siying-patch-10
- refs/heads/siying-patch-2
- refs/heads/siying-patch-3
- refs/heads/siying-patch-4
- refs/heads/skip_memtable_flush
- refs/heads/testing_ppc_build
- refs/heads/tests
- refs/heads/unused-var
- refs/heads/v6.6.4
- refs/heads/yiwu_stackable
- refs/heads/yuslepukhin
- refs/remotes/origin/5.13.fb
- refs/tags/2.5.fb
- refs/tags/2.6.fb
- refs/tags/3.0.fb
- refs/tags/do-not-use-me2
- refs/tags/rocksdb-3.1
- refs/tags/rocksdb-3.10.2
- refs/tags/rocksdb-3.11
- refs/tags/rocksdb-3.11.1
- refs/tags/rocksdb-3.11.2
- refs/tags/rocksdb-3.2
- refs/tags/rocksdb-3.3
- refs/tags/rocksdb-3.4
- refs/tags/rocksdb-3.5
- refs/tags/rocksdb-3.5.1
- refs/tags/rocksdb-3.6.1
- refs/tags/rocksdb-3.6.2
- refs/tags/rocksdb-3.7
- refs/tags/rocksdb-3.8
- refs/tags/rocksdb-3.9
- refs/tags/rocksdb-3.9.1
- refs/tags/rocksdb-4.1
- refs/tags/rocksdb-5.10.2
- refs/tags/rocksdb-5.10.3
- refs/tags/rocksdb-5.10.4
- refs/tags/rocksdb-5.11.2
- refs/tags/rocksdb-5.11.3
- refs/tags/rocksdb-5.14.3
- refs/tags/rocksdb-5.2.1
- refs/tags/rocksdb-5.3.3
- refs/tags/rocksdb-5.3.4
- refs/tags/rocksdb-5.3.5
- refs/tags/rocksdb-5.3.6
- refs/tags/rocksdb-5.4.10
- refs/tags/rocksdb-5.4.5
- refs/tags/rocksdb-5.4.6
- refs/tags/rocksdb-5.5.2
- refs/tags/rocksdb-5.5.3
- refs/tags/rocksdb-5.5.4
- refs/tags/rocksdb-5.5.5
- refs/tags/rocksdb-5.5.6
- refs/tags/rocksdb-5.6.1
- refs/tags/rocksdb-5.6.2
- refs/tags/rocksdb-5.7.1
- refs/tags/rocksdb-5.7.2
- refs/tags/rocksdb-5.7.3
- refs/tags/rocksdb-5.7.5
- refs/tags/rocksdb-5.8.6
- refs/tags/rocksdb-5.8.7
- refs/tags/rocksdb-5.8.8
- refs/tags/rocksdb-5.9.2
- refs/tags/v4.0
- refs/tags/v4.1
- refs/tags/v5.10.2
- refs/tags/v5.10.3
- refs/tags/v5.10.4
- refs/tags/v5.11.2
- refs/tags/v5.11.3
- refs/tags/v5.13.3
- refs/tags/v5.14.3
- refs/tags/v5.15.10
- refs/tags/v5.18.3
- refs/tags/v5.2.1
- refs/tags/v5.3.3
- refs/tags/v5.3.4
- refs/tags/v5.3.5
- refs/tags/v5.3.6
- refs/tags/v5.4.10
- refs/tags/v5.4.5
- refs/tags/v5.4.6
- refs/tags/v5.5.2
- refs/tags/v5.5.3
- refs/tags/v5.5.4
- refs/tags/v5.5.5
- refs/tags/v5.5.6
- refs/tags/v5.6.1
- refs/tags/v5.6.2
- refs/tags/v5.7.1
- refs/tags/v5.7.2
- refs/tags/v5.7.3
- refs/tags/v5.7.5
- refs/tags/v5.8.6
- refs/tags/v5.8.7
- refs/tags/v5.8.8
- refs/tags/v5.9.2
- refs/tags/v6.0.1
- refs/tags/v6.0.2
- refs/tags/v6.1.1
- refs/tags/v6.1.2
- refs/tags/v6.10.1
- refs/tags/v6.10.2
- refs/tags/v6.11.4
- refs/tags/v6.11.6
- refs/tags/v6.12.6
- refs/tags/v6.12.7
- refs/tags/v6.13.2
- refs/tags/v6.13.3
- refs/tags/v6.14.5
- refs/tags/v6.14.6
- refs/tags/v6.15.4
- refs/tags/v6.2.2
- refs/tags/v6.2.4
- refs/tags/v6.3.6
- refs/tags/v6.4.6
- refs/tags/v6.5.2
- refs/tags/v6.5.3
- refs/tags/v6.6.3
- refs/tags/v6.6.4
- refs/tags/v6.7.3
- refs/tags/v6.8.1
- v6.15.2
- v5.8
- v5.5.1
- v5.4.7
- v5.18.4
- v5.17.2
- v5.16.6
- v5.14.2
- v5.13.4
- v5.13.2
- v5.13.1
- v5.12.5
- v5.12.4
- v5.12.3
- v5.12.2
- v5.1.4
- v5.1.3
- v5.1.2
- v5.0.2
- v5.0.1
- v4.9
- v4.8
- v4.6.1
- v4.5.1
- v4.4.1
- v4.4
- v4.3.1
- v4.3
- v4.2
- v4.13.5
- v4.13
- v4.11.2
- v3.9
- v3.8
- v3.7
- v3.6.1
- v3.5
- v3.4
- v3.3
- v3.2
- v3.13.1
- v3.13
- v3.12.1
- v3.12
- v3.11
- v3.10
- v3.1
- v3.0
- v2.8
- v2.7
- v2.6
- v2.5
- v2.4
- v2.3
- v2.2
- v2.1
- v2.0
- v1.5.9.1
- v1.5.8.2
- v1.5.8.1
- v1.5.8
- v1.5.7
- rocksdb-5.8
- rocksdb-5.4.7
- rocksdb-5.1.4
- rocksdb-5.1.3
- rocksdb-5.1.2
- rocksdb-5.0.2
- rocksdb-5.0.1
- rocksdb-4.9
- rocksdb-4.8
- rocksdb-4.6.1
- rocksdb-4.5.1
- rocksdb-4.4.1
- rocksdb-4.4
- rocksdb-4.3.1
- rocksdb-4.3
- rocksdb-4.2
- rocksdb-4.13.5
- rocksdb-4.13
- rocksdb-4.11.2
- rocksdb-3.10.1
- 2.8.fb
- 2.7.fb
- 2.4.fb
- 2.3.fb
- 2.2.fb
- 2.1.fb
- 2.0.fb
- 1.5.9.fb
- 1.5.9.2.fb
- 1.5.9.1.fb
- 1.5.8.fb
- 1.5.8.2.fb
- 1.5.8.1.fb
- 1.5.7.fb
Permalinks
To reference or cite the objects present in the Software Heritage archive, permalinks based on SoftWare Hash IDentifiers (SWHIDs) must be used.
Select below a type of object currently browsed in order to display its associated SWHID and permalink.
Revision | Author | Date | Message | Commit Date |
---|---|---|---|---|
acef93e | Andrew Kryczka | 30 August 2017, 06:08:32 UTC | Bump version to 5.7.3 | 30 August 2017, 06:08:32 UTC |
cf38a47 | Andrew Kryczka | 30 August 2017, 06:05:48 UTC | update HISTORY.md for DeleteRange bug fix Summary: fixed in #2799 Closes https://github.com/facebook/rocksdb/pull/2805 Differential Revision: D5734324 Pulled By: ajkr fbshipit-source-id: a285d4e84bf1018dc2257fd6c3e7c075a7243263 | 30 August 2017, 06:05:48 UTC |
b722a18 | Huachao Huang | 30 August 2017, 01:27:21 UTC | Fix wrong smallest key of delete range tombstones Summary: Since tombstones are not stored in order, we may get a wrong smallest key if we only consider the first added tombstone. Check https://github.com/facebook/rocksdb/issues/2752 for more details. Closes https://github.com/facebook/rocksdb/pull/2799 Differential Revision: D5728217 Pulled By: ajkr fbshipit-source-id: 4a53edb0ca80d2a9fcf10749e52d47d57d6417d3 | 30 August 2017, 06:04:42 UTC |
2b81d37 | Andrew Kryczka | 30 August 2017, 06:02:34 UTC | fix deleterange with memtable prefix bloom Summary: the range delete tombstones in memtable should be added to the aggregator even when the memtable's prefix bloom filter tells us the lookup key's not there. This bug could cause data to temporarily reappear until the memtable containing range deletions is flushed. Reported in #2743. Closes https://github.com/facebook/rocksdb/pull/2745 Differential Revision: D5639007 Pulled By: ajkr fbshipit-source-id: 04fc6facb6f978340a3f639536f4ca7c0d73dfc9 | 30 August 2017, 06:02:34 UTC |
cfaeb58 | Yi Wu | 15 August 2017, 21:19:55 UTC | Bump version to 5.7.2 | 15 August 2017, 21:19:55 UTC |
62e9418 | Siying Dong | 15 August 2017, 19:51:41 UTC | Fix false removal of tombstone issue in FIFO and kCompactionStyleNone Summary: Similar to the bug fixed by https://github.com/facebook/rocksdb/pull/2726, FIFO with compaction and kCompactionStyleNone during user customized CompactFiles() with output level to be 0 can suffer from the same problem. Fix it by leveraging the bottommost_level_ flag. Closes https://github.com/facebook/rocksdb/pull/2735 Differential Revision: D5626906 Pulled By: siying fbshipit-source-id: 2b148d0461c61dbd986d74655e384419ae442158 | 15 August 2017, 21:12:19 UTC |
03df818 | lxcode | 15 August 2017, 19:17:13 UTC | Fix missing stdlib include required for abort() Summary: If ROCKSDB_LITE is defined, a call to abort() is introduced. This call requires stdlib.h. Build log of unpatched 5.7.1: http://beefy9.nyi.freebsd.org/data/110amd64-default/447974/logs/rocksdb-lite-5.7.1.log Closes https://github.com/facebook/rocksdb/pull/2744 Reviewed By: yiwu-arbug Differential Revision: D5632372 Pulled By: lxcode fbshipit-source-id: b2a8e692bf14ccf1f875f3a00463e87bba310a2b | 15 August 2017, 21:08:44 UTC |
96a092b | Andrew Kryczka | 14 August 2017, 17:27:56 UTC | empty commit | 14 August 2017, 17:27:56 UTC |
d59fdc3 | Andrew Kryczka | 12 August 2017, 02:09:12 UTC | increment patch version for 5.7.1 | 12 August 2017, 02:09:12 UTC |
e96d06c | Andrew Kryczka | 12 August 2017, 01:01:28 UTC | fix deletion dropping in intra-L0 Summary: `KeyNotExistsBeyondOutputLevel` didn't consider L0 files' key-ranges. So if a key only was covered by older L0 files' key-ranges, we would incorrectly drop deletions of that key. This PR just skips the deletion-dropping optimization when output level is L0. Closes https://github.com/facebook/rocksdb/pull/2726 Differential Revision: D5617286 Pulled By: ajkr fbshipit-source-id: 4bff1396b06d49a828ba4542f249191052915bce | 12 August 2017, 02:07:16 UTC |
b86f89f | Yi Wu | 28 July 2017, 21:21:38 UTC | Move blob_db/ttl_extractor.h into blob_db/blob_db.h Summary: Move blob_db/ttl_extractor.h into blob_db/blob_db.h Also exclude TTLExtractor from LITE build. Closes https://github.com/facebook/rocksdb/pull/2665 Differential Revision: D5520009 Pulled By: yiwu-arbug fbshipit-source-id: 4813dcc272c7cc4bf2cdac285256d9a17d78c7b7 | 28 July 2017, 21:39:11 UTC |
48cf039 | Yi Wu | 28 July 2017, 06:16:18 UTC | Blob DB TTL extractor Summary: Introducing blob_db::TTLExtractor to replace extract_ttl_fn. The TTL extractor can be use to extract TTL from keys insert with Put or WriteBatch. Change over existing extract_ttl_fn are: * If value is changed, it will be return via std::string* (rather than Slice*). With Slice* the new value has to be part of the existing value. With std::string* the limitation is removed. * It can optionally return TTL or expiration. Other changes in this PR: * replace `std::chrono::system_clock` with `Env::NowMicros` so that I can mock time in tests. * add several TTL tests. * other minor naming change. Closes https://github.com/facebook/rocksdb/pull/2659 Differential Revision: D5512627 Pulled By: yiwu-arbug fbshipit-source-id: 0dfcb00d74d060b8534c6130c808e4d5d0a54440 | 28 July 2017, 16:41:52 UTC |
c39939d | Yi Wu | 20 July 2017, 21:52:58 UTC | Reduce blob db noisy logging Summary: Remove some of the per-key logging by blob db to reduce noise. Closes https://github.com/facebook/rocksdb/pull/2587 Differential Revision: D5429115 Pulled By: yiwu-arbug fbshipit-source-id: b89328282fb8b3c64923ce48738c16017ce7feaf | 28 July 2017, 16:40:33 UTC |
65afd8a | Siying Dong | 18 July 2017, 19:58:57 UTC | Update java/rocksjni.pom Summary: Closes https://github.com/facebook/rocksdb/pull/2610 Differential Revision: D5445705 Pulled By: siying fbshipit-source-id: d5f97ffdf5bc18b853c3a106755aca96a650e428 | 26 July 2017, 18:31:58 UTC |
6df239c | Siying Dong | 18 July 2017, 18:46:31 UTC | Remove some left-over BSD headers Summary: Closes https://github.com/facebook/rocksdb/pull/2608 Differential Revision: D5444797 Pulled By: siying fbshipit-source-id: 690581d03f37822e059a16085088e8e2d8a45016 | 26 July 2017, 18:31:42 UTC |
54c4b3a | Siying Dong | 17 July 2017, 01:35:39 UTC | Add back the LevelDB license file Summary: Closes https://github.com/facebook/rocksdb/pull/2591 Differential Revision: D5432696 Pulled By: siying fbshipit-source-id: a613230ab916de0b279a65ef429ede65460a8db2 | 26 July 2017, 18:31:29 UTC |
27768b0 | Siying Dong | 16 July 2017, 22:50:14 UTC | Remove the licensing description in CONTRIBUTING.md Summary: Closes https://github.com/facebook/rocksdb/pull/2590 Differential Revision: D5432539 Pulled By: siying fbshipit-source-id: 49902453bba3c95c1fb8354441b2198649e52bf4 | 26 July 2017, 18:31:18 UTC |
8673a8c | Siying Dong | 15 July 2017, 23:03:42 UTC | Change RocksDB License Summary: Closes https://github.com/facebook/rocksdb/pull/2589 Differential Revision: D5431502 Pulled By: siying fbshipit-source-id: 8ebf8c87883daa9daa54b2303d11ce01ab1f6f75 | 26 July 2017, 18:31:01 UTC |
6124420 | Maysam Yabandeh | 26 July 2017, 01:36:29 UTC | Remove the orphan assert on !need_log_sync Summary: We initially had disabled support for write_options.sync when concurrent_prepare_ is set. We later added this support but the statement that asserts this combination is not used was left there. This patch cleans it up. Closes https://github.com/facebook/rocksdb/pull/2642 Differential Revision: D5496101 Pulled By: maysamyabandeh fbshipit-source-id: becbc503446f2a51bee24cc861958c090c724ec2 | 26 July 2017, 14:31:36 UTC |
258fd9a | Maysam Yabandeh | 25 July 2017, 17:17:10 UTC | Release note for partitioned index/filters Summary: Closes https://github.com/facebook/rocksdb/pull/2637 Differential Revision: D5489751 Pulled By: maysamyabandeh fbshipit-source-id: 0298f8960d4f86ce67959616615beee4d802c2e4 | 25 July 2017, 18:20:15 UTC |
1320133 | Islam AbdelRahman | 14 July 2017, 22:36:20 UTC | Make TARGETS file portable Summary: Instead of hard coding the path of the internal repo. Make TARGETS file work anywhere in fbcode Closes https://github.com/facebook/rocksdb/pull/2586 Differential Revision: D5428122 Pulled By: IslamAbdelRahman fbshipit-source-id: 21adec82bfbff14ea93532bee789b5f5bbee5b01 | 14 July 2017, 22:45:36 UTC |
ccf5f08 | Daniel Black | 14 July 2017, 22:12:47 UTC | Set CACHE_LINE_SIZE for s390, PPC, ARM64 Summary: Closes https://github.com/facebook/rocksdb/pull/2579 Differential Revision: D5427667 Pulled By: maysamyabandeh fbshipit-source-id: cd0b076aa0cd38d3554516f01723c548713ece61 | 14 July 2017, 22:13:46 UTC |
67510ee | Daniel Black | 14 July 2017, 15:59:45 UTC | db_crashtest.py: remove need for shell Summary: Before: $ ps -ef build 1713 16 0 Jul11 ? 00:00:00 make crash_test build 3437 1713 0 Jul11 ? 00:00:00 python -u tools/db_crashtest.py --simple blackbox build 3438 3437 0 Jul11 ? 00:00:00 [sh] <defunct> build 3440 1 99 Jul11 ? 5-03:01:25 ./db_stress --max_background_compactions=1 --max_write_buffer_number=3 --sync=0 --reopen=20 --write_buffer_size=33554432 --delpercent=5 --block_size=16384 --allow_concurrent_me After: build 1706 16 0 02:52 ? 00:00:01 make crash_test build 3432 1706 0 02:55 ? 00:00:00 python -u tools/db_crashtest.py --simple blackbox build 4452 3432 99 04:35 ? 00:01:42 ./db_stress --max_background_compactions=1 --max_write_buffer_number=3 --sync=0 --reopen=20 --write_buffer_size=33554432 --delpercent=5 --block_size=16384 --allow_concurr Closes https://github.com/facebook/rocksdb/pull/2571 Differential Revision: D5421580 Pulled By: maysamyabandeh fbshipit-source-id: d6c3970c38ea0fa23da653f4385e8e25d83f5c9f | 14 July 2017, 16:11:03 UTC |
4267eb0 | Maysam Yabandeh | 14 July 2017, 00:02:32 UTC | Remove punit tests Summary: Closes https://github.com/facebook/rocksdb/pull/2577 Differential Revision: D5420460 Pulled By: maysamyabandeh fbshipit-source-id: 83671ec65513f4223044316e28cd6d33e9d5b531 | 14 July 2017, 00:12:20 UTC |
5bfb67d | Yi Wu | 13 July 2017, 23:25:53 UTC | Enable write rate limit for updaterandom benchmark Summary: We have FLAGS_benchmark_write_rate_limit to limit write rate in db_bench, but it was not in use for updaterandom benchmark. Closes https://github.com/facebook/rocksdb/pull/2578 Differential Revision: D5420328 Pulled By: yiwu-arbug fbshipit-source-id: 5fa48c2b88f2f2dc83d615cb9c40c472bc916835 | 13 July 2017, 23:27:38 UTC |
20a691d | Islam AbdelRahman | 13 July 2017, 20:24:43 UTC | Update HISTORY to release 5.7 Summary: Update HISTORY file to release 5.7 Closes https://github.com/facebook/rocksdb/pull/2576 Differential Revision: D5417716 Pulled By: IslamAbdelRahman fbshipit-source-id: 3af5e7dd533607162212cf5d63a0121a07d637cd | 13 July 2017, 20:36:48 UTC |
98d1a55 | Siying Dong | 13 July 2017, 18:58:35 UTC | db_bench to by default verify checksum Summary: Closes https://github.com/facebook/rocksdb/pull/2575 Differential Revision: D5417350 Pulled By: siying fbshipit-source-id: 4bc11e35a7256167a5a7d2f586f2ac74c0deddb0 | 13 July 2017, 19:14:17 UTC |
26ce69b | Yi Wu | 13 July 2017, 17:03:39 UTC | Update blob db to use ROCKS_LOG_* macro Summary: Update blob db to use the newer ROCKS_LOG_* macro. Closes https://github.com/facebook/rocksdb/pull/2574 Differential Revision: D5414526 Pulled By: yiwu-arbug fbshipit-source-id: e428753aa5917e8b435cead2db26df586e5d1def | 13 July 2017, 17:14:04 UTC |
43e4eef | Aaron Gao | 13 July 2017, 01:00:45 UTC | remove unnecessary fadvise Summary: We has to remove this line because previously it is only called when use_os_buffer = false. But now we have direct io to replace it. Closes https://github.com/facebook/rocksdb/pull/2573 Differential Revision: D5412824 Pulled By: yiwu-arbug fbshipit-source-id: 81f3f0cdf94566bfc09ef2ff123e40cddbe36b36 | 13 July 2017, 01:14:41 UTC |
21b17d7 | foolenough | 13 July 2017, 00:56:40 UTC | Fix BlobDB::Get which only get out the value offset Summary: Blob db use StackableDB::get which only get out the value offset, but not the value. Fix by making BlobDB::Get override the designated getter. Closes https://github.com/facebook/rocksdb/pull/2553 Differential Revision: D5396823 Pulled By: yiwu-arbug fbshipit-source-id: 5a7d1cf77ee44490f836a6537225955382296878 | 13 July 2017, 00:57:40 UTC |
70440f7 | 奏之章 | 12 July 2017, 23:49:56 UTC | Add virtual func IsDeleteRangeSupported Summary: this modify allows third-party tables able to support delete range Closes https://github.com/facebook/rocksdb/pull/2035 Differential Revision: D5407973 Pulled By: ajkr fbshipit-source-id: 82e364b7dd5a198660788d59543f15b8f95cc418 | 12 July 2017, 23:58:45 UTC |
7550255 | Daniel Black | 12 July 2017, 19:04:55 UTC | Add JAVAC_ARGS as Makefile variable Summary: Set to "-Xlint:deprecation -Xlint:unchecked" for non-zero DEBUG_LEVEL Shows up a few warnings for later perusal however passes ok. Closes https://github.com/facebook/rocksdb/pull/2557 Differential Revision: D5408104 Pulled By: sagar0 fbshipit-source-id: 02908602e09b46d33b0dfc0ffd4b11954db03c53 | 12 July 2017, 19:12:43 UTC |
7a0b5de | Daniel Black | 12 July 2017, 16:27:12 UTC | Gcc 7 ignored quantifiers Summary: The casting seemed to cause a problem. I think this might increase it to unsigned long. Closes https://github.com/facebook/rocksdb/pull/2562 Differential Revision: D5406842 Pulled By: siying fbshipit-source-id: 736adef31448229a58a1a48bdbe77792f36736e8 | 12 July 2017, 16:41:15 UTC |
000bf0a | Adam Retter | 12 July 2017, 06:19:53 UTC | Improve the design and native object management of Stats in RocksJava Summary: Closes https://github.com/facebook/rocksdb/pull/2551 Differential Revision: D5399288 Pulled By: sagar0 fbshipit-source-id: dd3df2ed6cc5ae612db0998ea746cc29fccf568e | 12 July 2017, 06:31:00 UTC |
269d383 | Islam AbdelRahman | 11 July 2017, 21:23:09 UTC | Bump version to 5.7 Summary: Bump version to 5.7 Closes https://github.com/facebook/rocksdb/pull/2566 Differential Revision: D5400043 Pulled By: IslamAbdelRahman fbshipit-source-id: 74aae4ff143d370d7d89807e5be08a6ab827da40 | 11 July 2017, 21:29:13 UTC |
c32f272 | Yi Wu | 11 July 2017, 21:05:39 UTC | Fixes db_bench with blob db Summary: * Create info log before db open to make blob db able to log to LOG file. * Properly destroy blob db. Closes https://github.com/facebook/rocksdb/pull/2567 Differential Revision: D5400034 Pulled By: yiwu-arbug fbshipit-source-id: a49cfaf4b5c67d42d4cbb872bd5a9441828c17ce | 11 July 2017, 21:14:38 UTC |
fcd99d2 | Daniel Black | 11 July 2017, 17:28:18 UTC | db_bench_tool: fix buffer size Summary: Found by gcc warning: x86_64-pc-linux-gnu-g++ --version x86_64-pc-linux-gnu-g++ (GCC) 7.1.1 20170710 tools/db_bench_tool.cc: In member function 'void rocksdb::Benchmark::RandomWithVerify(rocksdb::ThreadState*)': tools/db_bench_tool.cc:4430:8: error: '%lu' directive output may be truncated writing between 1 and 19 bytes into a region of size between 0 and 66 [-Werror=format-truncation=] void RandomWithVerify(ThreadState* thread) { ^~~~~~~~~~~~~~~~ tools/db_bench_tool.cc:4430:8: note: directive argument in the range [0, 9223372036854775807] tools/db_bench_tool.cc:4492:13: note: 'snprintf' output between 37 and 128 bytes into a destination of size 100 snprintf(msg, sizeof(msg), ~~~~~~~~^~~~~~~~~~~~~~~~~~ "( get:%" PRIu64 " put:%" PRIu64 " del:%" PRIu64 " total:%" \ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PRIu64 " found:%" PRIu64 ")", ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ gets_done, puts_done, deletes_done, readwrites_, found); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cc1plus: all warnings being treated as errors Makefile:1707: recipe for target 'tools/db_bench_tool.o' failed Closes https://github.com/facebook/rocksdb/pull/2558 Differential Revision: D5398703 Pulled By: siying fbshipit-source-id: 6ffa552bbd8b59cfc2c36289f86ff9b9acca8ca6 | 11 July 2017, 17:41:06 UTC |
87128bd | Aaron Gao | 10 July 2017, 23:56:50 UTC | fix regression test Summary: delete the checkout line Closes https://github.com/facebook/rocksdb/pull/2556 Differential Revision: D5394446 Pulled By: lightmark fbshipit-source-id: 4afaf35e7ad0378d12169d13a3131a92b428b5d2 | 11 July 2017, 00:17:31 UTC |
8f927e5 | Giuseppe Ottaviano | 10 July 2017, 19:22:26 UTC | Fix undefined behavior in Hash Summary: Instead of ignoring UBSan checks, fix the negative shifts in Hash(). Also add test to make sure the hash values are stable over time. The values were computed before this change, so the test also verifies the correctness of the change. Closes https://github.com/facebook/rocksdb/pull/2546 Differential Revision: D5386369 Pulled By: yiwu-arbug fbshipit-source-id: 6de4b44461a544d6222cc5d72d8cda2c0373d17e | 10 July 2017, 19:29:24 UTC |
643b787 | Adam Retter | 10 July 2017, 19:08:16 UTC | Added a note about LZ4 compression dependency Summary: Closes https://github.com/facebook/rocksdb/pull/2554 Differential Revision: D5391019 Pulled By: siying fbshipit-source-id: a1d36037ef4c34b9ca77ab2127f3e17242c617cc | 10 July 2017, 19:12:22 UTC |
56656e1 | Sagar Vemuri | 08 July 2017, 03:00:07 UTC | Temporarily disable FIFOCompactionWithTTLTest Summary: FIFOCompactionWithTTLTests are flaky when run in parallel, as there is a time element involved to it. Temporarily disabling them while I investigate a more robust testing solution like, say, mocking time. Closes https://github.com/facebook/rocksdb/pull/2548 Differential Revision: D5386084 Pulled By: sagar0 fbshipit-source-id: 262886b25bdf091021d8553e780443a985e9bac4 | 08 July 2017, 03:12:58 UTC |
b5fb85e | Maysam Yabandeh | 08 July 2017, 01:18:45 UTC | fix valgrind init complaint Summary: Closes https://github.com/facebook/rocksdb/pull/2549 Differential Revision: D5386307 Pulled By: maysamyabandeh fbshipit-source-id: 3032c95c54755053b6450765ec4dacbecb734f9d | 08 July 2017, 01:27:08 UTC |
657df29 | Andrew Kryczka | 08 July 2017, 01:11:53 UTC | Add max_background_jobs to db_bench Summary: As titled. Also fixed an off-by-one error causing us to add one less range deletion than the user specified. Closes https://github.com/facebook/rocksdb/pull/2544 Differential Revision: D5383451 Pulled By: ajkr fbshipit-source-id: cbd5890c33f09bbb5c0c1f4bb952a1add32336e0 | 08 July 2017, 01:13:21 UTC |
a43c053 | Aaron Gao | 07 July 2017, 00:27:57 UTC | remove duplicated utilities/merge_operators/cassandra/test_utils.cc in src.mk Summary: target `utilities/merge_operators/cassandra/test_utils.d' given more than once in the same rule remove the duplicate one Closes https://github.com/facebook/rocksdb/pull/2542 Differential Revision: D5379570 Pulled By: lightmark fbshipit-source-id: 353f38d085e9f627c1b3c53acef7a2c4bc71014d | 07 July 2017, 00:28:57 UTC |
7c4a9e6 | Siying Dong | 06 July 2017, 22:50:56 UTC | Initialize a variable in ldb to make code analysis tool happy Summary: Closes https://github.com/facebook/rocksdb/pull/2529 Differential Revision: D5378787 Pulled By: siying fbshipit-source-id: 801ecacc2804f77cb3c9e5e665829e439db68800 | 06 July 2017, 22:56:57 UTC |
98669b5 | Maysam Yabandeh | 06 July 2017, 15:35:46 UTC | init filters_in_partition_ Summary: Valgrind reports that it is not initialized. Closes https://github.com/facebook/rocksdb/pull/2541 Differential Revision: D5376084 Pulled By: maysamyabandeh fbshipit-source-id: 55c312f4f506863aa0d25ff92c8c34b57f48b860 | 06 July 2017, 15:48:53 UTC |
0013bf1 | Maysam Yabandeh | 06 July 2017, 01:58:38 UTC | fix asan and valgrind leak report in test Summary: Closes https://github.com/facebook/rocksdb/pull/2537 Differential Revision: D5371433 Pulled By: maysamyabandeh fbshipit-source-id: 90d3e8bb1a8576f48b1ddf1bdbba5512b5986ba0 | 06 July 2017, 02:11:39 UTC |
521b4c2 | Aaron Gao | 05 July 2017, 23:35:46 UTC | rocksdb 5.5.1 release post Summary: https://github.com/facebook/rocksdb/releases/tag/v5.5.1 Closes https://github.com/facebook/rocksdb/pull/2522 Differential Revision: D5365355 Pulled By: lightmark fbshipit-source-id: 63371a98ebc7429766fd86dc27c1ea35950c98f5 | 05 July 2017, 23:41:30 UTC |
3304257 | Andrew Kryczka | 05 July 2017, 19:02:00 UTC | Fix GetCurrentTime() initialization for valgrind Summary: Valgrind had false positive complaints about the initialization pattern for `GetCurrentTime()`'s argument in #2480. We can instead have the client initialize the time variable before calling `GetCurrentTime()`, and have `GetCurrentTime()` promise to only overwrite it in success case. Closes https://github.com/facebook/rocksdb/pull/2526 Differential Revision: D5358689 Pulled By: ajkr fbshipit-source-id: 857b189f24c19196f6bb299216f3e23e7bc4be42 | 05 July 2017, 19:12:00 UTC |
f6b9d93 | Maysam Yabandeh | 05 July 2017, 18:07:29 UTC | Fix clang error in PartitionedFilterBlockBuilder Summary: Closes https://github.com/facebook/rocksdb/pull/2536 Differential Revision: D5371271 Pulled By: maysamyabandeh fbshipit-source-id: f1355ac658a79c9982a24986f0925c9e24fc39d5 | 05 July 2017, 18:16:04 UTC |
45b9bb0 | Maysam Yabandeh | 02 July 2017, 17:36:10 UTC | Cut filter partition based on metadata_block_size Summary: Currently metadata_block_size controls only index partition size. With this patch a partition is cut after any of index or filter partitions reaches metadata_block_size. Closes https://github.com/facebook/rocksdb/pull/2452 Differential Revision: D5275651 Pulled By: maysamyabandeh fbshipit-source-id: 5057e4424b4c8902043782e6bf8c38f0c4f25160 | 02 July 2017, 17:42:12 UTC |
f4ae1ba | Andrew Kryczka | 30 June 2017, 23:45:44 UTC | update history for OnBackgroundError and DeleteRange fix Summary: Mentioned changes: - #2477 - #2503 Closes https://github.com/facebook/rocksdb/pull/2528 Differential Revision: D5360185 Pulled By: ajkr fbshipit-source-id: 59d6ae465bcb0aa0a739317581fa3fc7871c6de6 | 30 June 2017, 23:57:57 UTC |
1cb8c6d | Siying Dong | 30 June 2017, 22:21:02 UTC | Add -enable_pipelined_write to db_bench and add two defaults Summary: Expose pipeline write in db_bench and change the default to parallel memtable inserts Closes https://github.com/facebook/rocksdb/pull/2527 Differential Revision: D5359825 Pulled By: siying fbshipit-source-id: e30755feb07ff19a731c4058acf101e02de4e197 | 30 June 2017, 22:27:03 UTC |
7604b46 | Maysam Yabandeh | 30 June 2017, 17:48:03 UTC | Update the AddDBStats in LITE Summary: Closes https://github.com/facebook/rocksdb/pull/2525 Differential Revision: D5356859 Pulled By: maysamyabandeh fbshipit-source-id: f593adad2a8aab12dcd6ab25db076eca51d30d34 | 30 June 2017, 17:56:50 UTC |
1e34d07 | Maysam Yabandeh | 30 June 2017, 16:30:03 UTC | Simplify and document sync rules for logs_ etc Summary: Adding/Correcting inline comments and clarify the sync rules. To make it simple to reason, the rules are a big general which ended up to some extra synchronizations. However such synchronizations are not on the fast path, and they are worth the simplicity. Closes https://github.com/facebook/rocksdb/pull/2517 Differential Revision: D5348239 Pulled By: maysamyabandeh fbshipit-source-id: ff2e59fb1e568c122d2cdbf598310f3613b7d212 | 30 June 2017, 16:42:28 UTC |
d310e0f | Andrew Kryczka | 30 June 2017, 07:00:59 UTC | Regression test for empty dedicated range deletion file Summary: Issue: #2478 Fix: #2503 The bug happened when all of these conditions were satisfied: - A subcompaction generates no keys - `RangeDelAggregator::ShouldAddTombstones()` returns true because there's at least one non-obsoleted range deletion in its map - None of the non-obsolete tombstones overlap with the subcompaction key-range Under those conditions, we were creating a dedicated file for range deletions which was left empty, thus causing an error in VersionEdit. I verified this test case fails before the #2503 fix and passes after. Closes https://github.com/facebook/rocksdb/pull/2521 Differential Revision: D5352568 Pulled By: ajkr fbshipit-source-id: f619cae39984ce9bb9b7a4e7a9ac0f2bb2ce43e9 | 30 June 2017, 07:11:25 UTC |
e9f91a5 | Maysam Yabandeh | 29 June 2017, 23:57:13 UTC | Add a fetch_add variation to AddDBStats Summary: AddDBStats is in two steps of load and store, which is more efficient than fetch_add. This is however not thread-safe. Currently we have to protect concurrent access to AddDBStats with a mutex which is less efficient that fetch_add. This patch adds the option to do fetch_add when AddDBStats. The results for my 2pc benchmark on sysbench is: - vanilla: 68618 tps - removing mutex on AddDBStats (unsafe): 69767 tps - fetch_add for all AddDBStats: 69200 tps - fetch_add only for concurrently access AddDBStats (this patch): 69579 tps Closes https://github.com/facebook/rocksdb/pull/2505 Differential Revision: D5330656 Pulled By: maysamyabandeh fbshipit-source-id: af64d7bee135b0e86b4fac323a4f9d9113eaa383 | 30 June 2017, 00:12:19 UTC |
c1b375e | zhangjinpeng1987 | 29 June 2017, 22:13:02 UTC | skip generating empty sst Summary: When a compaction job output nothing, there is no necessary to generate a empty sst file which will cause `VersionEdit::EncodeTo` failed. ref https://github.com/facebook/rocksdb/issues/2478 Closes https://github.com/facebook/rocksdb/pull/2503 Differential Revision: D5350799 Pulled By: ajkr fbshipit-source-id: df0b4fcf3507fe1c3c435208b762e75478e00143 | 29 June 2017, 22:26:52 UTC |
67b417d | Yi Wu | 29 June 2017, 17:34:22 UTC | fix format compatible test Summary: The comma "," is not a valid separator for bash arrays. Closes https://github.com/facebook/rocksdb/pull/2516 Differential Revision: D5348101 Pulled By: yiwu-arbug fbshipit-source-id: 8f0afdac368e21076eb7366b7df7dbaaf158cf96 | 29 June 2017, 17:42:14 UTC |
afbef65 | Siying Dong | 29 June 2017, 04:37:55 UTC | Bug fix: Fast CRC Support printing is not honest Summary: 11c5d4741a1e11a1315d5ca644ce555e07e91f61 introduces a bug that IsFastCrc32Supported() returns wrong result. Fix it. Also fix some FB internal scripts. Closes https://github.com/facebook/rocksdb/pull/2513 Differential Revision: D5343802 Pulled By: yiwu-arbug fbshipit-source-id: 057dc7ae3b262fe951413d1190ce60afc788cc05 | 29 June 2017, 04:41:42 UTC |
397ab11 | Mike Kolupaev | 29 June 2017, 04:26:03 UTC | Improve Status message for block checksum mismatches Summary: We've got some DBs where iterators return Status with message "Corruption: block checksum mismatch" all the time. That's not very informative. It would be much easier to investigate if the error message contained the file name - then we would know e.g. how old the corrupted file is, which would be very useful for finding the root cause. This PR adds file name, offset and other stuff to some block corruption-related status messages. It doesn't improve all the error messages, just a few that were easy to improve. I'm mostly interested in "block checksum mismatch" and "Bad table magic number" since they're the only corruption errors that I've ever seen in the wild. Closes https://github.com/facebook/rocksdb/pull/2507 Differential Revision: D5345702 Pulled By: al13n321 fbshipit-source-id: fc8023d43f1935ad927cef1b9c55481ab3cb1339 | 29 June 2017, 04:27:01 UTC |
18c63af | Siying Dong | 28 June 2017, 22:36:11 UTC | Make "make analyze" happy Summary: "make analyze" is reporting some errors. It's complicated to look but it seems to me that they are all false positive. Anyway, I think cleaning them up is a good idea. Some of the changes are hacky but I don't know a better way. Closes https://github.com/facebook/rocksdb/pull/2508 Differential Revision: D5341710 Pulled By: siying fbshipit-source-id: 6070e430e0e41a080ef441e05e8ec827d45efab6 | 28 June 2017, 22:42:27 UTC |
01534db | Maysam Yabandeh | 28 June 2017, 20:05:52 UTC | Fix the reported asan issues Summary: This is to resolve the asan complains. In the meanwhile I am working on clarifying/revisiting the sync rules. Closes https://github.com/facebook/rocksdb/pull/2510 Differential Revision: D5338660 Pulled By: yiwu-arbug fbshipit-source-id: ce6f6e0826d43a2c0bfa4328a00c78f73cd6498a | 28 June 2017, 20:13:22 UTC |
1cd45cd | Sagar Vemuri | 28 June 2017, 00:02:20 UTC | FIFO Compaction with TTL Summary: Introducing FIFO compactions with TTL. FIFO compaction is based on size only which makes it tricky to enable in production as use cases can have organic growth. A user requested an option to drop files based on the time of their creation instead of the total size. To address that request: - Added a new TTL option to FIFO compaction options. - Updated FIFO compaction score to take TTL into consideration. - Added a new table property, creation_time, to keep track of when the SST file is created. - Creation_time is set as below: - On Flush: Set to the time of flush. - On Compaction: Set to the max creation_time of all the files involved in the compaction. - On Repair and Recovery: Set to the time of repair/recovery. - Old files created prior to this code change will have a creation_time of 0. - FIFO compaction with TTL is enabled when ttl > 0. All files older than ttl will be deleted during compaction. i.e. `if (file.creation_time < (current_time - ttl)) then delete(file)`. This will enable cases where you might want to delete all files older than, say, 1 day. - FIFO compaction will fall back to the prior way of deleting files based on size if: - the creation_time of all files involved in compaction is 0. - the total size (of all SST files combined) does not drop below `compaction_options_fifo.max_table_files_size` even if the files older than ttl are deleted. This feature is not supported if max_open_files != -1 or with table formats other than Block-based. **Test Plan:** Added tests. **Benchmark results:** Base: FIFO with max size: 100MB :: ``` svemuri@dev15905 ~/rocksdb (fifo-compaction) $ TEST_TMPDIR=/dev/shm ./db_bench --benchmarks=readwhilewriting --num=5000000 --threads=16 --compaction_style=2 --fifo_compaction_max_table_files_size_mb=100 readwhilewriting : 1.924 micros/op 519858 ops/sec; 13.6 MB/s (1176277 of 5000000 found) ``` With TTL (a low one for testing) :: ``` svemuri@dev15905 ~/rocksdb (fifo-compaction) $ TEST_TMPDIR=/dev/shm ./db_bench --benchmarks=readwhilewriting --num=5000000 --threads=16 --compaction_style=2 --fifo_compaction_max_table_files_size_mb=100 --fifo_compaction_ttl=20 readwhilewriting : 1.902 micros/op 525817 ops/sec; 13.7 MB/s (1185057 of 5000000 found) ``` Example Log lines: ``` 2017/06/26-15:17:24.609249 7fd5a45ff700 (Original Log Time 2017/06/26-15:17:24.609177) [db/compaction_picker.cc:1471] [default] FIFO compaction: picking file 40 with creation time 1498515423 for deletion 2017/06/26-15:17:24.609255 7fd5a45ff700 (Original Log Time 2017/06/26-15:17:24.609234) [db/db_impl_compaction_flush.cc:1541] [default] Deleted 1 files ... 2017/06/26-15:17:25.553185 7fd5a61a5800 [DEBUG] [db/db_impl_files.cc:309] [JOB 0] Delete /dev/shm/dbbench/000040.sst type=2 #40 -- OK 2017/06/26-15:17:25.553205 7fd5a61a5800 EVENT_LOG_v1 {"time_micros": 1498515445553199, "job": 0, "event": "table_file_deletion", "file_number": 40} ``` SST Files remaining in the dbbench dir, after db_bench execution completed: ``` svemuri@dev15905 ~/rocksdb (fifo-compaction) $ ls -l /dev/shm//dbbench/*.sst -rw-r--r--. 1 svemuri users 30749887 Jun 26 15:17 /dev/shm//dbbench/000042.sst -rw-r--r--. 1 svemuri users 30768779 Jun 26 15:17 /dev/shm//dbbench/000044.sst -rw-r--r--. 1 svemuri users 30757481 Jun 26 15:17 /dev/shm//dbbench/000046.sst ``` Closes https://github.com/facebook/rocksdb/pull/2480 Differential Revision: D5305116 Pulled By: sagar0 fbshipit-source-id: 3e5cfcf5dd07ed2211b5b37492eb235b45139174 | 28 June 2017, 00:11:48 UTC |
982cec2 | Yi Wu | 27 June 2017, 21:01:14 UTC | Fix TARGETS file tests list Summary: 1. The buckifier script assume each test "foo" comes with a .cc file of the same name (i.e. foo.cc). Update cassandra tests to follow this pattern so that the buckifier script can recognize them. 2. add blob_db_test Closes https://github.com/facebook/rocksdb/pull/2506 Differential Revision: D5331517 Pulled By: yiwu-arbug fbshipit-source-id: 86f3eba471fc621186ab44cbd073b6162cde8e57 | 27 June 2017, 21:12:02 UTC |
b49b371 | Yi Wu | 27 June 2017, 18:25:00 UTC | allow numa >= 2.0.8 Summary: Allow numa >= 2.0.8 in buck TARGET file. Closes https://github.com/facebook/rocksdb/pull/2504 Differential Revision: D5330550 Pulled By: yiwu-arbug fbshipit-source-id: 8ffb6167b4ad913877eac16a20a91023b31f8d41 | 27 June 2017, 18:27:02 UTC |
e517bfa | Siying Dong | 27 June 2017, 17:49:34 UTC | CLANG Tidy Summary: Closes https://github.com/facebook/rocksdb/pull/2502 Differential Revision: D5326498 Pulled By: siying fbshipit-source-id: 2f0ac6dc6ca5ddb23cecf67a278c086e52646714 | 27 June 2017, 18:00:59 UTC |
dc3d2e4 | Yi Wu | 27 June 2017, 17:48:40 UTC | update compatible test Summary: update compatible test to include 5.5 and 5.6 branch. Closes https://github.com/facebook/rocksdb/pull/2501 Differential Revision: D5325220 Pulled By: yiwu-arbug fbshipit-source-id: 5f5271491e6dd2d7b2cf73a7142f38a571553bc4 | 27 June 2017, 18:00:59 UTC |
89468c0 | Siying Dong | 27 June 2017, 00:14:11 UTC | Fix Windows build broken by 5c97a7c0664d4071768113814e9ba71fe87e18cf Summary: A typo conversion fails Windows build. Fix it. Closes https://github.com/facebook/rocksdb/pull/2500 Differential Revision: D5325962 Pulled By: siying fbshipit-source-id: 2cefdafc9afbc85f856f403af7c876b622400630 | 27 June 2017, 00:28:22 UTC |
5177861 | Ewout Prangsma | 26 June 2017, 23:52:06 UTC | Encryption at rest support Summary: This PR adds support for encrypting data stored by RocksDB when written to disk. It adds an `EncryptedEnv` override of the `Env` class with matching overrides for sequential&random access files. The encryption itself is done through a configurable `EncryptionProvider`. This class creates is asked to create `BlockAccessCipherStream` for a file. This is where the actual encryption/decryption is being done. Currently there is a Counter mode implementation of `BlockAccessCipherStream` with a `ROT13` block cipher (NOTE the `ROT13` is for demo purposes only!!). The Counter operation mode uses an initial counter & random initialization vector (IV). Both are created randomly for each file and stored in a 4K (default size) block that is prefixed to that file. The `EncryptedEnv` implementation is such that clients of the `Env` class do not see this prefix (nor data, nor in filesize). The largest part of the prefix block is also encrypted, and there is room left for implementation specific settings/values/keys in there. To test the encryption, the `DBTestBase` class has been extended to consider a new environment variable called `ENCRYPTED_ENV`. If set, the test will setup a encrypted instance of the `Env` class to use for all tests. Typically you would run it like this: ``` ENCRYPTED_ENV=1 make check_some ``` There is also an added test that checks that some data inserted into the database is or is not "visible" on disk. With `ENCRYPTED_ENV` active it must not find plain text strings, with `ENCRYPTED_ENV` unset, it must find the plain text strings. Closes https://github.com/facebook/rocksdb/pull/2424 Differential Revision: D5322178 Pulled By: sdwilsh fbshipit-source-id: 253b0a9c2c498cc98f580df7f2623cbf7678a27f | 26 June 2017, 23:56:24 UTC |
7061912 | Siying Dong | 26 June 2017, 22:53:41 UTC | Trivial typo in HISTORY.md Summary: Closes https://github.com/facebook/rocksdb/pull/2499 Differential Revision: D5324914 Pulled By: siying fbshipit-source-id: c69827d4dddafa81e651180633943a3380cdd5bb | 26 June 2017, 22:57:08 UTC |
2a9cd87 | Yi Wu | 26 June 2017, 22:24:13 UTC | Fix jni WriteBatchThreadedTest Summary: WriteBatchThreadedTest is failing, at least on Mac. The problem seems to be `wb` is getting GC before we finish write. Explicitly close it seems to fix it. Closes https://github.com/facebook/rocksdb/pull/2482 Differential Revision: D5307379 Pulled By: yiwu-arbug fbshipit-source-id: 8ff7f8170451078c941951f5aafae83afffb7933 | 26 June 2017, 22:27:17 UTC |
0025a36 | Aaron Gao | 26 June 2017, 22:13:35 UTC | revert perf_context and io_stats to __thread Summary: https://github.com/facebook/rocksdb/pull/2380 introduces a regression by replacing __thread with ThreadLocalPtr. Revert the thread local implementation back. Closes https://github.com/facebook/rocksdb/pull/2485 Differential Revision: D5308050 Pulled By: lightmark fbshipit-source-id: 2676e9c22edf76e8133d3f4c50e2711e11a95480 | 26 June 2017, 22:27:17 UTC |
5c97a7c | Siying Dong | 26 June 2017, 20:15:55 UTC | Unit Tests for sync, range sync and file close failures Summary: Closes https://github.com/facebook/rocksdb/pull/2454 Differential Revision: D5255320 Pulled By: siying fbshipit-source-id: 0080830fa8eb5da6de25e17ba68aee91018c7913 | 26 June 2017, 20:27:58 UTC |
4cee11f | Andrew Kryczka | 26 June 2017, 20:04:20 UTC | Intra-L0 blog post Summary: as titled Closes https://github.com/facebook/rocksdb/pull/2497 Differential Revision: D5322732 Pulled By: ajkr fbshipit-source-id: 35a648a7af737032949ed99f430f4fd865ac9e9c | 26 June 2017, 20:11:41 UTC |
857e996 | Siying Dong | 26 June 2017, 19:42:21 UTC | Improve the error message for I/O related errors. Summary: Force people to write something other than file name while returning status for IOError. Closes https://github.com/facebook/rocksdb/pull/2493 Differential Revision: D5321309 Pulled By: siying fbshipit-source-id: 38bcf6c19e80831cd3e300a047e975cbb131d822 | 26 June 2017, 19:57:01 UTC |
d757355 | Siying Dong | 26 June 2017, 19:32:52 UTC | Fix bug that flush doesn't respond to fsync result Summary: With a regression bug was introduced two years ago, by https://github.com/facebook/rocksdb/commit/6e9fbeb27c38329f33ae541302c44c8db8374f8c , we fail to check return status of fsync call. This can cause we miss the information from the file system and can potentially cause corrupted data which we could have been detected. Closes https://github.com/facebook/rocksdb/pull/2495 Reviewed By: ajkr Differential Revision: D5321949 Pulled By: siying fbshipit-source-id: c68117914bb40700198fc37d0e4c63163a8a1031 | 26 June 2017, 19:41:48 UTC |
8e6345d | Maysam Yabandeh | 25 June 2017, 01:07:34 UTC | Update rename of ParanoidCheck Summary: Closes https://github.com/facebook/rocksdb/pull/2494 Differential Revision: D5317902 Pulled By: maysamyabandeh fbshipit-source-id: 097330292180816b3d0c9f4cbbdb6f68f0180200 | 25 June 2017, 01:12:03 UTC |
499ebb3 | Maysam Yabandeh | 24 June 2017, 21:06:43 UTC | Optimize for serial commits in 2PC Summary: Throughput: 46k tps in our sysbench settings (filling the details later) The idea is to have the simplest change that gives us a reasonable boost in 2PC throughput. Major design changes: 1. The WAL file internal buffer is not flushed after each write. Instead it is flushed before critical operations (WAL copy via fs) or when FlushWAL is called by MySQL. Flushing the WAL buffer is also protected via mutex_. 2. Use two sequence numbers: last seq, and last seq for write. Last seq is the last visible sequence number for reads. Last seq for write is the next sequence number that should be used to write to WAL/memtable. This allows to have a memtable write be in parallel to WAL writes. 3. BatchGroup is not used for writes. This means that we can have parallel writers which changes a major assumption in the code base. To accommodate for that i) allow only 1 WriteImpl that intends to write to memtable via mem_mutex_--which is fine since in 2PC almost all of the memtable writes come via group commit phase which is serial anyway, ii) make all the parts in the code base that assumed to be the only writer (via EnterUnbatched) to also acquire mem_mutex_, iii) stat updates are protected via a stat_mutex_. Note: the first commit has the approach figured out but is not clean. Submitting the PR anyway to get the early feedback on the approach. If we are ok with the approach I will go ahead with this updates: 0) Rebase with Yi's pipelining changes 1) Currently batching is disabled by default to make sure that it will be consistent with all unit tests. Will make this optional via a config. 2) A couple of unit tests are disabled. They need to be updated with the serial commit of 2PC taken into account. 3) Replacing BatchGroup with mem_mutex_ got a bit ugly as it requires releasing mutex_ beforehand (the same way EnterUnbatched does). This needs to be cleaned up. Closes https://github.com/facebook/rocksdb/pull/2345 Differential Revision: D5210732 Pulled By: maysamyabandeh fbshipit-source-id: 78653bd95a35cd1e831e555e0e57bdfd695355a4 | 24 June 2017, 21:11:29 UTC |
0ac4afb | Maysam Yabandeh | 24 June 2017, 01:18:21 UTC | Sanitize partitioning options Summary: We currently do not support partitioning filters if indexes are not partitioned. The patch makes sure that these two are consistent. Closes https://github.com/facebook/rocksdb/pull/2455 Differential Revision: D5275644 Pulled By: maysamyabandeh fbshipit-source-id: b61701ac8914c2206d06f5e33ff6f67b24406d1d | 24 June 2017, 01:30:01 UTC |
521724b | jsteemann | 23 June 2017, 16:32:11 UTC | fixed wrong type for "allow_compaction" parameter Summary: should be boolean, not uint64_t MSVC complains about it during compilation with error `include\rocksdb\advanced_options.h(77): warning C4800: 'uint64_t': forcing value to bool 'true' or 'false' (performance warning)` Closes https://github.com/facebook/rocksdb/pull/2487 Differential Revision: D5310685 Pulled By: siying fbshipit-source-id: 719a33b3dba4f711aa72e3f229013c188015dc86 | 23 June 2017, 16:41:19 UTC |
71f5bcb | Andrew Kryczka | 23 June 2017, 02:30:39 UTC | Introduce OnBackgroundError callback Summary: Some users want to prevent rocksdb from entering read-only mode in certain error cases. This diff gives them a callback, `OnBackgroundError`, that they can use to achieve it. - call `OnBackgroundError` every time we consider setting `bg_error_`. Use its result to assign `bg_error_` but not to change the function's return status. - classified calls using `BackgroundErrorReason` to give the callback some info about where the error happened - renamed `ParanoidCheck` to something more specific so we can provide a clear `BackgroundErrorReason` - unit tests for the most common cases: flush or compaction errors Closes https://github.com/facebook/rocksdb/pull/2477 Differential Revision: D5300190 Pulled By: ajkr fbshipit-source-id: a0ea4564249719b83428e3f4c6ca2c49e366e9b3 | 23 June 2017, 02:41:50 UTC |
88cd2d9 | Siying Dong | 22 June 2017, 23:16:19 UTC | Downgrade option sanitiy check level for prefix_extractor Summary: With c7004840d2f4ad5fc1bdce042902b822492f3a0e, it's safe to open a DB with different prefix extractor. So it's safe to skip prefix extractor check. Closes https://github.com/facebook/rocksdb/pull/2474 Differential Revision: D5294700 Pulled By: siying fbshipit-source-id: eeb500da795eecb29b8c9c56a14cfd4afda12ecc | 22 June 2017, 23:26:36 UTC |
6837a17 | Siying Dong | 22 June 2017, 22:45:42 UTC | Fix Data Race Between CreateColumnFamily() and GetAggregatedIntProperty() Summary: CreateColumnFamily() releases DB mutex after adding column family to the set and install super version (to write option file), so if users call GetAggregatedIntProperty() in the middle, then super version will be null and the process will crash. Fix it by skipping those column families without super version installed. Maybe we should also fix the problem of releasing the lock when reading option file, but it is more risky. so I'm doing a quick and safer fix and we can investigate it later. Closes https://github.com/facebook/rocksdb/pull/2475 Differential Revision: D5298053 Pulled By: siying fbshipit-source-id: 4b3c8f91c60400b163fcc6cda8a0c77723be0ef6 | 22 June 2017, 22:56:47 UTC |
af17467 | Siying Dong | 21 June 2017, 17:28:54 UTC | WriteBufferManager will not trigger flush if much data is already being flushed Summary: Even if hard limit hits, flushing more memtable may not help cap the memory usage if already more than half data is scheduled for flush. Not triggering flush instead. Closes https://github.com/facebook/rocksdb/pull/2469 Differential Revision: D5284249 Pulled By: siying fbshipit-source-id: 8ab7ba1aba56a634dbe72b318fcab2093063972e | 21 June 2017, 17:41:37 UTC |
9467eb6 | Andrew Kryczka | 20 June 2017, 23:43:09 UTC | Fix flush assertion with tsan Summary: DBImpl's instance variables should only be accessed with mutex held. I moved an assert later to uphold this rule. DBTest.LastWriteBufferDelay test was sporadically failing TSAN because it tried to flush around the same time the db was destroyed, so the variable was accessed simultaneously by two threads. Closes https://github.com/facebook/rocksdb/pull/2471 Differential Revision: D5286857 Pulled By: ajkr fbshipit-source-id: 435abd84efa601f667c254e320b0bb5a434b971f | 20 June 2017, 23:43:44 UTC |
048446f | Andrew Kryczka | 20 June 2017, 20:16:55 UTC | Fix cassandra ASAN use-after-free Summary: When we create a column based on the `string::c_str()`, we need to make sure that char array doesn't get deleted when calls to `string::append()` cause the string to expand. Closes https://github.com/facebook/rocksdb/pull/2470 Differential Revision: D5285049 Pulled By: ajkr fbshipit-source-id: f918dd426ff3c024e7a293dcb10448f10b6c98e8 | 20 June 2017, 20:27:16 UTC |
a21db16 | Dmitri Smirnov | 20 June 2017, 17:16:24 UTC | Implement ReopenWritibaleFile on Windows and other fixes Summary: Make default impl return NoSupported so the db_blob tests exist in a meaningful manner. Replace std::thread to port::Thread Closes https://github.com/facebook/rocksdb/pull/2465 Differential Revision: D5275563 Pulled By: yiwu-arbug fbshipit-source-id: cedf1a18a2c05e20d768c1308b3f3224dbd70ab6 | 20 June 2017, 17:31:13 UTC |
c430d69 | zhangjinpeng1987 | 19 June 2017, 18:39:45 UTC | fix coredump for release nullptr Summary: Coredump will be triggered when ingest external sst file after delete range. ref https://github.com/facebook/rocksdb/issues/2398 Closes https://github.com/facebook/rocksdb/pull/2463 Differential Revision: D5275599 Pulled By: ajkr fbshipit-source-id: 0828dbc062ea8c74e913877cd63494fd3478a30d | 19 June 2017, 18:41:38 UTC |
0d27845 | Andrew Kryczka | 18 June 2017, 19:40:21 UTC | default implementation for InRange Summary: it's confusing to implementors of prefix extractor to implement an unused function Closes https://github.com/facebook/rocksdb/pull/2460 Differential Revision: D5267408 Pulled By: ajkr fbshipit-source-id: 2f1fe3131efc978f6098ae7a80e52bc7a0b13571 | 18 June 2017, 19:42:42 UTC |
cbd825d | Chen Shen | 16 June 2017, 21:12:52 UTC | Create a MergeOperator for Cassandra Row Value Summary: This PR implements the MergeOperator for Cassandra Row Values. Closes https://github.com/facebook/rocksdb/pull/2289 Differential Revision: D5055464 Pulled By: scv119 fbshipit-source-id: 45f276ef8cbc4704279202f6a20c64889bc1adef | 16 June 2017, 21:27:00 UTC |
2c98b06 | Maysam Yabandeh | 15 June 2017, 23:08:32 UTC | Remove pin_slice option by making it the default Summary: This would simplify db_bench_tool.cc Closes https://github.com/facebook/rocksdb/pull/2457 Differential Revision: D5259035 Pulled By: maysamyabandeh fbshipit-source-id: 0a9c3abda624070fe2650200b885ad7e1c60182c | 15 June 2017, 23:14:08 UTC |
c80c611 | Maysam Yabandeh | 15 June 2017, 23:06:22 UTC | add db_bench options for partitioning Summary: Closes https://github.com/facebook/rocksdb/pull/2456 Differential Revision: D5259083 Pulled By: maysamyabandeh fbshipit-source-id: 1ed1746da7a8baadf4772d023d927c6c4e6b112a | 15 June 2017, 23:14:08 UTC |
6a3377f | Ben Torfs | 14 June 2017, 23:57:39 UTC | Synchronize statistic enumeration values between statistics.h and java API Summary: Closes https://github.com/facebook/rocksdb/pull/2209 Differential Revision: D5251951 Pulled By: sagar0 fbshipit-source-id: 03a73d025a7b4a322bb8d8d86f5d249fcd7dd00e | 14 June 2017, 23:59:42 UTC |
53dda87 | Sagar Vemuri | 14 June 2017, 21:51:37 UTC | Do not run RateLimiterTest.Rate test on Travis+Mac OSX. Summary: RateLimiterTest.Rate test has been failing continuously since many days on travis in Mac OSX PLATFORM_DEPENDENT test suite. Check https://travis-ci.org/facebook/rocksdb/pull_requests. Disabling this test for now, so that we can investigate more in depth. Closes https://github.com/facebook/rocksdb/pull/2451 Differential Revision: D5250147 Pulled By: sagar0 fbshipit-source-id: d58476a3c2792d20e875754d1516c4bc7174e86c | 14 June 2017, 21:58:02 UTC |
ae8571f | Yi Wu | 14 June 2017, 20:44:36 UTC | Fix blob db compression bug Summary: `CompressBlock()` will return the uncompressed slice (i.e. `Slice(value_unc)`) if compression ratio is not good enough. This is undesired. We need to always assign the compressed slice to `value`. Closes https://github.com/facebook/rocksdb/pull/2447 Differential Revision: D5244682 Pulled By: yiwu-arbug fbshipit-source-id: 6989dd8852c9622822ba9acec9beea02007dff09 | 14 June 2017, 20:56:42 UTC |
7a380de | Yi Wu | 14 June 2017, 20:08:54 UTC | Update blob_db_test Summary: I'm trying to improve unit test of blob db. I'm rewriting blob db test. In this patch: * Rewrite tests of basic put/write/delete operations. * Add disable_background_tasks to BlobDBOptionsImpl to allow me not running any background job for basic unit tests. * Move DestroyBlobDB out from BlobDBImpl to be a standalone function. * Remove all garbage collection related tests. Will rewrite them in following patch. * Disabled compression test since it is failing. Will fix in a followup patch. Closes https://github.com/facebook/rocksdb/pull/2446 Differential Revision: D5243306 Pulled By: yiwu-arbug fbshipit-source-id: 157c71ad3b699307cb88baa3830e9b6e74f8e939 | 14 June 2017, 20:12:34 UTC |
89ad9f3 | Sagar Vemuri | 13 June 2017, 23:55:08 UTC | Allow ignoring unknown options when loading options from a file Summary: Added a flag, `ignore_unknown_options`, to skip unknown options when loading an options file (using `LoadLatestOptions`/`LoadOptionsFromFile`) or while verifying options (using `CheckOptionsCompatibility`). This will help in downgrading the db to an older version. Also added `--ignore_unknown_options` flag to ldb **Example Use case:** In MyRocks, if copying from newer version to older version, it is often impossible to start because of new RocksDB options that don't exist in older version, even though data format is compatible. MyRocks uses these load and verify functions in [ha_rocksdb.cc::check_rocksdb_options_compatibility](https://github.com/facebook/mysql-5.6/blob/e004fd9f416821d043ccc8ad4a345c33ac9953f0/storage/rocksdb/ha_rocksdb.cc#L3348-L3401). **Test Plan:** Updated the unit tests. `make check` ldb: $ ./ldb --db=/tmp/test_db --create_if_missing put a1 b1 OK Now edit /tmp/test_db/<OPTIONS-file> and add an unknown option. Try loading the options now, and it fails: $ ./ldb --db=/tmp/test_db --try_load_options get a1 Failed: Invalid argument: Unrecognized option DBOptions:: abcd Passes with the new --ignore_unknown_options flag $ ./ldb --db=/tmp/test_db --try_load_options --ignore_unknown_options get a1 b1 Closes https://github.com/facebook/rocksdb/pull/2423 Differential Revision: D5212091 Pulled By: sagar0 fbshipit-source-id: 2ec17636feb47dc0351b53a77e5f15ef7cbf2ca7 | 13 June 2017, 23:58:01 UTC |
6b5a5dc | hyunwoo | 13 June 2017, 23:46:17 UTC | fixed typo Summary: fixed typo Closes https://github.com/facebook/rocksdb/pull/2430 Differential Revision: D5242471 Pulled By: IslamAbdelRahman fbshipit-source-id: 832eb3a4c70221444ccd2ae63217823fec56c748 | 13 June 2017, 23:58:01 UTC |
0f228be | haoxiang | 13 June 2017, 23:39:57 UTC | fixed typo in util/dynamic_bloom.h Summary: fixed a typo in util/dynamic_bloom.h Closes https://github.com/facebook/rocksdb/pull/2442 Differential Revision: D5242397 Pulled By: IslamAbdelRahman fbshipit-source-id: c47fd18cc79afff6b022201a0410c0cd47626576 | 13 June 2017, 23:41:36 UTC |