Steve Atherton
8e7a97f495
Bug fix: BTreeCursor::init() did not clear path.
2021-06-08 16:46:09 -07:00
Steve Atherton
a58ac622ed
Bug fix in test data generation for IntIntPair DeltaTree unit test.
2021-06-08 16:46:09 -07:00
Steve Atherton
a6f7d37a25
Bug fixes related to DeltaTree2::Cursor contract being different from DeltaTree::Cursor.
2021-06-08 16:46:09 -07:00
Steve Atherton
8ef516ead2
Bug fixes from bad search/replace. DeltaTree2::Cursor now keeps current decoded item as a member instead of calculating it on demand in get().
2021-06-08 16:46:09 -07:00
Steve Atherton
d155482f5f
Remove the legacy IVersionedStore / IStoreCursor classes and implementations as they are no longer useful or efficient, respectively. BTreeCursor can be used far more efficiently to access the BTree.
2021-06-08 16:46:09 -07:00
Steve Atherton
1d947bff2d
Initial pass at getting BTree to compile with DeltaTree2. Does not work since the Cursor contract has changed.
2021-06-08 16:46:09 -07:00
Steve Atherton
d208d3f3ec
Bug fixes, moveFirst/Last didn't handle tree size of 1 correctly.
2021-06-08 16:46:09 -07:00
Steve Atherton
65cfd31221
Added memory-only option for redwood set test.
2021-06-08 16:46:09 -07:00
Steve Atherton
caf4b3c345
DeltaTree2 refactor. Nodes no longer contain parent offsets. DecodedCache no longer uses a hash but rather a vector of DecodedNodes, which Cursors reference by vector index. DecodedNodes contain parent node indexes which are populated on-demand, making storage in the serialized form no longer necessary.
2021-06-08 16:46:04 -07:00
Steve Atherton
b0ec76d401
Test output improvements.
2021-06-08 15:32:54 -07:00
Steve Atherton
9ab69b5cb1
RedwoodRecordRef support for DeltaTree2.
2021-06-08 15:32:54 -07:00
Steve Atherton
701f05e513
Bug fix, recursive call to get() could cause rehashing so hash lookup must be redone afterward.
2021-06-08 15:32:54 -07:00
Steve Atherton
b2c7d957e2
Added DeltaTree2, which can be shared between updated versions of the same tree, but so far it is 50% slower.
2021-06-08 15:32:26 -07:00
A.J. Beamon
5d617614a5
Merge pull request #4926 from sfc-gh-ajbeamon/add-release-7.0-release-notes
...
Add a release note for PR 3759
2021-06-08 13:05:18 -07:00
sfc-gh-ngoyal
9657391856
Merge pull request #4915 from sfc-gh-ajbeamon/add-release-7.0-release-notes
...
Add some release notes for 7.0 changes
2021-06-08 10:39:43 -07:00
A.J. Beamon
8674a6c4d6
Add a release note for PR 3759.
2021-06-08 09:01:54 -07:00
A.J. Beamon
d0ac78ccf1
Add some release notes for 7.0 changes. Fix a bad link.
2021-06-07 15:05:30 -07:00
Jingyu Zhou
801258e916
Merge pull request #3404 from sfc-gh-tclinkenbeard/add-vectorref-clear
...
Added VectorRef::clear
2021-06-07 13:44:08 -07:00
Jingyu Zhou
e34df983ee
Merge pull request #4800 from sfc-gh-tclinkenbeard/remove-extra-copies
...
Remove unnecessary temporary objects while growing objects of type std::vector<std::pair<A, B>>
2021-06-07 13:23:50 -07:00
Andrew Noyes
19d22391e7
Merge pull request #4911 from sfc-gh-anoyes/anoyes/arm-fdb_c-clang
...
Fix clang build on Arm
2021-06-07 11:35:56 -07:00
A.J. Beamon
e02ef3b8d8
Merge pull request #4842 from RenxuanW/config
...
Improve logging on the current view of the database configuration that the cluster controller is using.
2021-06-07 11:28:40 -07:00
sfc-gh-tclinkenbeard
371a38e6e5
Merge remote-tracking branch 'origin/master' into remove-extra-copies
2021-06-07 10:26:06 -07:00
Trevor Clinkenbeard
866f536983
Merge pull request #4888 from sfc-gh-tclinkenbeard/remove-fdbserver-includes
...
Remove fdbserver includes from fdbclient
2021-06-07 10:22:13 -07:00
Andrew Noyes
5d2d4622f6
Update bindings/c/test/unit/unit_tests_version_510.cpp
2021-06-07 09:40:26 -07:00
Andrew Noyes
402622ace9
Merge pull request #4909 from apple/anoyes/fix-ub
...
Fix several instances of undefined behavior
2021-06-07 08:58:45 -07:00
Andrew Noyes
d6a6a8b3dd
Remove header that's no longer needed
2021-06-06 08:36:48 -07:00
Andrew Noyes
0beb548e99
Improve comments
2021-06-05 17:10:41 -07:00
Andrew Noyes
cd5c0481cc
Use linker script for external workloads
...
This fixes an issue on Arm with lld:
ld.lld: error: relocation R_AARCH64_PREL64 cannot be used against symbol OPENSSL_armcap_P; recompile with -fPIC
I think the problem was that lld thought that the shared object might
need to interpose OPENSSL_armcap_P at runtime, although honestly I'm not
too sure about all this linker stuff.
2021-06-05 14:43:50 -07:00
Andrew Noyes
311da4b07a
Explain requirements for fdb_c.g.S implementations
2021-06-05 14:43:50 -07:00
Andrew Noyes
34529c353c
Try to fix arm build on clang
2021-06-05 14:42:30 -07:00
Xiaoxi Wang
838d847d4e
Merge pull request #4860 from sfc-gh-xwang/ppwtest
...
implement perpetual storage wiggling feature
2021-06-04 16:18:39 -07:00
Chaoguang Lin
a2fe1a6139
Merge pull request #4904 from sfc-gh-clin/test-coverage-for-fdbcli
...
Add test coverage for fdbcli commands using a python script
2021-06-04 15:02:48 -07:00
Josh Slocum
9b36f69b8d
Merge pull request #4892 from sfc-gh-jslocum/tss_mappingv2
...
TSS Mapping Change
2021-06-04 14:57:51 -07:00
Chaoguang Lin
a5e69c269a
remove unused header, fix the CMake rule
2021-06-04 20:44:49 +00:00
Andrew Noyes
47368d114e
Use uint64_t instead of uint32_t for histogram reporting
2021-06-04 13:09:52 -07:00
Lukas Joswiak
ffac985077
Merge pull request #4898 from sfc-gh-ljoswiak/fixes/global-config-processes-2
...
Fix global config not triggering changes on server processes (attempt 2)
2021-06-04 13:03:42 -07:00
Andrew Noyes
ce25a99000
Disallow conversion from float in specialCounter
2021-06-04 12:09:13 -07:00
Xiaoxi Wang
5be65fab5e
add comment
2021-06-04 18:40:18 +00:00
Andrew Noyes
abf7e4c8dc
Fix signed integer overflow
2021-06-04 10:00:05 -07:00
Andrew Noyes
fbe96939ba
Avoid likely use after destruction
...
This manifested in UBSAN as use of an invalid vptr, which usually means
use after destruction. Give shared ownership to the getDesired actor to
avoid use after destruction. It is not clear to me when this doesn't
seem to manifest as a heap-use-after-free in e.g. ASAN or valgrind.
2021-06-04 09:54:06 -07:00
Andrew Noyes
c88750a5a9
Avoid passing null as second arg to memcmp
2021-06-04 09:53:23 -07:00
Andrew Noyes
57b9ed3951
Avoid left shift of int by 32
2021-06-04 09:52:29 -07:00
Andrew Noyes
98f3428beb
Avoid left shift of negative value
2021-06-04 09:51:30 -07:00
Andrew Noyes
58ca93a1ee
Avoid casting float unrepresentable as int to int
...
Apparently it was possible for this value to be unrepresentable as an
int. int64_t seems to be sufficient.
2021-06-04 09:49:27 -07:00
Andrew Noyes
d14716c39a
Avoid applying non-zero offset to null in c++
2021-06-04 09:48:43 -07:00
Andrew Noyes
50b1d97bf6
Avoid calling memcpy with null 2nd argument
2021-06-04 09:48:06 -07:00
Andrew Noyes
f5d312e4a0
Avoid casting NaN to int
...
Apparently it's possible for dbSizeEstimate to be negative
2021-06-04 09:47:06 -07:00
Andrew Noyes
6992f5814b
Avoid casting NaN to int64_t
...
If the queue is empty, consider the queue to be 100% processed
2021-06-04 09:44:49 -07:00
Andrew Noyes
1ee25e9b91
Avoid casting NaN to uint8_t
2021-06-04 09:43:50 -07:00
Andrew Noyes
5fbadb66c2
Clamp to max int if large float is not representable as int
2021-06-04 09:42:39 -07:00