Yicheng Qin
9d53b94546
rafthttp: add streaming server and client
2014-11-20 11:34:50 -08:00
Xiang Li
8bf71d796e
*: gracefully stop etcdserver
2014-11-14 14:12:24 -08:00
Yicheng Qin
77433ff6da
etcdserver: recover cluster when receiving newer snapshot
2014-11-14 12:11:21 -08:00
Yicheng Qin
f6a7f96967
etcdserver: recover from snapshot before applying requests
2014-11-14 12:08:39 -08:00
Xiang Li
b5d480f17a
etcdserver: add StopNotify
2014-11-13 14:16:48 -08:00
Xiang Li
978d0f1ca1
etcdserver: fix TestDoProposalStopped test
...
We start etcd server in this test without the cluster. Sometimes it panics when
accessing the cluster. Most of the time it does not panic, since we can stop the
server fast enough before applying the first configuration change entry.
2014-11-13 14:08:59 -08:00
Xiang Li
30dfdb0ea9
etcdserver: fix server.Stop()
...
Stop should be idempotent. It should simply send a stop signal to the server.
It is the server's responsibility to stop the go-routines and related components.
2014-11-13 13:47:12 -08:00
Yicheng Qin
0c2b45ddc6
etcdserver: not record attributes when add member
...
There is no need to set attributes value when adding member because new
member will publish the information whenever it starts.
2014-11-12 17:48:15 -08:00
Xiang Li
5967794009
*: support updating advertise-peer-url
...
Users might want to update the peerurl of the etcd member in several cases.
For example, if the IP address of the physical machine etcd running on is
changed, user need to update the adversite-pee-rurl accordingly.
This commit makes etcd support updating the advertise-peer-url of its members.
2014-11-11 12:07:03 -08:00
Xiang Li
67a0de4bbc
etcdserver: use member pointer for all tests
2014-11-11 11:20:56 -08:00
Xiang Li
e4931e0c47
etcdserver: remove unnecessary newTestMemberp
2014-11-11 11:09:33 -08:00
Yicheng Qin
4b9c3a9102
etcdserver: not get cluster info from self peer urls
...
Self peer urls have not started to serve at the time that it tries to
get cluster info, so it is useless to get cluster info from self peer
urls.
2014-11-08 13:52:48 -08:00
Jonathan Boulle
55b4ff0cdf
etcdserver: discard log output in tests
2014-11-07 11:45:46 -08:00
Yicheng Qin
9d19429993
Merge pull request #1609 from yichengq/202
...
etcdserver: refactor sender
2014-11-07 10:12:02 -08:00
Yicheng Qin
ccded6644a
Merge pull request #1505 from yichengq/193
...
etcdserver: refactor non-blocking check for sync tests
2014-11-06 15:48:18 -08:00
Yicheng Qin
457b30e585
etcdserver: add/remove sender in sendhub explicitly
2014-11-06 14:04:14 -08:00
Yicheng Qin
211c5e3e29
etcdserver: fix data race in Cluster struct
2014-11-06 14:04:14 -08:00
Yicheng Qin
1e05cd75c7
etcdserver: refactor sender
...
1. restrict the number of inflight connections to remote member
2. support stop
2014-11-06 14:04:14 -08:00
Xiang Li
99b1af40c6
etcdserver: move config validation to cluster
2014-11-05 17:55:07 -08:00
Xiang Li
3fc6f9c24f
Merge pull request #1586 from xiangli-cmu/fix_node
...
*: add Advance interface to raft.Node
2014-11-05 15:09:51 -08:00
Xiang Li
0d7c43d885
*: add a Advance interface to raft.Node
...
Node set the applied to committed right after it sends out Ready to application. This is not
correct since the application has not actually applied the entries at that point. We add a
Advance interface to Node. Application needs to call Advance to tell raft Node its progress.
Also this change can avoid unnecessary copying when application is still applying entires but
there are more entries to be applied.
2014-11-05 15:04:14 -08:00
Yicheng Qin
4d40816a90
etcdserver: refactor non-blocking check for sync tests
...
to make it much more reliable and avoid false errors.
2014-11-04 13:07:44 -08:00
Yicheng Qin
866ec5948c
etcdhttp/etcdserver: support HEAD on /v2/keys/ namespace
2014-11-04 00:06:49 -08:00
Yicheng Qin
5da481213e
Merge pull request #1478 from unihorn/190
...
etcdserver: panic on storage error
2014-11-03 11:07:55 -08:00
Yicheng Qin
433b4138c5
etcdserver: panic on storage error
...
It is a critical error to etcd, and etcd is not able to recover it now.
2014-11-03 10:46:04 -08:00
Jonathan Boulle
55c92ad456
*: create ID type
...
This creates a simple ID type (wrapped around uint64) to provide for
standard serialization/deserialization to a string (i.e. base 16
encoded). This replaces strutil so now that package is removed.
2014-10-31 10:34:07 -07:00
Brian Waldon
480e92d340
strutil: move IDAsHex/IDFromHex to new pkg
2014-10-27 18:39:09 -07:00
Brian Waldon
2472953939
etcdhttp: hex-encode member ID
2014-10-27 17:25:22 -07:00
Yicheng Qin
ee27846d5b
Merge pull request #1422 from unihorn/187
...
etcdserver: parse context error for better message
2014-10-27 11:00:01 -07:00
Yicheng Qin
e77f8e311c
etcdserver: parse context error for better message
2014-10-27 10:59:15 -07:00
Jonathan Boulle
6e6d1897d8
pkg: move everything into subpackages
2014-10-27 09:57:28 -07:00
Xiang Li
009b737cef
*: better logging
2014-10-26 08:13:03 -07:00
Yicheng Qin
ea0bff80c0
etcdserver: update member attribute when apply request
2014-10-24 12:43:53 -07:00
Yicheng Qin
89572b5fd7
etcdserver: refactor cluster and clusterStore
...
Integrate clusterStore into cluster, and let cluster become the source of
cluster info.
2014-10-23 13:27:54 -07:00
Yicheng Qin
5014558b00
etcdserver: clean code
2014-10-22 11:09:36 -07:00
Yicheng Qin
89b032cd69
etcdserver: Member.storeKey -> memberStoreKey
2014-10-22 11:09:36 -07:00
Yicheng Qin
7498234e40
etcdserver: record removed member to check incoming message
2014-10-22 11:09:35 -07:00
Xiang Li
a44849deec
Merge pull request #1286 from coreos/clusterid
...
*: generate clusterid
2014-10-20 19:07:03 -07:00
Jonathan Boulle
b3d5333cb3
*: fix various formatting issues
2014-10-20 17:55:18 -07:00
Yicheng Qin
92230cee63
Merge pull request #1333 from unihorn/172
...
etcdserver/raft: remove msgDenied, removedNodes, shouldStop
2014-10-20 16:04:09 -07:00
Yicheng Qin
e200d2a8e2
etcdserver/raft: remove msgDenied, removedNodes, shouldStop
...
The future plan is to do all these in etcdserver level.
2014-10-20 15:13:18 -07:00
Xiang Li
ea6bcacfe4
*: generate clusterid
2014-10-20 15:00:54 -07:00
Yicheng Qin
f7a0d5387b
etcdserver: stop server gracefully
2014-10-20 14:43:21 -07:00
Yicheng Qin
058537f34a
main: add basic functional test
2014-10-20 14:43:21 -07:00
Jonathan Boulle
7a4d42166b
*: add license header to all source files
2014-10-17 15:41:22 -07:00
Jonathan Boulle
1fa763b47b
store: remove unused function
2014-10-17 00:07:23 -07:00
Yicheng Qin
8cd6030a1d
etcdserver: add checking when apply conf change
2014-10-16 09:49:26 -07:00
Jonathan Boulle
4183b69e12
*: move from third_party to Godep
2014-10-14 00:37:52 -07:00
Yicheng Qin
f693c6ddf2
etcdserver: apply bootstrap conf change
2014-10-13 11:22:23 -07:00
Yicheng Qin
0319b033ea
etcdserver/raft: set context for bootstrap addnode entries
2014-10-13 11:22:23 -07:00