f6a7f96967
etcdserver: recover from snapshot before applying requests
2014-11-14 12:08:39 -08:00
e66bda957b
Merge pull request #1714 from xiang90/stop
...
StopNotify
2014-11-13 15:16:52 -08:00
6a1fe00615
Merge pull request #1704 from xiang90/print_config
...
*: print out configuration when necessary
2014-11-13 14:35:50 -08:00
11f392bdc8
Merge pull request #1708 from yichengq/223
...
etcdserver: validate new node is not registered before in best effort
2014-11-13 14:30:40 -08:00
b5d480f17a
etcdserver: add StopNotify
2014-11-13 14:16:48 -08:00
fb344bc33f
etcdserver: minor cleanup
2014-11-13 14:01:56 -08:00
ac907d746b
etcdserver: validate new node is not registered before in best effort
2014-11-13 13:56:11 -08:00
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
d6f40acc86
etcdserver: add ID() function to the Server interface.
2014-11-13 11:37:06 -08:00
92096dfdc3
*: print out configuration when necessary
2014-11-13 10:46:42 -08:00
0d18a0f381
pkg/wait: move wait to pkg/wait
2014-11-13 09:11:53 -08:00
ba915ad5a8
etcdserver: do not add/remove/update local member to/from sender hub
2014-11-12 20:45:21 -08:00
0aa8258d29
etcdserver: use member instead of node at etcd level
2014-11-12 10:45:35 -08:00
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
41757e7f78
etcdserver: collapse shared readWAL logic
2014-11-08 17:07:05 -08:00
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
014ef0f52d
etcdserver: fix data race in cluster
...
The data race happens when etcd updates member attributes and fetches
member info in http handler at the same time.
2014-11-07 16:13:07 -08:00
ca06fd0060
etcdserver: log cluster when adding/removing node
2014-11-07 13:36:41 -08:00
958ade86a5
etcdserver: log message after loading peers from snapshot
2014-11-07 13:34:43 -08:00
285cd404e3
etcdserver: print peerURLs when adding member
2014-11-07 12:00:41 -08:00
5055863e09
etcdserver: add docstrings for confchanges
2014-11-07 10:19:55 -08:00
bf47fe7cac
Merge pull request #1647 from xiangli-cmu/force_cluster
...
etcdserver: force new cluster
2014-11-07 10:15:53 -08:00
9d19429993
Merge pull request #1609 from yichengq/202
...
etcdserver: refactor sender
2014-11-07 10:12:02 -08:00
0a9c6164af
etcdserver: add support for force cluster
2014-11-07 08:49:01 -08:00
8f1885a398
discovery: add command line flag for discovery-proxy
2014-11-06 16:35:24 -08:00
c5e6053fcd
Merge pull request #1638 from xiangli-cmu/better_logging
...
etcdserver: better logging for clusterFromPeerURLs
2014-11-06 14:33:53 -08:00
eb0d80767e
etcdserver: better logging for clusterFromPeerURLs
2014-11-06 14:28:07 -08:00
457b30e585
etcdserver: add/remove sender in sendhub explicitly
2014-11-06 14:04:14 -08:00
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
04f6208ace
etcdmain: use StringsFlag for initialclusterstate
2014-11-06 11:13:24 -08:00
4ed60471fe
Merge pull request #1627 from xiangli-cmu/validate_peer_url
...
etcdserver: validate peerurl when adding members
2014-11-06 10:43:22 -08:00
bd2b18b6de
etcdserver: validate peerurl when adding members
2014-11-05 23:12:48 -08:00
68bca981de
discovery: simplify interface
...
There's no real need to expose a Discoverer interface/struct when the
only use of the interface (and indeed the module) is to invoke a single
function. This isn't Java, after all. So instead, simplify to Discovery
exposing just two functions: JoinCluster (i.e. what was formerly called
"discovery"), and GetCluster (hitherto "ProxyDiscovery")
2014-11-05 22:45:01 -08:00
99b1af40c6
etcdserver: move config validation to cluster
2014-11-05 17:55:07 -08:00
3fc6f9c24f
Merge pull request #1586 from xiangli-cmu/fix_node
...
*: add Advance interface to raft.Node
2014-11-05 15:09:51 -08:00
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
c5140d5c18
Merge pull request #1614 from yichengq/194
...
*: handle panic and fatal organizedly
2014-11-05 14:08:35 -08:00
791b2fd503
*: handle panic and fatal more consistently
...
1. etcd fatals if there is critical error in the system and operator should
do something for it
2. etcd panics if there happens something unexpected, and it should be
reported to us to debug.
2014-11-05 13:53:24 -08:00
89eac70d09
proxy: add docstrings
2014-11-05 10:30:05 -08:00
f71c247d87
Merge pull request #1604 from xiangli-cmu/fallback_proxy
...
*: support discovery fallback
2014-11-04 16:41:28 -08:00
e4d0c25365
etcdserver: log adding and removing nodes
2014-11-04 15:05:15 -08:00
5cb13fd071
*: support discovery fallback
2014-11-04 14:30:22 -08:00
866ec5948c
etcdhttp/etcdserver: support HEAD on /v2/keys/ namespace
2014-11-04 00:06:49 -08:00
5ed5d44652
etcdserver: print out initial cluster members
...
It is moved from etcdmain pkg because the line should only be printed out
when etcd bootstraps at the first time.
2014-11-03 19:34:24 -08:00
5da481213e
Merge pull request #1478 from unihorn/190
...
etcdserver: panic on storage error
2014-11-03 11:07:55 -08:00
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
6e038e02a6
etcdserver: fix logging of IDs
2014-10-31 12:26:53 -07:00
e02ef6b141
Merge pull request #1546 from unihorn/198
...
etcdserver: better logging for assign ids from upstream
2014-10-31 11:13:43 -07:00
2c5f062b7f
etcdserver: better logging for assign ids from upstream
2014-10-31 11:06:31 -07:00
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