Andrew Noyes
3ddb0594c2
ASSERT(!tr.options.checkWritesEnabled)
2020-04-30 00:30:37 +00:00
Andrew Noyes
94f8e090c8
Fix more bugs
2020-04-30 00:30:37 +00:00
Andrew Noyes
fab33a8fd1
Improve test diagnostics, fix write_conflict_range bug
2020-04-30 00:30:37 +00:00
Andrew Noyes
5b365458cb
Fix bug
2020-04-30 00:30:37 +00:00
Andrew Noyes
a60e9a7290
Fix bug - emit kv pair if we end in a conflict range
2020-04-30 00:30:37 +00:00
Andrew Noyes
fdd6581167
Add write conflict range
2020-04-30 00:30:37 +00:00
Andrew Noyes
e1c3c73d4c
Rudimentary read your own read conflict range
2020-04-30 00:30:37 +00:00
chaoguang
3adbc89510
update special-key-space argument
2020-04-28 16:50:24 -07:00
chaoguang
562456028c
Fix the interface of special-key-space, only keys in (\xff\xff, \xff\xff\xff) are valid
2020-04-28 16:33:10 -07:00
chaoguang
34cddd675c
clang-format
2020-04-08 14:33:41 -07:00
chaoguang
5aee6880a8
fix issues according to andrew's comments
2020-04-08 11:33:07 -07:00
chaoguang
e4d99b0197
remove snapshot argument in the interface
2020-04-06 22:09:17 -07:00
chaoguang
03795cc6b8
delete commented code
2020-04-06 11:42:31 -07:00
chaoguang
aad8f850f3
refactor conflicting keys feature using special key space
2020-04-04 13:26:11 -07:00
chaoguang
5b6ae4da7f
A simple intergration to put conflictingKeys into special-key-space
2020-04-03 16:11:20 -07:00
chaoguang
36bf2ecf4c
add \xff\xff prefix to returned keys
2020-04-03 00:26:11 -07:00
chaoguang
debbe648e8
Use specialkeys
2020-03-31 19:05:47 -07:00
chaoguang
863ebc2d6d
fix merge conflict
2020-03-31 18:49:59 -07:00
chaoguang
a63f8b839c
Merge remote-tracking branch 'upstream/master' into private-keyspace-framework
2020-03-31 12:05:42 -07:00
chaoguang
64148469e8
clang-format the pr
2020-03-26 15:52:30 -07:00
Andrew Noyes
289487559d
Revert "Revert "Merge pull request #2257 from zjuLcg/report-conflicting-key""
...
This reverts commit 804fe1b22e
.
2020-03-24 18:11:15 -07:00
Balachandar Namasivayam
804fe1b22e
Revert "Merge pull request #2257 from zjuLcg/report-conflicting-key"
...
This reverts commit 648dc4a933
, reversing
changes made to 487d131b38
.
2020-03-19 21:34:28 -07:00
Evan Tschannen
648dc4a933
Merge pull request #2257 from zjuLcg/report-conflicting-key
...
Report conflicting keys
2020-03-18 13:39:42 -07:00
Evan Tschannen
e08f0201f1
merge release 6.2 into master
2020-03-17 12:51:47 -07:00
chaoguang
6e92716be7
update comments
2020-03-13 12:41:48 -07:00
A.J. Beamon
f7198c4ba3
Use the std::string constructor of StringRef, which will use the length of string correctly.
2020-03-12 12:35:08 -07:00
A.J. Beamon
6940d546f5
Fix bug where status is truncated when a null byte is included. This is implemented by escaping unprintable characters.
2020-03-12 12:27:53 -07:00
chaoguang
bdabb8638e
Change prefix
2020-03-11 12:40:40 -07:00
chaoguang
7a76e9556d
Merge remote-tracking branch 'upstream/master' into report-conflicting-key
2020-03-04 11:24:39 -08:00
chaoguang
9c50b8369d
Change name from private-key-space to special-key-space
2020-03-03 18:35:04 -08:00
chaoguang
94102969fd
Merge code from upstream and change ACTOR to member class
2020-03-03 14:55:03 -08:00
chaoguang
409718c964
Merge remote-tracking branch 'upstream/master' into private-keyspace-framework
2020-03-03 13:37:51 -08:00
chaoguang
146191e411
Fix bug: change RYW* to Reference<RYW>
2020-03-02 19:02:35 -08:00
Evan Tschannen
96258b9809
Merge branch 'release-6.2'
...
# Conflicts:
# documentation/sphinx/source/release-notes.rst
# fdbcli/fdbcli.actor.cpp
# fdbclient/ManagementAPI.actor.cpp
# fdbrpc/FlowTransport.actor.cpp
# fdbserver/ClusterController.actor.cpp
# fdbserver/DataDistribution.actor.cpp
# fdbserver/DataDistribution.actor.h
# fdbserver/DataDistributionQueue.actor.cpp
# fdbserver/KeyValueStoreMemory.actor.cpp
# fdbserver/MasterProxyServer.actor.cpp
# fdbserver/QuietDatabase.actor.cpp
# fdbserver/SkipList.cpp
# fdbserver/StorageMetrics.actor.h
# fdbserver/TLogServer.actor.cpp
# fdbserver/fdbserver.actor.cpp
# fdbserver/storageserver.actor.cpp
# fdbserver/workloads/KVStoreTest.actor.cpp
# flow/CMakeLists.txt
# flow/Knobs.cpp
# flow/Knobs.h
# flow/genericactors.actor.cpp
# flow/serialize.h
2020-02-21 19:09:16 -08:00
chaoguang
22e0a8e9b3
Start with simplest interface
2020-02-20 13:52:48 -08:00
Xin Dong
2e1d03cbe7
Addressed AJ's review comments
2020-02-12 14:57:40 -08:00
Xin Dong
d20ce99774
Resolved the review comment and renamed the functions
2020-02-12 14:57:40 -08:00
Xin Dong
d934aed1d7
Because when the user issue 'getStorageByteSample' on a large key range, which can be as large as the whole DB, we need to change the behavior of 'waitStorageMetricsMultipleLocation' to avoid the case where a target key range got moved/splited by DD and thus the call to 'waitMetircs' on the corresponding storage server will return 'wrong_shard_server' error and thus the whole 'waitStorageMetricsMultipleLocation' will be retried on the large key range. What we want is to do the retry only for the key range that caused the error.
2020-02-12 14:57:40 -08:00
Xin Dong
0c16d43c2f
Added necessary plumbings to expose byte sample collected by storage servers to fdb_c library
2020-02-12 14:57:40 -08:00
Evan Tschannen
73ad702d14
Clients which fetch status should not disconnect from the coordinators and cluster controller between each retrieval
2020-01-22 15:41:22 -08:00
chaoguang
7224807d1d
fix typo in var name
2020-01-21 15:38:48 -08:00
Alex Miller
18e6e36a8e
Fill in the versionstamp, but still leave the position.
...
Using range.begin() stripped off the last 4 bytes that specified where
the versionstamp is, so when the mutation got to the proxy, it wouldn't
get versionstamped correctly.
2020-01-21 15:24:57 -08:00
chaoguang
5386b4ecdf
Adding prefix to returned keys, keeping consistency with query range
2020-01-21 15:18:16 -08:00
chaoguang
5b62d672dc
update comments
2020-01-17 15:18:07 -08:00
chaoguang
17721a00f1
change vars names
2020-01-17 14:26:45 -08:00
chaoguang
d17d1c88cd
add const to local KeyRef
2020-01-17 11:31:43 -08:00
Alex Miller
eb64eede8d
Make a smaller range inaccessable after writing a versionstamped key
...
A transaction's read version is the lower bound of what a transaction's
commit version could be. Thus, we can narrow the conflict range of a
versionstamped key, and thus reduce the amount of the keyspace that is
rendered inaccessable, by filling in the read version on the
versionstamped key and using that as the lower bound of the conflict
range.
This allows reads to still be done to versionstampled keys lower than
the read version of the current transaction.
2020-01-16 21:41:59 -08:00
chaoguang
1cf3b5b807
Change to general prefix '\xff\xff/transaction/conflicting_keys/'
2020-01-13 20:54:16 -08:00
chaoguang
1f633d3e5f
change local var from Key to KeyRef
2020-01-10 15:53:06 -08:00
chaoguang
1cdb22c4a4
refine code according to comments
2020-01-09 15:42:21 -08:00