Commit Graph

879 Commits

Author SHA1 Message Date
Yilin Chen c89c0fc21a Add background worker
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-30 12:14:35 +08:00
Yilin Chen 0f93a3c756 Use default TTL only
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-30 12:14:35 +08:00
Yilin Chen b13a99dd30 Replace transmute following clippy's advice
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-30 12:14:35 +08:00
Yilin Chen d926300a45 Add undetermined error
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-30 12:14:35 +08:00
Yilin Chen d677b32c12 Simplify store stream
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-30 12:13:09 +08:00
Yilin Chen be019226de implement HasLocks for PrewriteRequest
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-30 12:13:09 +08:00
Yilin Chen 72159356dc Fix transmute bug
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-30 12:13:09 +08:00
Yilin Chen 8ccd4d27d6 Commit and rollback
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-30 12:13:09 +08:00
Yilin Chen 01d293cb24 Prewrite
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-30 12:13:09 +08:00
Yilin Chen a5aa3bb185 Add prewrite and commit requests
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-30 12:13:09 +08:00
Yilin Chen 8f6be705e1
Merge pull request #113 from sticnarf/fix-has-error
Implement HasError for responses with multiple errors
2019-08-30 12:12:00 +08:00
Yilin Chen c93ef6ee86
Implement HasError for responses with multiple errors
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-29 16:42:46 +08:00
Yilin Chen f9fa5566d8
Merge pull request #112 from sticnarf/remove-tokio-timer
Replace tokio-timer with futures_timer
2019-08-29 10:58:24 +08:00
Yilin Chen 4f6cecc18c Remove tokio-timer
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-29 00:56:10 +08:00
Shirly 2fb14dd3c1
Merge pull request #108 from sticnarf/resolve-lock 2019-08-28 15:16:02 +08:00
Yilin Chen 1a604e4ea1
Extract repeated store_stream implementations
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-28 14:53:47 +08:00
Yilin Chen dd2e186b0c
fix negative resolve lock return value
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-28 01:41:21 +08:00
Yilin Chen 1ab0e7fdd6
Take errors in the execute function
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-28 01:03:00 +08:00
Yilin Chen 8d02eea86e
Address comments
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-27 11:41:57 +08:00
Yilin Chen a6505e5bbb
Add delay if all locks are not resolved
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-27 00:44:12 +08:00
Yilin Chen 16a2abc9a2 Address comments
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-26 17:35:56 +08:00
Yilin Chen f093c64f21
Upgrade toolchain and dependencies.
CI errors should be fixed and feature gates are removed.

Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-26 11:45:04 +08:00
Yilin Chen 2eccbfe7b6
Add comments to ResolveLockRequest
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-26 10:39:42 +08:00
Yilin Chen f83d8676d9
Merge remote-tracking branch 'upstream/master' into resolve-lock
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-25 21:58:23 +08:00
Yilin Chen 7381efc30d
Resolve locks
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-25 21:54:39 +08:00
Nick Cameron cef98f2cb6
Merge pull request #107 from nrc/snapshot
Add Snapshot
2019-08-23 09:30:53 +12:00
Nick Cameron 3b5dce85fa Add Snapshot
Signed-off-by: Nick Cameron <nrc@ncameron.org>
2019-08-22 21:44:35 +12:00
Nick Cameron 24876ad6e3
Merge pull request #104 from nrc/txt-snap
Use the get and batch get requests in the transaction client, plus some refactoring.
2019-08-22 21:10:49 +12:00
Nick Cameron 68bdcf905e Address review comments
And move `Buffer` into its own module.

Signed-off-by: Nick Cameron <nrc@ncameron.org>
2019-08-22 20:43:34 +12:00
Nick Cameron 5e5dbd3926 Cache reads in batch case
Signed-off-by: Nick Cameron <nrc@ncameron.org>
2019-08-22 20:24:55 +12:00
Nick Cameron b55372bc49 Use transaction requests to execute get/batch_get
This also factors out a `Buffer` struct so that buffering can be tested withou
needing rpc stuff.

Signed-off-by: Nick Cameron <nrc@ncameron.org>
2019-08-22 20:24:55 +12:00
Nick Cameron 3503bc735c Refactor Transaction::batch_get
This relies on the fact that we don't care about the ordering of the returned
pairs since it should be treated like a map.

Signed-off-by: Nick Cameron <nrc@ncameron.org>
2019-08-22 20:24:55 +12:00
Nick Cameron 3ef84b1a17 Remove snapshot
The snapshot concept is not really needed - in the current architecture it is
just a timestamp which is present in the transaction already.

I also removed some useless getters

Signed-off-by: Nick Cameron <nrc@ncameron.org>
2019-08-22 20:24:55 +12:00
Yilin Chen 7062e0ea4d
Merge pull request #103 from sticnarf/handle-error
Add error handling to KvRequest::execute
2019-08-22 13:30:30 +08:00
Yilin Chen 24098d6f82
Add constructors for raw requests
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-21 23:57:37 +08:00
Yilin Chen a11f93ab17
Address comments
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-21 13:46:50 +08:00
Yilin Chen 3c4f62f791
Merge remote-tracking branch 'upstream/master' into handle-error
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-21 13:16:28 +08:00
Yilin Chen d923d6c28b
Merge pull request #101 from nrc/more-tests
Add some more tests
2019-08-21 12:26:49 +08:00
Nick Cameron 3baed8aed6 Split up the transaction module a little bit
Signed-off-by: Nick Cameron <nrc@ncameron.org>
2019-08-21 09:17:05 +12:00
Nick Cameron 23af2f9d47 Address review comments
Signed-off-by: Nick Cameron <nrc@ncameron.org>
2019-08-21 08:59:20 +12:00
Nick Cameron ce55a01151 Rename MockDispatch
Signed-off-by: Nick Cameron <nrc@ncameron.org>
2019-08-21 08:59:20 +12:00
Nick Cameron a3eed5e02d Move stuff around a bit
Signed-off-by: Nick Cameron <nrc@ncameron.org>
2019-08-21 08:59:20 +12:00
Yilin Chen 56c7b9f932
Add error handling to KvRequest::execute
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-21 01:00:59 +08:00
Nick Cameron a4a98f5e79 Move all the mocks to their own module
Signed-off-by: Nick Cameron <nrc@ncameron.org>
2019-08-20 18:44:19 +12:00
Nick Cameron 4b0b16f7b0 Add test for stores_for_range
Signed-off-by: Nick Cameron <nrc@ncameron.org>
2019-08-20 18:32:33 +12:00
Nick Cameron f1818ee1bb Test KvClient caching by mocking out PD and TiKV clients
Signed-off-by: Nick Cameron <nrc@ncameron.org>
2019-08-20 18:32:33 +12:00
Yilin Chen 94686d5da7
Merge pull request #98 from sticnarf/request-based-kv
Request based MVCC APIs
2019-08-20 14:05:32 +08:00
Yilin Chen 9d94d83574
Rename Entry to KeyData
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-19 17:54:36 +08:00
Yilin Chen bcf9e36e81
Address comments
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-19 17:23:08 +08:00
Yilin Chen 5638c419cb
Move requests to their own modules
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-08-19 14:53:48 +08:00