1264dbe | Wolfgang Ebner | 12 June 2015, 18:35:38 UTC | proxy: added endpoint refresh and timeout configuration values the default dial timeout was set to 30 seconds this made the proxy a pain to use in failure scenarios. fixes 2862 | 13 June 2015, 07:42:18 UTC |
8e7fa9e | Xiang Li | 12 June 2015, 22:20:18 UTC | Merge pull request #2976 from yichengq/fix-lock-test pkg/fileutil: wait longer for relock | 12 June 2015, 22:20:18 UTC |
7723b91 | Yicheng Qin | 12 June 2015, 21:53:55 UTC | pkg/fileutil: wait longer for relock multiple cpu running makes it slower, so it waits longer for relock. | 12 June 2015, 22:17:28 UTC |
219d304 | Yicheng Qin | 12 June 2015, 21:51:05 UTC | Merge pull request #2968 from yichengq/fix-stream-reader-init rafthttp: always init streamReader before return from newPeer | 12 June 2015, 21:51:05 UTC |
288cce0 | Xiang Li | 12 June 2015, 21:38:55 UTC | Merge pull request #2975 from yichengq/fix-purge-test pkg/fileutil: wait longer before checking purge results | 12 June 2015, 21:38:55 UTC |
7ff1fa3 | Yicheng Qin | 12 June 2015, 20:00:41 UTC | rafthttp: always init streamReader before return from newPeer Or etcd will panic if someone calls `setTerm()`, which uses streamReader internally, before streamReader is inited. | 12 June 2015, 21:38:14 UTC |
75f91ba | Yicheng Qin | 12 June 2015, 21:05:50 UTC | pkg/fileutil: wait longer before checking purge results multiple cpu running may be slower than single cpu running, so it may take longer time to remove files. Increase from 5ms to 20ms to give it enough time. | 12 June 2015, 21:36:15 UTC |
684c721 | Xiang Li | 12 June 2015, 21:34:52 UTC | Merge pull request #2970 from yichengq/fix-stream-test rafthttp: use buffered channel as recv/prop chan | 12 June 2015, 21:34:52 UTC |
dccec11 | Yicheng Qin | 12 June 2015, 21:27:17 UTC | Merge pull request #2973 from yichengq/fix-recv-log rafthttp: fix the misformat logging line, and rename internal var for more clarity | 12 June 2015, 21:27:17 UTC |
36f75cf | Yicheng Qin | 12 June 2015, 20:21:11 UTC | rafthttp: use buffered channel as recv/prop chan So it ensures that the message will not be discarded because the receive side has not been ready, which happens easily in multiple core test. Use log.fatal instead of log.error. The test exits when there is something wrong because the error may affect following test cases. | 12 June 2015, 21:25:11 UTC |
2f05b24 | Yicheng Qin | 12 June 2015, 20:54:31 UTC | rafthttp: {from, to} -> {local, remote} in stream {from, to} nameings are confused when it both dials and receives messages from the remote. Change it to {local, remote} for better clarity. | 12 June 2015, 21:17:30 UTC |
bcc1aad | Yicheng Qin | 12 June 2015, 20:48:59 UTC | rafthttp: fix the misformat logging line before: ``` 2015/06/12 20:06:19 rafthttp: dropped MsgApp from %!s(uint64=2) since receiving buffer is full ``` after: ``` 2015/06/12 13:51:38 rafthttp: dropped MsgProp from 2 since receiving buffer is full ``` | 12 June 2015, 21:12:49 UTC |
ae42371 | Yicheng Qin | 12 June 2015, 20:53:00 UTC | Merge pull request #2965 from yichengq/fix-issue2904 integration: fix TestIssue2904 in multiple cores | 12 June 2015, 20:53:00 UTC |
b98aa3a | Xiang Li | 12 June 2015, 20:42:54 UTC | Merge pull request #2972 from yichengq/test-longer test: extend integration timeout to 10m | 12 June 2015, 20:42:54 UTC |
768cb43 | Yicheng Qin | 12 June 2015, 17:09:07 UTC | test: extend integration timeout to 10m We test with `-cpu 1,2,4` now, and it takes longer time. | 12 June 2015, 20:41:35 UTC |
796d99c | Yicheng Qin | 12 June 2015, 02:46:32 UTC | integration: fix TestIssue2904 when multiple cores Do not wait for the cluster view of removed member to match with expected view, since removed member does not apply entries after it is removed. | 12 June 2015, 17:20:27 UTC |
ea3c7d1 | Yicheng Qin | 12 June 2015, 16:23:23 UTC | Merge pull request #2960 from yichengq/fix-drop-flood rafthttp: pretty print message drop info | 12 June 2015, 16:23:23 UTC |
0de0e4b | Yicheng Qin | 11 June 2015, 20:21:13 UTC | rafthttp: pretty print message drop info | 12 June 2015, 16:14:53 UTC |
e46fa0a | Yicheng Qin | 12 June 2015, 15:03:12 UTC | Merge pull request #2957 from yichengq/fix-pipeline-test rafthttp: fix TestStopBlockedPipeline | 12 June 2015, 15:03:12 UTC |
c21cc5b | Yicheng Qin | 11 June 2015, 16:16:23 UTC | rafthttp: fix TestStopBlockedPipeline Refactor the fake cancel implementation. The old one may cancel other in-flight message in random, which leaves the original target message blocked forever. | 12 June 2015, 14:55:12 UTC |
29dca49 | Yicheng Qin | 11 June 2015, 16:12:23 UTC | rafthttp: wait 1ms before enabling cancel CancelRequest only effects on in-flight request, so we need to wait for Do(request) called before enabling cancel. | 12 June 2015, 14:55:06 UTC |
d8e1950 | Xiang Li | 11 June 2015, 23:11:59 UTC | Merge pull request #2963 from xiang90/fix_discovery_error etcdmain: exit if discovery fails | 11 June 2015, 23:11:59 UTC |
6c8b32d | Xiang Li | 11 June 2015, 22:44:57 UTC | etcdmain: exit if discovery fails Fix #2919 If discovery fails, etcd will hang there and does nothing. This commit fixes the problem. | 11 June 2015, 22:45:00 UTC |
3e706c7 | Xiang Li | 11 June 2015, 22:30:18 UTC | Merge pull request #2953 from yichengq/etcdmain-plog etcdmain: var log -> plog | 11 June 2015, 22:30:18 UTC |
1c19eb4 | Xiang Li | 11 June 2015, 22:29:44 UTC | Merge pull request #2956 from xiang90/log all pkgs use leveled log | 11 June 2015, 22:29:44 UTC |
2c5ab7f | Xiang Li | 11 June 2015, 16:57:45 UTC | discovery: fix infoln -> info | 11 June 2015, 21:22:14 UTC |
8ad7ed3 | Xiang Li | 11 June 2015, 16:54:39 UTC | *:godep log pkg | 11 June 2015, 21:22:14 UTC |
2373fd8 | Xiang Li | 11 June 2015, 16:52:11 UTC | wal: fix the left logging using default log | 11 June 2015, 21:22:14 UTC |
2db8b53 | Xiang Li | 11 June 2015, 16:48:10 UTC | discovery: use leveled log | 11 June 2015, 21:22:14 UTC |
f013a62 | Xiang Li | 11 June 2015, 16:40:44 UTC | etcdserver/stats: use leveled log | 11 June 2015, 21:22:14 UTC |
cf7cb2b | Xiang Li | 11 June 2015, 16:30:31 UTC | etcdserver/security: use leveled log | 11 June 2015, 21:22:14 UTC |
2f795e4 | Xiang Li | 11 June 2015, 16:18:54 UTC | httptypes: use leveled log | 11 June 2015, 21:19:53 UTC |
4b5dbef | Xiang Li | 11 June 2015, 16:03:36 UTC | pkg/pbutil: use leveled log | 11 June 2015, 21:19:53 UTC |
865a5ff | Xiang Li | 11 June 2015, 16:00:54 UTC | pkg/osutil: use leveled log | 11 June 2015, 21:19:53 UTC |
a45f539 | Xiang Li | 11 June 2015, 15:59:43 UTC | pkg/netutil: use leveled log | 11 June 2015, 21:19:52 UTC |
69819d3 | Xiang Li | 11 June 2015, 15:52:55 UTC | pkg/flags: use leveled log | 11 June 2015, 21:19:52 UTC |
7bf0479 | Barak Michener | 11 June 2015, 17:40:32 UTC | Merge pull request #2882 from barakmich/security_client_new *: Add security/authorization to etcd/client and etcdctl | 11 June 2015, 17:40:32 UTC |
1764837 | Yicheng Qin | 11 June 2015, 16:57:50 UTC | etcdmain: clean up plog.Printf Put it into different log levels. | 11 June 2015, 17:24:02 UTC |
ecdf0a8 | Yicheng Qin | 11 June 2015, 17:02:13 UTC | Merge pull request #2959 from yichengq/fix-update-member rafthttp: fix TestUpdateMember | 11 June 2015, 17:02:13 UTC |
1af2b4c | Yicheng Qin | 11 June 2015, 16:40:53 UTC | rafthttp: fix TestUpdateMember Before this PR, it may error like this: ``` --- FAIL: TestUpdateMember-2 (0.00s) server_test.go:950: action = [{ApplyConfChange:ConfChangeUpdateNode []} {ProposeConfChange:ConfChangeUpdateNode []}], want [{ProposeConfChange:ConfChangeUpdateNode []} {ApplyConfChange:ConfChangeUpdateNode []}] ``` This fixes the test by recording the proposal event in time. | 11 June 2015, 16:45:34 UTC |
cd629c9 | Yicheng Qin | 10 June 2015, 23:53:39 UTC | Merge pull request #2939 from yichengq/fix-update-attr etcdserver: allow to update attributes of removed member | 10 June 2015, 23:53:39 UTC |
8725e69 | Yicheng Qin | 09 June 2015, 05:23:41 UTC | etcdserver: allow to update attributes of removed member There exist the possiblity to update attributes of removed member in reasonable workflow: 1. start member A 2. leader receives the proposal to remove member A 2. member A sends the proposal of update its attribute to the leader 3. leader commits the two proposals So etcdserver should allow to update attributes of removed member. | 10 June 2015, 23:52:18 UTC |
743ac73 | Xiang Li | 10 June 2015, 23:44:58 UTC | Merge pull request #2954 from xiang90/fix_test proxy: fix test | 10 June 2015, 23:44:58 UTC |
ed1c5a7 | Yicheng Qin | 10 June 2015, 23:42:06 UTC | Merge pull request #2951 from yichengq/fix-proxy-acurls etcdmain: fix that advertise-client-urls is required in proxy mode | 10 June 2015, 23:42:06 UTC |
612ecbc | Xiang Li | 10 June 2015, 23:31:42 UTC | proxy: fix test | 10 June 2015, 23:31:42 UTC |
cf7c83b | Yicheng Qin | 10 June 2015, 22:06:49 UTC | etcdmain: fix that advertise-client-urls is required in proxy mode etcd proxy doesn't need to set advertise-client-urls because the flag is not used. | 10 June 2015, 23:22:32 UTC |
5a9c285 | Yicheng Qin | 10 June 2015, 23:19:06 UTC | etcdmain: var log -> plog So the variable name doesn't mess up with standard package name. | 10 June 2015, 23:19:06 UTC |
0a3a272 | Yicheng Qin | 10 June 2015, 23:17:07 UTC | Merge pull request #2923 from yichengq/rafthttp-status rafthttp: pretty print connection error | 10 June 2015, 23:17:07 UTC |
f64a821 | Xiang Li | 10 June 2015, 23:01:24 UTC | Merge pull request #2952 from xiang90/fileutil fileutil: use leveled logging | 10 June 2015, 23:01:24 UTC |
dc87454 | Xiang Li | 10 June 2015, 22:59:24 UTC | fileutil: return on error and send it to error chan | 10 June 2015, 22:59:24 UTC |
e2c2f09 | Xiang Li | 10 June 2015, 22:46:24 UTC | fileutil: use leveled logging | 10 June 2015, 22:57:59 UTC |
d92c895 | Yicheng Qin | 10 June 2015, 22:30:43 UTC | rafthttp: fix capnslog package name | 10 June 2015, 22:43:54 UTC |
1dbe72b | Yicheng Qin | 05 June 2015, 23:34:36 UTC | rafthttp: pretty print connection error 1. print out the status change of connection with peer 2. only print the first error for repeated ones | 10 June 2015, 22:43:49 UTC |
30db41e | Yicheng Qin | 10 June 2015, 22:00:28 UTC | Procfile: use -listen-client-urls instead of -bind-addr -bind-addr is etcd 0.4 flag, and we should deprecate it. Moreover, this makes Procfile fit the workflow we mention in the doc, which helps ourselves find the problem first. | 10 June 2015, 22:13:33 UTC |
37f9534 | Xiang Li | 10 June 2015, 22:09:45 UTC | Merge pull request #2950 from xiang90/test_cpu test: run with cpu = 1,2,4 | 10 June 2015, 22:09:45 UTC |
4e79abc | Yicheng Qin | 10 June 2015, 21:44:32 UTC | Merge pull request #2944 from yichengq/fix-2procs pkg/testutil: ForceGosched -> WaitSchedule | 10 June 2015, 21:44:32 UTC |
018fb8e | Yicheng Qin | 10 June 2015, 02:26:23 UTC | pkg/testutil: ForceGosched -> WaitSchedule ForceGosched() performs bad when GOMAXPROCS>1. When GOMAXPROCS=1, it could promise that other goroutines run long enough because it always yield the processor to other goroutines. But it cannot yield processor to goroutine running on other processors. So when GOMAXPROCS>1, the yield may finish when goroutine on the other processor just runs for little time. Here is a test to confirm the case: ``` package main import ( "fmt" "runtime" "testing" ) func ForceGosched() { // possibility enough to sched up to 10 go routines. for i := 0; i < 10000; i++ { runtime.Gosched() } } var d int func loop(c chan struct{}) { for { select { case <-c: for i := 0; i < 1000; i++ { fmt.Sprintf("come to time %d", i) } d++ } } } func TestLoop(t *testing.T) { c := make(chan struct{}, 1) go loop(c) c <- struct{}{} ForceGosched() if d != 1 { t.Fatal("d is not incremented") } } ``` `go test -v -race` runs well, but `GOMAXPROCS=2 go test -v -race` fails. Change the functionality to waiting for schedule to happen. | 10 June 2015, 21:37:41 UTC |
2d21904 | Xiang Li | 10 June 2015, 21:26:17 UTC | test: run with cpu = 1,2,4 | 10 June 2015, 21:26:17 UTC |
a4d1a5a | Barak Michener | 03 April 2015, 21:32:30 UTC | *: Add security/auth support to etcdctl and etcd/client add godep for speakeasy and auth entry parsing add security_user to client add role to client add role commands add auth support to etcdclient and etcdctl(member/user) add enable/disable to etcdctl better error messages, read/write/readwrite Bump go-etcd to include codec changes, add new dependency verify the error for revoke/add if nothing changed, remove security-merging prefix | 10 June 2015, 20:58:10 UTC |
97709b2 | Xiang Li | 10 June 2015, 18:38:57 UTC | Merge pull request #2930 from xiang90/storage_restore storage: initial snapshot and restore | 10 June 2015, 18:38:57 UTC |
ba9a46a | Xiang Li | 08 June 2015, 16:26:56 UTC | storage: initial snapshot and restore Snapshot takes an io.Writer and writes the entire backend data to the given writer. Snapshot writes a consistent view and does not block other storage operations. Restore restores the in-memory states (index and book keeping) of the storage from the backend data. | 10 June 2015, 18:32:10 UTC |
1403783 | Yicheng Qin | 09 June 2015, 23:16:33 UTC | Merge pull request #2911 from yichengq/rafthttp-plog rafthttp: use leveled logger | 09 June 2015, 23:16:33 UTC |
f1e995b | Yicheng Qin | 02 June 2015, 22:33:58 UTC | rafthttp: use leveled logger | 09 June 2015, 23:15:02 UTC |
19ef3a0 | Xiang Li | 09 June 2015, 22:53:52 UTC | Merge pull request #2934 from xiang90/etcdserver_log etcdserver: use leveled logging | 09 June 2015, 22:53:52 UTC |
e0f9796 | Xiang Li | 08 June 2015, 20:28:34 UTC | etcdserver: use leveled logging Leveled logging for etcdserver pkg. | 09 June 2015, 20:53:07 UTC |
9fbd259 | Yicheng Qin | 09 June 2015, 18:24:53 UTC | Merge pull request #2940 from yichengq/improve-raft-loop etcdserver: stop raft loop when receiving stop signal | 09 June 2015, 18:24:53 UTC |
0814966 | Yicheng Qin | 09 June 2015, 05:48:10 UTC | etcdserver: stop raft loop when receiving stop signal When it waits for apply to be done, it should stop the loop if it receives stop signal. This helps to print out panic information. Before this PR, if the panic happens when server loop is applying entries, server loop will wait for raft loop to stop forever. | 09 June 2015, 18:11:53 UTC |
ebb7677 | Xiang Li | 09 June 2015, 17:52:13 UTC | Merge pull request #2941 from bakins/http-log Simple debug HTTP request logging | 09 June 2015, 17:52:13 UTC |
d8a836e | Brian Akins | 09 June 2015, 17:40:37 UTC | Simple debug HTTP request logging | 09 June 2015, 17:40:37 UTC |
1ff8655 | Xiang Li | 09 June 2015, 16:35:17 UTC | Merge pull request #2937 from xiang90/http_log etcdhttp: use leveled logging | 09 June 2015, 16:35:17 UTC |
0adeee2 | Xiang Li | 08 June 2015, 21:11:21 UTC | etcdhttp: use leveled logging | 09 June 2015, 16:26:57 UTC |
3390f38 | Xiang Li | 08 June 2015, 20:49:28 UTC | Merge pull request #2925 from yichengq/doc-gomaxprocs docs: document cpu cores deployment | 08 June 2015, 20:49:28 UTC |
471cf82 | Yicheng Qin | 06 June 2015, 00:25:40 UTC | docs: document maximal OS threads | 08 June 2015, 19:00:33 UTC |
e0d5116 | Xiang Li | 08 June 2015, 17:57:12 UTC | Merge pull request #2926 from xiang90/raft_log raft: make the repeated log message under bad path debug level | 08 June 2015, 17:57:12 UTC |
1279e49 | Xiang Li | 06 June 2015, 00:29:24 UTC | raft: make the repeated log message under bad path debug level | 06 June 2015, 00:29:24 UTC |
05b55d9 | Xiang Li | 05 June 2015, 22:46:16 UTC | Merge pull request #2921 from xiang90/fix_watch_cancel client: fix cancel watch | 05 June 2015, 22:46:16 UTC |
15ac4f0 | Xiang Li | 05 June 2015, 21:11:54 UTC | client: fix cancel watch ioutil.ReadAll is a blocking call, we need to wait cancelation during the call. | 05 June 2015, 22:40:43 UTC |
976ac65 | Xiang Li | 05 June 2015, 19:38:11 UTC | Merge pull request #2894 from xiang90/refactor_keyIndex Storage initial compaction | 05 June 2015, 19:38:11 UTC |
511f323 | Xiang Li | 05 June 2015, 17:17:15 UTC | Merge pull request #2916 from luan/build-script-git-fallback Unexpected dependency in build script | 05 June 2015, 17:17:15 UTC |
17d5381 | Connor and Luan Santos | 05 June 2015, 00:07:28 UTC | build: default git sha to GitNotFound in case git fails | 05 June 2015, 17:09:50 UTC |
f47ed4a | Xiang Li | 31 May 2015, 15:59:31 UTC | storage: initial compact | 05 June 2015, 16:22:44 UTC |
60ca9eb | Jonathan Boulle | 04 June 2015, 23:54:15 UTC | Merge pull request #2915 from jonboulle/master docs: readme/branch-management cleanup | 04 June 2015, 23:54:15 UTC |
048a948 | Jonathan Boulle | 04 June 2015, 23:41:32 UTC | docs: readme/branch-management cleanup | 04 June 2015, 23:41:32 UTC |
75ddf05 | Xiang Li | 03 June 2015, 17:53:13 UTC | Merge pull request #2910 from xiang90/etcdctl etcdctl: cleanup | 03 June 2015, 17:53:13 UTC |
f9c67da | Xiang Li | 03 June 2015, 17:15:00 UTC | Merge pull request #2912 from xiang90/client-curl client: support printing cURL command | 03 June 2015, 17:15:00 UTC |
4f2df84 | Xiang Li | 03 June 2015, 06:00:30 UTC | client: support printing cURL command | 03 June 2015, 17:02:37 UTC |
9e8d589 | Yicheng Qin | 03 June 2015, 15:47:17 UTC | Merge pull request #2906 from yichengq/fix-pipeline-stop rafthttp: fix pipeline.stop may block | 03 June 2015, 15:47:17 UTC |
f0edf06 | Xiang Li | 03 June 2015, 02:44:26 UTC | etcdctl: minor cleanup | 03 June 2015, 02:50:37 UTC |
079e7c1 | Xiang Li | 03 June 2015, 02:29:05 UTC | etcdctl: move format to format.go | 03 June 2015, 02:29:05 UTC |
26682b6 | Xiang Li | 03 June 2015, 02:01:41 UTC | etcdctl: cleanup etcdctl exit code | 03 June 2015, 02:01:41 UTC |
7f8925e | Yicheng Qin | 02 June 2015, 07:38:26 UTC | rafthttp: fix pipeline.stop may block This PR makes pipeline.stop stop quickly. It cancels inflight requests, and stops sending messages in the buffer. | 03 June 2015, 00:15:44 UTC |
627929d | Xiang Li | 02 June 2015, 22:03:28 UTC | Merge pull request #2909 from xiang90/logger *: rename logger to plog | 02 June 2015, 22:03:28 UTC |
711451c | Xiang Li | 02 June 2015, 21:58:24 UTC | *: rename logger to plog | 02 June 2015, 21:58:24 UTC |
28878e3 | Xiang Li | 02 June 2015, 21:44:40 UTC | Merge pull request #2903 from xiang90/chord_rafthttp rafhttp: clean up logging messages | 02 June 2015, 21:44:40 UTC |
b74082c | Yicheng Qin | 02 June 2015, 21:37:38 UTC | Merge pull request #2889 from yichengq/version-runtime-enforce rafthttp: version enforcement on rafthttp messages | 02 June 2015, 21:37:38 UTC |
c371d8c | Yicheng Qin | 02 June 2015, 18:46:36 UTC | rafthttp: version enforcement on rafthttp messages This PR sets etcd version and min cluster version in request header, and let server check version compatibility. rafthttp server will reject any message from peer with incompatible version(too low version or too high version), and print out warning logs. | 02 June 2015, 20:33:18 UTC |
2bf64b4 | Xiang Li | 02 June 2015, 20:04:02 UTC | Merge pull request #2898 from xiang90/raft_log raft use leveled logger | 02 June 2015, 20:04:02 UTC |
1561b85 | Xiang Li | 01 June 2015, 22:06:38 UTC | raft: drop the raft prefix in logging | 02 June 2015, 19:50:42 UTC |
3af4a45 | Xiang Li | 01 June 2015, 22:01:31 UTC | etcdserver: make raft use leveled logger | 02 June 2015, 19:50:42 UTC |
89f6f98 | Xiang Li | 01 June 2015, 21:51:21 UTC | Godeps: update logger pkg | 02 June 2015, 19:50:42 UTC |