Gyu-Ho Lee
fc86e1ded1
*: return the number of deleted keys
...
For https://github.com/coreos/etcd/issues/4576 .
2016-02-21 17:59:21 -08:00
Anthony Romano
4fc89678b2
etcdserver: add >= support for v3 delete range
2016-02-18 12:34:04 -08:00
Gyu-Ho Lee
93f2a4487a
Merge pull request #4507 from gyuho/better_hash
...
etcdserver: populate ResponseHeader in Hash method
2016-02-12 14:36:26 -08:00
Gyu-Ho Lee
2710e4eed1
etcdserver: populate ResponseHeader in Hash method
2016-02-12 14:26:18 -08:00
Anthony Romano
6851fffdfb
clientv3: support >= Range requests
...
Turns out grpc will convert an empty byte string to nil, so use "\0" to
indicate Range on >= key in v3 grpc protocol.
2016-02-12 14:06:59 -08:00
Xiang Li
30c11c1bca
*: support local range request
2016-02-12 12:04:06 -08:00
Xiang Li
35567221a7
*: limit request size for v3
2016-02-08 12:54:03 -08:00
Gyu-Ho Lee
2d197ac9e8
*: add kv Hash method (for testing purpose)
2016-02-03 12:52:39 -08:00
Xiang Li
6f72b31316
integration: add test promote and move lease tests to lease_test.go
2016-02-02 13:45:11 -08:00
Gyu-Ho Lee
57dedd8c89
Revert "*: TestKVRange to clientv3/integration, fix rev"
2016-01-29 18:20:56 -08:00
Gyu-Ho Lee
69abdf8144
*: TestKVRange to clientv3/integration, fix rev
...
For https://github.com/coreos/etcd/issues/4338 .
And resp.Header.Revision should be from the one in storage
when we just do range, because there is no storage data
change.
2016-01-29 16:12:21 -08:00
Gyu-Ho Lee
ad15bdcb07
etcdserver: update gRPC, proto interface
2016-01-26 17:41:19 -08:00
Xiang Li
128b5e7387
etcdserver: check invalid range in txn
2016-01-25 20:21:17 -08:00
Xiang Li
1aa312fcce
*: lease forwarding should resue transport
2016-01-25 06:56:07 +08:00
Xiang Li
5e2dbadbc0
leasehttp: move lease/http.go to its own pkg
2016-01-25 06:09:54 +08:00
Anthony Romano
9572197aee
etcdserver: return error when putting a key with a bad lease id
2016-01-22 20:47:31 -08:00
Anthony Romano
2e157530a0
etcdhttp, lease, v3api: forward keepalives to leader
...
keepalives don't go through raft so let follower peers announce
keepalives to the leader through the peer http handler
2016-01-22 12:40:40 -08:00
Anthony Romano
9113a27bde
lease: grant consistent lease IDs
...
When raft broadcasts a Grant to all nodes, all nodes must
agree on the same lease ID. Otherwise, attaching a key to
a lease will fail since the lease ID is node-dependent.
2016-01-22 09:43:39 -08:00
Anthony Romano
ccfd68a251
etcdserver: support Revision option in v3 RangeRequest
2016-01-17 21:45:22 -08:00
Anthony Romano
8df3f0c545
etcdserver: support 'More' flag for v3 RangeRequest
2016-01-17 21:45:22 -08:00
Anthony Romano
82eeffbd58
etcdserver: support sorted range requests in v3 api
...
Fixes #4166
2016-01-12 10:08:30 -08:00
Xiang Li
59bf83c7f4
*: now lease keepAlive works on leader
2016-01-09 22:12:02 -08:00
Gyu-Ho Lee
f76166a041
*: fix minor typos
2016-01-08 00:21:19 -08:00
Xiang Li
d9ca929a33
*: add support for lease create and revoke
...
Basic support for lease operations like create and revoke.
We still need to:
1. attach keys to leases in KV implmentation if lease field is set
2. leader periodically removes expired leases
3. leader serves keepAlive requests and follower forwards keepAlive
requests to leader.
2016-01-07 16:39:39 -08:00
Xiang Li
09b420f08c
*: move leaseID typedef to lease pkg
2016-01-05 10:18:17 -08:00
Xiang Li
4336278b44
*: support put with lease
2016-01-04 15:54:06 -08:00
Xiang Li
c4cbaf5c2a
etcdsever: swap kv pointer atomically
2015-12-10 17:29:36 -08:00
Barak Michener
452e5bffc0
etcdserver: Fix panic for v3 transaction compares on non-existent keys
...
Fixes #3920
2015-11-24 16:49:45 -05:00
Xiang Li
b4abe5b584
etcdserver: start real txn for txn request
...
We should open real txn for applying txn requests. Or the intermediate
state might be observed by reader.
This also fixes #3803 . Same consistent(raft) index per multiple indenpendent
operations confuses consistentStore.
2015-11-16 21:11:27 -08:00
Xiang Li
ae2f69b41e
etcdserver: rename processInternalRaftReq to processInternalRaftRequest
...
We have a structure called InternalRaftRequest. Making the function
shorter by calling it processInternalRaftReq seems to be random and
reduce the readability. So we just use the full name.
2015-11-09 13:37:36 -08:00
Xiang Li
c37bd2385a
*: refactor kv rpc implementation
2015-11-04 11:36:17 -08:00
Xiang Li
10de2e6dbe
*: serve watch service
...
Implement watch service and hook it up
with grpc server in etcdmain.
2015-11-03 15:58:34 -08:00
Xiang Li
94f4069a25
etcdserver: better v3 api error handling
2015-09-15 11:20:06 -07:00
Xiang Li
94f784826a
*: support v3 compaction
2015-09-14 19:59:36 -07:00
Xiang Li
4c81615cef
etcdserver: initial support for cluster-wide v3 request
2015-09-13 08:32:01 -07:00
Xiang Li
95d5556445
etcdserver: refactor v3demo do
2015-09-05 15:31:28 -07:00
Xiang Li
3f18ded10a
*: v3api index->revision
2015-09-04 10:41:20 -07:00
Xiang Li
9233fff48f
etcdserver: support txn
2015-08-14 11:45:31 -07:00
Xiang Li
9ff7075ce8
etcdserver: use v3server interface
2015-08-08 10:39:04 -07:00
Xiang Li
f004b4dac7
*: etcdserver supports v3 demo
2015-08-08 05:58:29 -07:00