- 20 7月, 2017 3 次提交
-
-
由 Andrew Kryczka 提交于
Summary: This diff addresses two problems. Both problems cause us to miss scheduling desirable compactions. One side effect is compaction picking can spam logs, as there's no delay after failed attempts to pick compactions. 1. If a compaction pulled in a locked input-level file due to user-key overlap, we would not consider picking another file from the same input level. 2. If a compaction pulled in a locked output-level file due to user-key overlap, we would not consider picking any other compaction on any level. The code changes are dependent, which is why I solved both problems in a single diff. - Moved input-level `ExpandInputsToCleanCut` into the loop inside `PickFileToCompact`. This gives two benefits: (1) if it fails, we will try the next-largest file on the same input level; (2) we get the fully-expanded input-level key-range with which we can check for pending compactions in output level. - Added another call to `ExpandInputsToCleanCut` inside `PickFileToCompact`'s to check for compaction conflicts in output level. - Deleted call to `IsRangeInCompaction` in `PickFileToCompact`, as `ExpandInputsToCleanCut` also correctly handles the case where original output-level files (i.e., ones not pulled in due to user-key overlap) are pending compaction. Closes https://github.com/facebook/rocksdb/pull/2615 Differential Revision: D5454643 Pulled By: ajkr fbshipit-source-id: ea3fb5477d83e97148951af3fd4558d2039e9872
-
由 Andrew Kryczka 提交于
Summary: I decided not even to keep it as an INFO-level log as it is too normal for compactions to be skipped due to locked input files. Removing logging here makes us consistent with how we treat locked files that weren't pulled in due to overlap. We may want some error handling on line 422, which should never happen when called by `LevelCompactionBuilder::PickCompaction`, as `SetupInitialFiles` skips compactions where overlap causes the output level to pull in locked files. Closes https://github.com/facebook/rocksdb/pull/2617 Differential Revision: D5458502 Pulled By: ajkr fbshipit-source-id: c2e5f867c0a77c1812ce4242ab3e085b3eee0bae
-
由 Islam AbdelRahman 提交于
-
- 19 7月, 2017 6 次提交
-
-
由 Maysam Yabandeh 提交于
Summary: Moving static AdaptationContext to outside function to bypass tsan's false report with static initializers. It is because with optimization enabled std::atomic is simplified to as a simple read with no locks. The existing lock produced by static initializer is __cxa_guard_acquire which is apparently not understood by tsan as it is different from normal locks (__gthrw_pthread_mutex_lock). This is a known problem with tsan: https://stackoverflow.com/questions/27464190/gccs-tsan-reports-a-data-race-with-a-thread-safe-static-local https://stackoverflow.com/questions/42062557/c-multithreading-is-initialization-of-a-local-static-lambda-thread-safe A workaround that I tried was to move the static variable outside the function. It is not a good coding practice since it gives global visibility to variable but it is a hackish workaround until g++ tsan is improved. Closes https://github.com/facebook/rocksdb/pull/2598 Differential Revision: D5445281 Pulled By: yiwu-arbug fbshipit-source-id: 6142bd934eb5852d8fd7ce027af593ba697ed41d
-
由 Siying Dong 提交于
Summary: Closes https://github.com/facebook/rocksdb/pull/2610 Differential Revision: D5445705 Pulled By: siying fbshipit-source-id: d5f97ffdf5bc18b853c3a106755aca96a650e428
-
由 Andrew Kryczka 提交于
Summary: as titled Closes https://github.com/facebook/rocksdb/pull/2601 Differential Revision: D5441618 Pulled By: ajkr fbshipit-source-id: 334b098d90caadd3d07167d051cfb4ae65db98e1
-
由 Siying Dong 提交于
Summary: Closes https://github.com/facebook/rocksdb/pull/2608 Differential Revision: D5444797 Pulled By: siying fbshipit-source-id: 690581d03f37822e059a16085088e8e2d8a45016
-
由 Siying Dong 提交于
Summary: We don't need this format compatibility hack anymore. We should remove it to make things simpler. Closes https://github.com/facebook/rocksdb/pull/2607 Differential Revision: D5444107 Pulled By: siying fbshipit-source-id: 7ef587dd0cacfc15a4083a137adba8e6bfddac7e
-
由 Maysam Yabandeh 提交于
Summary: For forward_compatible_checkout_objs the local branch is already created in previous step. This patch avoid recreating it. This should address "fatal: A branch named '3.10.fb' already exists." errors. Closes https://github.com/facebook/rocksdb/pull/2606 Differential Revision: D5443786 Pulled By: maysamyabandeh fbshipit-source-id: 69d5a67b87677429cf36e3a467bd114d341f3b9c
-
- 18 7月, 2017 7 次提交
-
-
由 Maysam Yabandeh 提交于
Summary: The new local branch specified with -b cannot be called master. Use tmp prefix to avoid name collision. Closes https://github.com/facebook/rocksdb/pull/2600 Differential Revision: D5442944 Pulled By: maysamyabandeh fbshipit-source-id: 4a623d9b21d6cc01bee812b2799790315bdf5f6e
-
由 Maysam Yabandeh 提交于
Summary: This will fix the error: "error: pathspec '2.2.fb.branch' did not match any file(s) known to git." Tested by manually sshing to sandcastle and running the command. Closes https://github.com/facebook/rocksdb/pull/2599 Differential Revision: D5441130 Pulled By: maysamyabandeh fbshipit-source-id: a22fd6a52221471bafbba8990394b499535e5812
-
由 Andrew Kryczka 提交于
Summary: Unfortunately we can't use -DNDEBUG yet since we don't properly exclude the test libraries/executables from the non-debug builds on non-MSVC platforms. Previously this was failing on Linux for every build type except `CMAKE_BUILD_TYPE=Debug`. Reverts a48a62d5 Closes https://github.com/facebook/rocksdb/pull/2595 Differential Revision: D5436182 Pulled By: ajkr fbshipit-source-id: 062f07cc9ce06a073b66054722b27bac1890dca3
-
由 Sushma Devendrappa 提交于
Summary: This patch enables using PinnableSlice for RowCache, changes include not releasing the cache handle immediately after lookup in TableCache::Get, instead pass a Cleanble function which does Cache::RleaseHandle. Closes https://github.com/facebook/rocksdb/pull/2492 Differential Revision: D5316216 Pulled By: maysamyabandeh fbshipit-source-id: d2a684bd7e4ba73772f762e58a82b5f4fbd5d362
-
由 Yi Wu 提交于
Summary: Fix column_family_test with LITE build. I need this patch to fix 5.6 branch. Closes https://github.com/facebook/rocksdb/pull/2597 Differential Revision: D5437171 Pulled By: yiwu-arbug fbshipit-source-id: 88b9dc5925a6b47af10c1b41bc5b07c4251a84b5
-
由 Chris Lamb 提交于
Summary: Should be 1024, obviously :) Closes https://github.com/facebook/rocksdb/pull/2592 Differential Revision: D5435269 Pulled By: ajkr fbshipit-source-id: c59338a3900798a4733f0b205e534f21215cf049
-
由 Daniel Black 提交于
Summary: In gcc-7 the following is an error identified by -Werror=class-memaccess In file included from ./table/get_context.h:14:0, from db/version_set.cc:43: ./table/block.h: In constructor ‘rocksdb::BlockReadAmpBitmap::BlockReadAmpBitmap(size_t, size_t, rocksdb::Statistics*)’: ./table/block.h:73:53: error: ‘void* memset(void*, int, size_t)’ clearing an object of type ‘struct std::atomic<unsigned int>’ with no trivial copy-assignment; use value-initialization instead [-Werror=class-memaccess] memset(bitmap_, 0, bitmap_size * kBytesPersEntry); ^ In file included from ./db/version_set.h:23:0, from db/version_set.cc:12: /toolchain/include/c++/8.0.0/atomic:684:12: note: ‘struct std::atomic<unsigned int>’ declared here struct atomic<unsigned int> : __atomic_base<unsigned int> ^~~~~~~~~~~~~~~~~~~~ As a solution the default initializer can be applied in list context. Signed-off-by: NDaniel Black <daniel.black@au.ibm.com> Closes https://github.com/facebook/rocksdb/pull/2561 Differential Revision: D5398714 Pulled By: siying fbshipit-source-id: d883fb88ec7535eee60d551038fe91f14488be36
-
- 17 7月, 2017 3 次提交
-
-
由 Yedidya Feldblum 提交于
Summary: CodeMod: Prefer `ADD_FAILURE()` over `EXPECT_TRUE(false)`, et cetera. The tautologically-conditioned and tautologically-contradicted boolean expectations/assertions have better alternatives: unconditional passes and failures. Reviewed By: Orvid Differential Revision: D5432398 Tags: codemod, codemod-opensource fbshipit-source-id: d16b447e8696a6feaa94b41199f5052226ef6914
-
由 Siying Dong 提交于
Summary: Closes https://github.com/facebook/rocksdb/pull/2591 Differential Revision: D5432696 Pulled By: siying fbshipit-source-id: a613230ab916de0b279a65ef429ede65460a8db2
-
由 Siying Dong 提交于
Summary: Closes https://github.com/facebook/rocksdb/pull/2590 Differential Revision: D5432539 Pulled By: siying fbshipit-source-id: 49902453bba3c95c1fb8354441b2198649e52bf4
-
- 16 7月, 2017 1 次提交
-
-
由 Siying Dong 提交于
Summary: Closes https://github.com/facebook/rocksdb/pull/2589 Differential Revision: D5431502 Pulled By: siying fbshipit-source-id: 8ebf8c87883daa9daa54b2303d11ce01ab1f6f75
-
- 15 7月, 2017 3 次提交
-
-
由 Islam AbdelRahman 提交于
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
-
由 Daniel Black 提交于
Summary: Closes https://github.com/facebook/rocksdb/pull/2579 Differential Revision: D5427667 Pulled By: maysamyabandeh fbshipit-source-id: cd0b076aa0cd38d3554516f01723c548713ece61
-
由 Daniel Black 提交于
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 7月, 2017 5 次提交
-
-
由 Maysam Yabandeh 提交于
Summary: Closes https://github.com/facebook/rocksdb/pull/2577 Differential Revision: D5420460 Pulled By: maysamyabandeh fbshipit-source-id: 83671ec65513f4223044316e28cd6d33e9d5b531
-
由 Yi Wu 提交于
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
-
由 Islam AbdelRahman 提交于
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
-
由 Siying Dong 提交于
Summary: Closes https://github.com/facebook/rocksdb/pull/2575 Differential Revision: D5417350 Pulled By: siying fbshipit-source-id: 4bc11e35a7256167a5a7d2f586f2ac74c0deddb0
-
由 Yi Wu 提交于
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 7月, 2017 5 次提交
-
-
由 Aaron Gao 提交于
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
-
由 foolenough 提交于
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
-
由 奏之章 提交于
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
-
由 Daniel Black 提交于
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
-
由 Daniel Black 提交于
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 7月, 2017 4 次提交
-
-
由 Adam Retter 提交于
Summary: Closes https://github.com/facebook/rocksdb/pull/2551 Differential Revision: D5399288 Pulled By: sagar0 fbshipit-source-id: dd3df2ed6cc5ae612db0998ea746cc29fccf568e
-
由 Islam AbdelRahman 提交于
Summary: Bump version to 5.7 Closes https://github.com/facebook/rocksdb/pull/2566 Differential Revision: D5400043 Pulled By: IslamAbdelRahman fbshipit-source-id: 74aae4ff143d370d7d89807e5be08a6ab827da40
-
由 Yi Wu 提交于
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
-
由 Daniel Black 提交于
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 7月, 2017 3 次提交
-
-
由 Aaron Gao 提交于
Summary: delete the checkout line Closes https://github.com/facebook/rocksdb/pull/2556 Differential Revision: D5394446 Pulled By: lightmark fbshipit-source-id: 4afaf35e7ad0378d12169d13a3131a92b428b5d2
-
由 Giuseppe Ottaviano 提交于
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
-
由 Adam Retter 提交于
Summary: Closes https://github.com/facebook/rocksdb/pull/2554 Differential Revision: D5391019 Pulled By: siying fbshipit-source-id: a1d36037ef4c34b9ca77ab2127f3e17242c617cc
-