Xiang Li
a3b7876a3c
clientv3: use retryConnection
2016-01-27 22:31:15 -08:00
Anthony Romano
14255854d8
Merge pull request #4298 from heyitsanthony/fix-testapplysnapshot-race
...
etcdserver/test: synchronously wait on TestApplySnapshotAndCommittedE…
2016-01-26 21:18:09 -08:00
Anthony Romano
64596f0c49
etcdserver/test: synchronously wait on TestApplySnapshotAndCommittedEntries
...
Replaces the RecorderBuffered with a RecorderStream so Wait will block
waiting for updates to the etcdserver store.
Fixes #4296
2016-01-26 21:03:03 -08:00
Xiang Li
36cc8446c7
*: finish member api implementation
2016-01-26 18:09:14 -08:00
Gyu-Ho Lee
ad15bdcb07
etcdserver: update gRPC, proto interface
2016-01-26 17:41:19 -08:00
Anthony Romano
4c024b305f
Merge pull request #4290 from heyitsanthony/fix-apply-noents
...
etcdserver: don't try to apply empty message list
2016-01-26 14:11:54 -08:00
Anthony Romano
bd02d668c8
etcdserver: don't try to apply empty message list
...
If all messages have been applied, don't apply an empty messages list;
otherwise appliedi will update to 0 and etcd will panic.
Fixes #4278
2016-01-26 11:56:37 -08:00
Xiang Li
179a8f9768
Merge pull request #4289 from xiang90/member_api
...
etcdserver: initial member api proto
2016-01-26 10:16:44 -08:00
Xiang Li
864fc197c1
etcdserver: initial member api proto
2016-01-26 09:56:50 -08:00
Xiang Li
59c6735c3c
Merge pull request #4282 from xiang90/range_invalid
...
etcdserver: check invalid range in txn
2016-01-25 22:23:55 -08:00
Xiang Li
dd1bbaa293
Merge pull request #4281 from mitake/remove-cached-auth-flag
...
etcdserver, auth: not cache a flag of auth status
2016-01-25 21:55:44 -08:00
Xiang Li
a56387bc3e
Merge pull request #4284 from xiang90/max_txn
...
v3rpc: check max ops in txn
2016-01-25 21:16:01 -08:00
Xiang Li
c8bf77c722
v3rpc: check max ops in txn
2016-01-25 21:04:19 -08:00
Xiang Li
128b5e7387
etcdserver: check invalid range in txn
2016-01-25 20:21:17 -08:00
Anthony Romano
12f6b8e72d
etcdserver: complete stopWithDelay on server shutdown
...
Was causing goroutine leaks on my machine.
2016-01-25 19:45:29 -08:00
Hitoshi Mitake
b2d2c79a2f
etcdserver, auth: not cache a flag of auth status
...
This commit removes a flag that indicates auth is enabled or disabled
because it doesn't have an invalidation mechanism.
Fixes https://github.com/coreos/etcd/issues/3601 and https://github.com/coreos/etcd/issues/3964
2016-01-26 11:46:25 +09:00
Xiang Li
ef6320e638
etcdserver: make cluster checking interval shorter
2016-01-25 08:16:05 +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
Gyu-Ho Lee
b6077f9d57
*: fix minor typos
2016-01-14 01:28:29 -08:00
Hitoshi Mitake
588f655b4e
etcdmain: add an option for pprof
...
This commit adds a new option for activating profiling based on pprof
in etcd process.
- -enable-pprof: boolean type option which activates profiling
For example, if a client URL is http://localhost:12379 , users and
developers access heap profiler with this URL:
http://localhost:12379/debug/pprof/heap
2016-01-13 16:12:26 +09:00
Anthony Romano
efa9cd7e0c
Merge pull request #4184 from heyitsanthony/v3-rangereq-sort
...
etcdserver: support sorted range requests in v3 api
2016-01-12 10:26:52 -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
6b1d9fb7ce
*: stop lessor when etcdserver is stopped
2016-01-12 10:06:11 -08:00
Xiang Li
59bf83c7f4
*: now lease keepAlive works on leader
2016-01-09 22:12:02 -08:00
Xiang Li
f5753f2f51
*: support lease Attach
...
Now we can attach keys to leases. And revoking the lease removes all
the attached keys of that lease.
2016-01-09 11:01:58 -08:00
Xiang Li
2566699a48
*: revoke expired leases
2016-01-08 13:37:58 -08:00
Xiang Li
7de0e9130c
Merge pull request #4167 from xiang90/lease_promote
...
*: expose Lessor Promote and Demote interface
2016-01-08 10:38:08 -08:00
Gyu-Ho Lee
f76166a041
*: fix minor typos
2016-01-08 00:21:19 -08:00
Xiang Li
f5fa9b5384
*: expose Lessor Promote and Demote interface
2016-01-07 18:18:20 -08:00
Xiang Li
99bee2fd29
Merge pull request #4162 from xiang90/lease
...
*: add support for lease create and revoke
2016-01-07 16:58:59 -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
Gyu-Ho Lee
5842177172
etcdserver/api/v3rpc: fill in KV ResponseHeader
2016-01-07 12:18:31 -08:00
Xiang Li
43a777b7a2
*: get snapshot from backend
...
We should get snapshot from backend, not just KV.
We plan to store the lease data into backend too.
2016-01-06 22:40:23 -08:00
Xiang Li
1714290f4e
storage: support recovering from backend
...
We want the KV to support recovering from backend to avoid
additional pointer swap. Or we have to do coordination between
etcdserver and API layer, since API layer might have access to
kv pointer and use a closed kv.
2016-01-06 21:16:55 -08:00
Gyu-Ho Lee
366e7a879f
*: fill in WatchResponse.Header
...
Related to coreos#3848.
2016-01-06 15:12:53 -08:00
Xiang Li
5dd3f91903
*: make backend outside kv
...
KV and lease will share the same backend. Thus we need to make
backend outside KV.
2016-01-05 19:55:29 -08:00
Xiang Li
1e61243fd7
Merge pull request #4134 from xiang90/lease
...
lease: modify API and persist lease to disk
2016-01-05 10:30:52 -08:00
Xiang Li
09b420f08c
*: move leaseID typedef to lease pkg
2016-01-05 10:18:17 -08:00
Anthony Romano
838328b057
etcdserver: fix racey WaitSchedule() tests to wait for recorder actions
...
Fixes #4119
2016-01-05 09:39:18 -08:00
Anthony Romano
384cc76299
pkg/testutil: make Recorder an interface
...
Provides two implementations of Recorder-- one that is non-blocking
like the original version and one that provides a blocking channel
to avoid busy waiting or racing in tests when no other synchronization
is available.
2016-01-05 09:39:18 -08:00
Anthony Romano
e1bf726bc1
*: split out etcdserver's test mockup objects to live in interfaces' packages
2016-01-05 09:39:13 -08:00
Anthony Romano
21a6ade53d
storage: change type of WatchIDs from int64 to WatchID
2016-01-04 19:52:22 -08:00
Gyu-Ho Lee
556d4a6932
*: remove CancelFunc return for Watch. Use Cancel for watch.
2016-01-04 16:17:55 -08:00
Xiang Li
4336278b44
*: support put with lease
2016-01-04 15:54:06 -08:00