Xiang Li
0aa8258d29
etcdserver: use member instead of node at etcd level
2014-11-12 10:45:35 -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
Xiang Li
077e144e8a
etcdserver: move newTestMember* to member_test.go
2014-11-11 11:02:50 -08:00
Ben Darnell
25b6590547
raft: introduce log storage interface.
...
This change splits the raftLog.entries array into an in-memory
"unstable" list and a pluggable interface for retrieving entries that
have been persisted to disk. An in-memory implementation of this
interface is provided which behaves the same as the old version;
in a future commit etcdserver could replace the MemoryStorage with
one backed by the WAL.
2014-11-10 17:40:39 -05:00
Jonathan Boulle
41757e7f78
etcdserver: collapse shared readWAL logic
2014-11-08 17:07:05 -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
Yicheng Qin
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
Yicheng Qin
46cbfbc630
etcdserver: not add sender when it has existed
2014-11-07 14:05:00 -08:00
Jonathan Boulle
d3fd10798b
Merge pull request #1656 from jonboulle/1656_sender_garbage
...
sender logs garbage
2014-11-07 13:44:18 -08:00
Jonathan Boulle
a6ba4d357c
Merge pull request #1474 from jonboulle/1474_print_peers
...
print out remote peers' information and config change in the cluster
2014-11-07 13:39:32 -08:00
Jonathan Boulle
ca06fd0060
etcdserver: log cluster when adding/removing node
2014-11-07 13:36:41 -08:00
Jonathan Boulle
958ade86a5
etcdserver: log message after loading peers from snapshot
2014-11-07 13:34:43 -08:00
Jonathan Boulle
38ec84693f
etcdserver: clean up sender error message
2014-11-07 13:32:44 -08:00
Xiang Li
78865aa7f7
Merge pull request #1657 from xiangli-cmu/backup
...
*: add ctl backup support
2014-11-07 13:30:54 -08:00
Xiang Li
0d541e6338
*: add ctl backup support
2014-11-07 13:27:44 -08:00
Jonathan Boulle
c3aae88b0c
Merge pull request #1653 from jonboulle/server_order
...
etcdserver: re-order ServerConfig fields
2014-11-07 12:28:29 -08:00
Jonathan Boulle
285cd404e3
etcdserver: print peerURLs when adding member
2014-11-07 12:00:41 -08:00
Jonathan Boulle
a607e097c6
etcdserver: re-order ServerConfig fields
2014-11-07 11:45:59 -08:00
Jonathan Boulle
55b4ff0cdf
etcdserver: discard log output in tests
2014-11-07 11:45:46 -08:00
Jonathan Boulle
14e1442d2d
etcdserver: sort IDs and s/getIDset/getIDs/
2014-11-07 10:57:42 -08:00
Jonathan Boulle
5055863e09
etcdserver: add docstrings for confchanges
2014-11-07 10:19:55 -08:00
Xiang Li
bf47fe7cac
Merge pull request #1647 from xiangli-cmu/force_cluster
...
etcdserver: force new cluster
2014-11-07 10:15:53 -08:00
Yicheng Qin
9d19429993
Merge pull request #1609 from yichengq/202
...
etcdserver: refactor sender
2014-11-07 10:12:02 -08:00
Xiang Li
142dfc7d88
etcdserver: add doc for getIDset
2014-11-07 09:00:58 -08:00
Xiang Li
0a9c6164af
etcdserver: add support for force cluster
2014-11-07 08:49:01 -08:00
Jonathan Boulle
376268391b
Merge pull request #1646 from jonboulle/1536_disco_proxy
...
discovery: add command line flag for discovery-proxy
2014-11-07 08:32:23 -08:00
Jonathan Boulle
ca1b30db10
etcdhttp: return 404 when removing nonexistent member
2014-11-06 16:59:40 -08:00
Yicheng Qin
9454d30854
etcdserver: add sendHub tests
2014-11-06 16:49:13 -08:00
Jonathan Boulle
8f1885a398
discovery: add command line flag for discovery-proxy
2014-11-06 16:35:24 -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
Xiang Li
c5e6053fcd
Merge pull request #1638 from xiangli-cmu/better_logging
...
etcdserver: better logging for clusterFromPeerURLs
2014-11-06 14:33:53 -08:00
Xiang Li
eb0d80767e
etcdserver: better logging for clusterFromPeerURLs
2014-11-06 14:28:07 -08:00
Yicheng Qin
457b30e585
etcdserver: add/remove sender in sendhub explicitly
2014-11-06 14:04:14 -08:00
Yicheng Qin
2138163c61
etcdserver: code clean on sender struct
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
c3b0de943c
etcdserver: discard messages if sender reaches max serving
...
It is the correct thing to do to ensure that the communication is full
of out-of-date messages.
It results in that integration testing is very easy to throw MsgProp away,
and makes client wait until 5 min timeout. Sync interval and heartbeat are
increased to alleviate the traffic.
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
Jonathan Boulle
b65dd84e1a
Merge pull request #1632 from jonboulle/cs_flag
...
etcdmain: use StringsFlag for initialclusterstate
2014-11-06 12:36:22 -08:00
Jonathan Boulle
04f6208ace
etcdmain: use StringsFlag for initialclusterstate
2014-11-06 11:13:24 -08:00
Xiang Li
3cb885c6b2
etcdhttp: return 409 instead of 412 when there is a conflict when adding a member
2014-11-06 11:07:25 -08:00
Xiang Li
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
Xiang Li
bd2b18b6de
etcdserver: validate peerurl when adding members
2014-11-05 23:12:48 -08:00
Jonathan Boulle
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
Xiang Li
6fdbb086f4
Merge pull request #1623 from xiangli-cmu/valid_configuration
...
Valid configuration
2014-11-05 18:13:04 -08:00
Xiang Li
99b1af40c6
etcdserver: move config validation to cluster
2014-11-05 17:55:07 -08:00
Xiang Li
98406af448
cluster: separate out membersFromStore from newClusterFromStore
2014-11-05 15:56:43 -08:00
Yicheng Qin
6c9169b4f4
etcdserver: improve panic message in Cluster
2014-11-05 15:39:28 -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
c5140d5c18
Merge pull request #1614 from yichengq/194
...
*: handle panic and fatal organizedly
2014-11-05 14:08:35 -08:00
Yicheng Qin
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
Jonathan Boulle
89eac70d09
proxy: add docstrings
2014-11-05 10:30:05 -08:00
Xiang Li
f71c247d87
Merge pull request #1604 from xiangli-cmu/fallback_proxy
...
*: support discovery fallback
2014-11-04 16:41:28 -08:00
Jonathan Boulle
e4d0c25365
etcdserver: log adding and removing nodes
2014-11-04 15:05:15 -08:00
Xiang Li
5cb13fd071
*: support discovery fallback
2014-11-04 14:30:22 -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
Jonathan Boulle
0f7add9722
etcdhttp: fix typo in test comment
2014-11-04 12:57:59 -08:00
Jonathan Boulle
cedcc0d8df
etchttp: return 410 gone for permanently removed members
2014-11-04 11:21:24 -08:00
Yicheng Qin
ac49e1d50f
Merge pull request #1594 from unihorn/201
...
etcdhttp/etcdserver: support HEAD on /v2/keys/ namespace
2014-11-04 00:11:47 -08:00
Yicheng Qin
866ec5948c
etcdhttp/etcdserver: support HEAD on /v2/keys/ namespace
2014-11-04 00:06:49 -08:00
Yicheng Qin
2235b47030
Merge pull request #1545 from unihorn/197
...
etcdhttp: always respond json-format error to client
2014-11-03 23:25:14 -08:00
Yicheng Qin
e4b12a8e28
Merge pull request #1593 from unihorn/200
...
etcdserver: print out initial cluster members
2014-11-03 22:23:40 -08:00
Yicheng Qin
9aefb91531
etcdhttp: always respond json-format error to client
2014-11-03 22:19:17 -08:00
Yicheng Qin
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
Jonathan Boulle
ab69c2adbd
etcdhttp: use EcodePrevValueRequired when appropriate
2014-11-03 16:12:50 -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
Brian Waldon
6e038e02a6
etcdserver: fix logging of IDs
2014-10-31 12:26:53 -07:00
Xiang Li
eb472b7745
etcdserver: better logging when member is removed
2014-10-31 12:00:50 -07:00
Yicheng Qin
e02ef6b141
Merge pull request #1546 from unihorn/198
...
etcdserver: better logging for assign ids from upstream
2014-10-31 11:13:43 -07:00
Yicheng Qin
2c5f062b7f
etcdserver: better logging for assign ids from upstream
2014-10-31 11:06:31 -07:00
Jonathan Boulle
9726d3909c
etcdhttp: bump default Server timeout to 5 mins
2014-10-31 10:52:46 -07: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
Yicheng Qin
aa50af1c69
*: clean log.Print
...
1. only log things by default that the operator of etcd may need to react to
2. put package name at the head of log lines
2014-10-30 18:15:53 -07:00
Xiang Li
0f8b035253
etcdserver: fix sender logging
2014-10-30 18:00:00 -07:00
Xiang Li
02ff59514f
etcdhttp: fix logging in raft handler
2014-10-30 17:39:01 -07:00
Xiang Li
9a56001d63
Merge pull request #1537 from xiangli-cmu/cluster-token
...
Cluster token
2014-10-30 17:09:25 -07:00
Yicheng Qin
ac71ad92af
Merge pull request #1452 from unihorn/187
...
etcdserver: exit program when node is removed
2014-10-30 15:32:26 -07:00
Yicheng Qin
ed30b6deca
etcdserver: exit program when node is removed
...
Originally added in 400dd2d7bc
,
and removed by mistake when refactor cluster.
2014-10-30 15:31:58 -07:00
Xiang Li
3dfb6723b2
*: rename initial-cluster-name to initial-cluster-token
2014-10-30 13:43:38 -07:00
Jonathan Boulle
19881b2f15
etcdhttp: return 404 when removing nonexistent member
2014-10-30 09:57:54 -07:00
Brian Waldon
011a67c878
httptypes: add MemberCreateRequest.MarshalJSON
2014-10-29 16:37:07 -07:00
Brian Waldon
2c0f6e4bf9
etcdhttp: s/TestServeAdminMembers*/TestServeMembers*/
2014-10-29 16:18:03 -07:00
Brian Waldon
f810dda9b2
Merge pull request #1481 from bcwaldon/no-more-admin-api
...
Remove "admin" from /v2/admin/members
2014-10-29 15:43:37 -07:00
Brian Waldon
de0cf2fb8e
Merge pull request #1459 from bcwaldon/member-list
...
etcdhttp: encode MembersCollection properly
2014-10-29 14:49:22 -07:00
Jonathan Boulle
4b1431109e
Merge pull request #1490 from jonboulle/1490
...
Logging member ID as int
2014-10-29 14:42:02 -07:00
Jonathan Boulle
e99da41539
etcdserver: log member ID as hex string
2014-10-29 14:36:05 -07:00
Jonathan Boulle
5bba81f5fc
Merge pull request #1472 from jonboulle/clone_event
...
waitIndex is not working
2014-10-29 14:23:32 -07:00
Jonathan Boulle
9546df9a6c
etcdserver: make peer URLs log message more readable
2014-10-29 14:18:51 -07:00
Brian Waldon
ab67fa4cc6
api: remove admin prefix from members API
2014-10-29 12:12:51 -07:00
Brian Waldon
d3bafd6aa4
etcdhttp: encode MembersCollection properly
2014-10-29 12:06:22 -07:00
Jonathan Boulle
84be7c1e9e
etcdserver/store: clone Events before modifying
2014-10-29 11:54:35 -07:00
Brian Waldon
04e56a454e
Merge pull request #1465 from bcwaldon/member-post
...
Clean up POST /v2/admin/members
2014-10-28 17:08:30 -07:00
Brian Waldon
658a84312b
Merge pull request #1464 from bcwaldon/error-ctype
...
Set Content-Type before calling WriteHeader
2014-10-28 15:48:23 -07:00
Brian Waldon
6f851ac885
httptypes: set headers before call to WriteHeader
2014-10-28 11:08:10 -07:00
Brian Waldon
2b4201c53d
httptypes: test HTTPError
2014-10-28 10:59:53 -07:00
Brian Waldon
c07b9ae32e
etcdhttp: 415 when content-type not JSON
2014-10-28 10:38:09 -07:00
Brian Waldon
8fbf887e52
etcdhttp: only log when error deserves it
2014-10-28 10:30:05 -07:00
Brian Waldon
d1fb732e63
etcdhttp: properly serialize Member on POST
2014-10-28 10:21:11 -07:00
Brian Waldon
8b0eaa9e15
etcdhttp: separate member create deserialization
2014-10-28 10:09:05 -07:00
Brian Waldon
87327a245d
Merge pull request #1448 from bcwaldon/member-URLs
...
fix usage of copy in newMemberCollection
2014-10-27 18:43:33 -07:00
Brian Waldon
8d052dd374
etcdhttp: copy Member URLs properly
2014-10-27 18:39:33 -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
Brian Waldon
80172c3d4a
etcdserver: s/parseMemberID/mustParseMemberIDFromKey/
2014-10-27 17:25:00 -07:00
Xiang Li
6cb45236ac
etcdhttp: make admin HTTP endpoint return json format error
2014-10-27 17:03:58 -07:00
Jonathan Boulle
e849d8e157
etcdhttp: DELETE on members = MethodNotAllowed
2014-10-27 16:49:04 -07:00
Jonathan Boulle
387639e802
etcdserver/etcdhttp: treat /v2/admin/members and /v2/admin/members/ equally
2014-10-27 16:49:03 -07:00
Xiang Li
d0604c7d5c
error: write->writeTo
2014-10-27 15:32:36 -07:00
Brian Waldon
753bc5e166
httptypes: add doc.go
2014-10-27 11:22:47 -07:00
Brian Waldon
14795d8ed9
httptypes: use MemberCollection for JSON (de)serialization
2014-10-27 11:22:47 -07:00
Brian Waldon
7545152318
httptypes: use []string for Member URLs
2014-10-27 11:22:47 -07:00
Brian Waldon
54a2d8ffc9
client: move Member models to new types pkg
2014-10-27 11:22:46 -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
585881a870
Merge pull request #1428 from jonboulle/subpackages
...
pkg: move everything into subpackages
2014-10-27 10:32:11 -07:00
Jonathan Boulle
6e6d1897d8
pkg: move everything into subpackages
2014-10-27 09:57:28 -07:00
Xiang Li
6f792354ca
etcdhttp: attach clusterID to key and adminMember endpoint
2014-10-27 07:52:39 -07:00
Xiang Li
000962d689
Merge pull request #1421 from xiangli-cmu/logging
...
*: better logging
2014-10-26 20:13:55 -07:00
Brian Waldon
b06499d0c2
etcdserver/etcdhttp: break apart HTTP handlers
2014-10-26 13:20:53 -07:00
Xiang Li
009b737cef
*: better logging
2014-10-26 08:13:03 -07:00
Brian Waldon
435611cf0d
etcdserver/etcdhttp: break apart http.go
2014-10-25 11:28:52 -07:00
Jonathan Boulle
e630910e31
Merge pull request #1398 from jonboulle/proxy
...
proxy not working on master
2014-10-24 15:55:31 -07:00
Yicheng Qin
338f59db74
Merge pull request #1401 from unihorn/186
...
etcdhttp: parse quorum field from http request
2014-10-24 15:54:40 -07:00
Jonathan Boulle
719c57a29d
proxy: retrieve ClientURLs from cluster
...
This is a simple solution to having the proxy keep up to date with the
state of the cluster. Basically, it uses the cluster configuration
provided at start up (i.e. with `-initial-cluster-state`) to determine
where to reach peer(s) in the cluster, and then it will periodically hit
the `/members` endpoint of those peer(s) (using the same mechanism that
`-cluster-state=existing` does to initialise) to update the set of valid
client URLs to proxy to.
This does not address discovery (#1376 ), and it would probably be better
to update the set of proxyURLs dynamically whenever we fetch the new
state of the cluster; but it needs a bit more thinking to have this done
in a clean way with the proxy interface.
Example in Procfile works again.
2014-10-24 15:54:12 -07:00
Yicheng Qin
0e1d1646fd
etcdhttp: parse quorum field from http request
2014-10-24 15:44:39 -07:00
Yicheng Qin
cb59a46576
Merge pull request #1396 from unihorn/185
...
etcdhttp: trim StoreKeysPrefix from error in serveKeys
2014-10-24 14:48:31 -07:00
Jonathan Boulle
46528ee17b
Merge pull request #1391 from jonboulle/version
...
/version is 404 now
2014-10-24 14:48:02 -07:00
Jonathan Boulle
9a465b9cf5
etcdhttp: add /version endpoint
2014-10-24 14:47:37 -07:00
Jonathan Boulle
bac13b5cb2
etcdserver/etcdhttp: remove log message for every received raft
2014-10-24 14:25:20 -07:00
Yicheng Qin
34dcbb4679
etcdhttp: trim StoreKeysPrefix from error in serveKeys
...
It returns error messaage like this now:
'{"errorCode":100,"message":"Key not found","cause":"/1/pants","index":10}'
The commit trims '/1' prefix from cause field if exists.
This is a hack to make it display well. It is correct because all error causes
that contain Path puts Path at the head of the string.
2014-10-24 14:12:53 -07:00
Jonathan Boulle
d7f9228133
Merge pull request #1381 from jonboulle/members
...
/v2/admin/members API should use JSON containers in response
2014-10-24 13:20:10 -07:00
Yicheng Qin
49a68adcf1
Merge pull request #1386 from unihorn/184
...
etcdserver: update member attribute when apply request
2014-10-24 12:46:11 -07:00
Yicheng Qin
ea0bff80c0
etcdserver: update member attribute when apply request
2014-10-24 12:43:53 -07:00
Yicheng Qin
d1b57b448d
Merge pull request #1383 from unihorn/183
...
etcdserver: support newly-join member bootstrap
2014-10-24 12:43:25 -07:00
Yicheng Qin
08593bcdf6
etcdserver: support newly-join member bootstrap
2014-10-24 12:38:44 -07:00
Jonathan Boulle
543e12074a
etcdserver/member: change JSON fields to lowerCamelCase
2014-10-24 12:03:17 -07:00
Jonathan Boulle
14852662ef
etcdhttp: rename Members -> members in JSON, update doc
2014-10-24 12:03:17 -07:00
Jonathan Boulle
7ef468b315
etcdhttp: remove /v2/admin/members/x serving
2014-10-24 12:03:17 -07:00
Jonathan Boulle
9b679de9dd
etcdserver/etcdhttp: use container for admin/members endpoint
2014-10-24 12:03:17 -07:00
Xiang Li
e081ad7298
Merge pull request #1368 from xiangli-cmu/doc
...
doc: add admin api doc
2014-10-24 10:42:14 -07:00
Jonathan Boulle
0276089ed9
etcdserver: fix + expand config tests
2014-10-24 10:09:42 -07:00
Jonathan Boulle
b9514ea265
etcdserver: add test for cluster.String
2014-10-24 10:03:28 -07:00
Xiang Li
ed29259801
etcdserver: fix member endpoint on peerurl
2014-10-23 17:18:01 -07:00
Jonathan Boulle
d7301a5cf4
main: fix proxy initialization and setupCluster
2014-10-23 16:09:29 -07:00
Xiang Li
d8258c38be
Merge pull request #1374 from xiangli-cmu/cluster_on_peerurl
...
etcdserver: add member endpoint to peerurl
2014-10-23 16:08:45 -07:00
Jonathan Boulle
af42f4a56b
etcdserver: sort Members() in Cluster
2014-10-23 15:57:27 -07:00
Xiang Li
02551c277d
etcdserver: add member endpoint to peerurl
2014-10-23 15:55:00 -07:00
Yicheng Qin
4d80f01201
etcdserver: Cluster.IsIDremoved -> Cluster.IsIDRemoved
2014-10-23 14:29:58 -07:00
Xiang Li
c25c50582e
doc: add admin api doc
2014-10-23 14:26:33 -07:00
Yicheng Qin
d47de988e4
etcdserver: panic when >1 members have the given name in MemberByName
2014-10-23 14:24:07 -07:00
Yicheng Qin
8eee8c260e
etcdserver: rebase on master and code clean
2014-10-23 13:58:55 -07:00
Yicheng Qin
e21de51768
etcdserver: remove NewClusterFromMemberInfos
2014-10-23 13:27:55 -07:00
Yicheng Qin
f8b8bdeb17
etcdserver: use path.Join for member key in cluster
2014-10-23 13:27:54 -07:00
Yicheng Qin
3d243baacd
etcdserver: generate id when new cluster
2014-10-23 13:27:54 -07:00
Yicheng Qin
d2c4e981ed
etcdserver: Member.Pick -> Member.PickPeerURL
2014-10-23 13:27:54 -07:00
Yicheng Qin
67412e07f8
etcdserver: MemberFromName -> MemberByName
2014-10-23 13:27:54 -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
Xiang Li
86facb3f91
etcdhttp: sort member
2014-10-23 11:21:20 -07:00
Xiang Li
8d6bb4a471
etcdserver: support GET on admin endpoint
2014-10-23 10:53:55 -07:00
Xiang Li
051ad7585f
Merge pull request #1363 from coreos/return_json
...
etcdserver: admin PUT returns the json representation of the newly creat...
2014-10-22 20:11:08 -07:00
Brandon Philips
2cb8efb9b5
Merge pull request #1362 from philips/consistent-hex-use
...
etcdserver: use hex for cluster and machine id
2014-10-22 18:43:21 -07:00
Xiang Li
63fa2a626a
etcdserver: admin PUT returns the json representation of the newly created member
2014-10-22 17:19:28 -07:00
Xiang Li
712a05be83
Merge pull request #1357 from coreos/accept_json
...
etcdserver: admin endpoint accepts json body
2014-10-22 16:30:22 -07:00
Brandon Philips
ab90369f9e
etcdserver: use hex for cluster and machine id
...
Continue using hex everywhere. Including here.
TODO: cleanup the printing of the structs which currently have decimal
to/from:
`{Type:MsgAppResp To:9973738105406047488 From:17050684879817348455 T...`
2014-10-22 16:24:50 -07:00
Xiang Li
7be0f4b618
etcdserver: admin endpoint accepts json body
2014-10-22 16:19:48 -07:00
Brandon Philips
0d0bc3a57e
etcdserver: fixup mismatch error line
...
Both wcid and gcid are strings, don't try to print it out in hex.
2014-10-22 15:48:22 -07:00
Brandon Philips
2c21ae0f16
Merge pull request #1358 from philips/etcdserver-cleanup-cluster-id-msg
...
etcdserver: cleanup the cluster ID error message
2014-10-22 15:42:30 -07:00
Barak Michener
1f84991b3a
Merge pull request #1355 from barakmich/cluster_after_wal
...
etcdserver: Check the initial cluster settings after checking if the WAL...
2014-10-22 18:31:28 -04:00
Brandon Philips
400dd2d7bc
etcdserver: cleanup the cluster ID error message
...
1) Don't panic since we know exactly where this is coming from and don't
need the user to see a full back trace
2) Add docs explaining this situation a bit further
3) Cleanup the error to look like other similiar errors
2014-10-22 15:26:35 -07:00
Barak Michener
e42d65da12
etcdserver: Check the initial cluster settings after checking if the WAL exists
2014-10-22 18:16:43 -04:00
Xiang Li
6d9eb57555
etcdhttp: test bad url for POST on admin endopint
2014-10-22 14:27:08 -07:00
Xiang Li
d00152765a
etcdserver: etcdserver generates the ID when adding new member.
...
When adding new member, the etcdserver generates the ID based on the current time
and the given peerurls. We include time to add the uniqueness, since the node with
same peerurls should be able to (add, then remove) several times.
2014-10-22 13:15:56 -07:00
Barak Michener
13656eb4e7
Merge pull request #1340 from barakmich/better_ids2
...
etcdserver: Calculate IDs based on PeerURLs and --initial-cluster-name
2014-10-22 14:49:49 -04:00
Barak Michener
829cec8ccf
Merge stylistic comments
2014-10-22 14:26:05 -04:00
Yicheng Qin
5014558b00
etcdserver: clean code
2014-10-22 11:09:36 -07:00
Yicheng Qin
3162ead7b1
etcdhttp: do message statistics only on valid ones
2014-10-22 11:09:36 -07:00
Yicheng Qin
9ad4a8e33a
etcdserver: add isKeyNotFound helper func
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
Barak Michener
c5d1fcd70a
fix wrong name
2014-10-22 13:58:43 -04:00
Barak Michener
cb5a638c44
style comments
2014-10-22 13:52:42 -04:00
Barak Michener
502a3c2460
Refactor Cluster to hold and add members.
2014-10-22 13:52:42 -04:00
Barak Michener
1347e3952f
docs and cluster ID change based on name
2014-10-22 13:52:42 -04:00
Barak Michener
ad0b7b7dbb
Add cluster name to etcd flags
2014-10-22 13:52:42 -04:00
Barak Michener
1ca7c031ff
first round of comments
...
Conflicts:
etcdserver/config.go
etcdserver/config_test.go
etcdserver/server.go
main.go
2014-10-22 13:49:54 -04:00
Barak Michener
456d1ebcae
etcdserver: Calculate IDs for nodes solely on PeerURLs
...
Removes the notion of name being anything more than advisory or
command-line grouping, and adds checks for bootstrapping the command
line. IDs are consistent if the URLs are consistent.
2014-10-22 13:49:54 -04:00
Yicheng Qin
06b196e345
etcdhttp: writeEvent -> writeKeyEvent
2014-10-21 16:10:49 -07:00
Yicheng Qin
ca73f25615
etcdhttp: parseRequest -> parseKeyRequest
2014-10-21 16:10:49 -07:00
Yicheng Qin
e2b6a4fc4c
etcdserver: const XXXDir -> StoreXXXPrefix
...
and code clean
2014-10-21 16:10:49 -07:00
Yicheng Qin
2ff3cac653
etcdserver/etcdhttp: store location adjustment
...
Detailed adjustment:
/_etcd/machines/* -> /0/members/*
/* -> /1/*
And it keeps key path returned to user the same as before.
2014-10-21 16:10:19 -07:00
Xiang Li
e69c37adf0
etcdserver: panic on clusterid mismatch
2014-10-21 15:22:16 -07:00
Xiang Li
894e678ad6
etcdserver: checking clusterID
2014-10-21 11:05:24 -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
Xiang Li
0fd28169c8
etcdserver: use id,cid
2014-10-20 16:35:41 -07:00
Xiang Li
dc68dc9ebd
etcdserver: add a todo for clusterid generation
2014-10-20 16:26:31 -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