Anthony Romano
fab3c8e705
etcdserver: serializable transactions
...
Support case where txn doesn't have to go through quorum.
2016-04-04 04:21:42 -07:00
Anthony Romano
81de5648d9
etcdserver: force backend commit before acking physical compaction
2016-03-31 21:25:40 -07:00
Hitoshi Mitake
73166b41e9
*: support changing password in v3 auth
...
This commit adds a functionality for updating password of existing
users.
2016-03-31 15:28:15 +09:00
Hitoshi Mitake
d8888ded12
*: support deleting user in v3 auth
...
This commit adds a functionality of user deletion. It can be invoked
with the new user delete command.
Example usage:
$ ETCDCTL_API=3 etcdctl user delete usr1
2016-03-31 13:18:51 +09:00
Anthony Romano
7b37bd332c
etcdserver, storage: wait for physical compaction if already compacted
2016-03-30 13:59:52 -07:00
Anthony Romano
4b35cb9462
etcdserver, storage: optionally wait for Compaction completion in RPC
2016-03-30 09:45:30 -07:00
Hitoshi Mitake
987568c65c
*: add Auth prefix to auth related requests and responses
2016-03-29 14:32:19 +09:00
Anthony Romano
3fbacf4be2
v3rpc: move Hash RPC to Maintenance service
2016-03-28 17:15:58 -07:00
Anthony Romano
9e7f47c490
etcdserver: Alarm RPC
...
Alarms are events that nodes can use to relay health information to
the rest of the cluster. A node may Activate an alarm and that alarm
will stay set until Deactivated.
2016-03-28 14:56:26 -07:00
Anthony Romano
94e77cfa5d
etcdserver: move v3 raft apply functions to interface
2016-03-28 13:16:21 -07:00
Hitoshi Mitake
8874545a1e
*: support adding user in v3 auth
...
This commit adds a new subcommand "user add" to etcdctlv3. With the
command users can create a user for the authentication.
Example of usage:
$ etcdctlv3 user add user1
Password of user1:
Type password of user1 again for confirmation:
2016-03-27 18:11:42 +09:00
Anthony Romano
bd832e5b0a
*: migrate Godeps to vendor/
2016-03-22 17:10:28 -07:00
Hitoshi Mitake
4eb1cfd658
etcdserver, auth: new package auth for the auth feature
...
This commit adds a new package auth. Its role is persisting auth
related metadata. This commit also connects its main interface
AuthStore and v3 server.
2016-03-14 13:57:41 +09:00
Hitoshi Mitake
7a78c1ef1d
etcdserver: AuthServer for auth related RPCs
...
Currently AuthEnable() is connected to etcdserver for experimental
purpose.
2016-03-02 15:17:59 +09:00
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