Commit Graph

12304 Commits (b989e1992fb1186c7a6a5ea9291fae888a3d7971)

Author SHA1 Message Date
Hitoshi Mitake b989e1992f Merge pull request #8695 from jpbetz/fix-disabled-simple-token-assign
auth: Fix simpleToken to respect disabled state for assign
2017-10-14 15:49:36 +09:00
Joe Betz d3c9643761 auth: Fix simpleToken to respect disabled state for assign 2017-10-13 21:44:07 -07:00
Gyu-Ho Lee d392debf82 Merge pull request #8693 from gyuho/makefile
Makefile: fix 'test', add 'test-all' commands with docker
2017-10-13 12:42:07 -07:00
Gyu-Ho Lee f0a78eb516 Makefile: fix 'test', add 'test-all' commands with docker
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-13 12:14:26 -07:00
Gyu-Ho Lee 764a0f79b2 Merge pull request #8683 from gyuho/ctl
etcdctl/ctlv3: inherit/update flags only once in 'check' command
2017-10-11 10:51:40 -07:00
Gyu-Ho Lee e80b2474fa etcdctl/ctlv3: inherit/update flags only once in 'check' command
When creating multiple clients, 'mustClientFromCmd' overwrites
inherited flags with environment variables, so later clients
were printing warnings on duplicate key updates.

Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-11 10:37:15 -07:00
Gyu-Ho Lee 0ef0abf9bf Merge pull request #8676 from gyuho/aaa
clientv3: fix typo in 'testNetworkPartitionBalancer'
2017-10-10 19:17:32 -07:00
Gyu-Ho Lee 7f2b6a19d6 clientv3: fix typo in 'testNetworkPartitionBalancer'
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-10 16:07:03 -07:00
Gyu-Ho Lee bc03ce9cab Merge pull request #8674 from gyuho/set-endpoints
clientv3: reset unhealthy on updateAddrs
2017-10-10 13:29:01 -07:00
Gyu-Ho Lee 500c2499f4 clientv3: reset unhealthy on updateAddrs
Otherwise, 'mayPin' incorrectly decides if an address
should be pinned or not.

Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-10 12:28:57 -07:00
Gyu-Ho Lee 8329963d69 Merge pull request #8669 from gyuho/balancer
clientv3/balancer: handle network partition in health check
2017-10-09 16:54:31 -07:00
Gyu-Ho Lee e9e17e3fe5 clientv3: pin any endpoint when all unhealthy
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-09 16:02:18 -07:00
Gyu-Ho Lee 826de3c07a words: whitelist more words
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-09 14:54:53 -07:00
Gyu-Ho Lee 8224c748c9 clientv3/integration: add balancer network partition tests
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-09 14:54:47 -07:00
Gyu-Ho Lee fbed568b6a clientv3/balancer: mark partitioned member as unhealthy
Previous behavior is when server returns errors, retry
wrapper does not do anything, while passively expecting
balancer to gray-list the isolated endpoint. This is
problematic when multiple endpoints are passed, and
network partition happens.

This patch adds 'endpointError' method to 'balancer' interface
to actively(possibly even before health-check API gets called)
handle RPC errors and gray-list endpoints for the time being,
thus speeding up the endpoint switch.

This is safe in a single-endpoint case, because balancer will
retry no matter what in such case.

Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-09 13:40:03 -07:00
Gyu-Ho Lee 1704443c6d clientv3: only health-check when timeout elapses since last failure
Otherwise network-partitioned member with active health-check
server would not be gray-listed, making health-balancer stuck
with isolated endpoint.

Also clarifies some log messages.

Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-09 13:40:03 -07:00
Gyu-Ho Lee e47be1f325 Merge pull request #8672 from gyuho/require-leader
etcdctl/ctlv3: enable 'require-leader' for 'watch' command
2017-10-09 13:38:52 -07:00
Gyu-Ho Lee d44f7d5f67 etcdctl/ctlv3: enable 'require-leader' for 'watch' command
To help with network partition cases.

Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-09 13:19:30 -07:00
Xiang Li ed92420950 Merge pull request #8666 from lorneli/ordering
clientv3/ordering: compare and update prevRev atomically
2017-10-09 11:14:40 -07:00
Gyu-Ho Lee 09a38a7953 Merge pull request #8671 from gyuho/ddd
Dockerfile-test: add 'ineffassign' to image
2017-10-09 10:38:45 -07:00
Xiang Li 6571829f16 Merge pull request #8663 from YuleiXiao/add_keepalive_for_ctlv3
etcdctl/v3: add keep alive time/timeout
2017-10-09 09:45:59 -07:00
Gyu-Ho Lee 66f2a65f6b Dockerfile-test: add 'ineffassign' to image
Was missing for 'fmt' tests.

Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-09 09:36:30 -07:00
Gyu-Ho Lee 71197ab2a5 Merge pull request #8670 from gyuho/rrr
README: update 'goreman' guide with 'grpc-proxy'
2017-10-09 09:35:47 -07:00
Gyu-Ho Lee 90c3f91f29 README: update 'goreman' guide with 'grpc-proxy'
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-09 09:28:22 -07:00
lorneli 5096b4ed5d clientv3/ordering: compare and update prevRev atomically
Several goroutines may call setPrevRev concurrently with different
revisions, all higher than prevRev. Previously all of these goroutines
could set prevRev, so prevRev may be replaced by older one.

If response's revision equals to prevRev, there's no need to call
setPrevRev.
2017-10-09 20:06:19 +08:00
yuleixiao 04940efcc2 etcdctl: add keep alive time/timeout in etcdctl
client can switch from fault node to normal when keep alive is timeout

Fixes #7941
2017-10-09 09:51:43 +08:00
Gyu-Ho Lee a68a3dc79e Merge pull request #8661 from jpbetz/docker-dns-srv-fix
Dockerfile: Improve file permissions for docker build images using bind9
2017-10-07 11:17:57 -07:00
Joe Betz abc81d03a7 Dockerfile: Improve file permissions for docker build images using bind9
/etc/init.d/bind9 is run as the 'bind' user. This fixes file permissions
for the configuration files added by the Dockerfile to match.
2017-10-06 23:34:39 -07:00
Xiang Li b766a26059 Merge pull request #8257 from yudai/websocket_streams
embed: support websocket for bi-directional streams
2017-10-06 21:33:55 -07:00
Gyu-Ho Lee e8e3467455 Merge pull request #8659 from gyuho/pinned
clientv3: add pinned() method to 'balancer'
2017-10-06 16:03:14 -07:00
Gyu-Ho Lee bed5f388a8 clientv3: add pinned() method to 'balancer'
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-06 15:28:21 -07:00
Iwasaki Yudai 0cdf5b2d58 vendor: add github.com/tmc/grpc-websocket-proxy
Updating golang.org/x/net as well so that a new dependency
github.com/sirupsen/logrus can be compiled on Windows environments.
2017-10-06 15:14:01 -07:00
Gyu-Ho Lee 077b361bfc Merge pull request #8658 from gyuho/etcdhttp-godoc
etcdserver/api/etcdhttp: document package in doc.go
2017-10-06 10:51:08 -07:00
Gyu-Ho Lee 1109c6c321 etcdserver/api/etcdhttp: document package in doc.go
It was missing from godoc.

Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-06 10:47:47 -07:00
Gyu-Ho Lee dcaa0cddfc Merge pull request #8657 from gyuho/debug-line
clientv3: add debugging lines to 'retry' paths
2017-10-06 10:38:44 -07:00
Gyu-Ho Lee 1c6fbcd3d0 clientv3: add debugging lines to 'retry' paths
Helpful for debugging client balancer.

Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-06 10:13:25 -07:00
Gyu-Ho Lee d2b3e578e7 Merge pull request #8653 from gyuho/changelog
CHANGELOG: add v3.2.9, minor updates
2017-10-06 09:00:49 -07:00
Gyu-Ho Lee 39912e7018 Merge pull request #8655 from gyuho/makefile
Makefile: suffix test log files
2017-10-06 08:52:11 -07:00
Gyu-Ho Lee d9e8d4665c Makefile: suffix test log files
In preparation of running all tests inside container.
Currently, we run Jenkins in shared environment.
This is not good. Need manual Go runtime updates,
cannot run two different branches, port conflicts,
out of disk errors, etc.

Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-06 08:36:32 -07:00
Iwasaki Yudai 37eabd770e embed: support websocket for bi-directional streams 2017-10-05 16:08:18 -07:00
Gyu-Ho Lee c58ba620dd Merge pull request #8654 from gyuho/update
e2e/docker-dns-srv: test with TLS
2017-10-05 16:02:23 -07:00
Xiang Li db0ea5d44b Merge pull request #8651 from xiang90/https_srv
embed: fix HTTPs + DNS SRV discovery
2017-10-05 15:49:42 -07:00
Gyu-Ho Lee cab94ac128 CHANGELOG: add v3.2.9, minor updates
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-05 15:42:28 -07:00
Xiang f79d5aaca4 embed: fix HTTPs + DNS SRV discovery 2017-10-05 15:21:45 -07:00
Gyu-Ho Lee 5d3a5912eb e2e/docker-dns-srv: enable peer, client TLS
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-05 15:15:02 -07:00
Gyu-Ho Lee d57159f79a e2e/docker-dns-srv: use 'etcd.local' as SRV, clean up
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-05 22:05:33 +00:00
Gyu-Ho Lee e7e24dab64 e2e/docker-dns: enable client-cert-auth in /run.sh
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-05 22:05:33 +00:00
Gyu-Ho Lee 09f02e5507 fixtures: add 'localhost' to wildcard cert for local cluster
Otherwise, local cluster tests fail.
2017-10-05 22:05:20 +00:00
Gyu-Ho Lee 867e3da0c4 Merge pull request #8652 from gyuho/proxy-tests-Makefile
Makefile: add 'test-proxy', 'test-coverage'
2017-10-05 11:38:02 -07:00
Gyu-Ho Lee b0dc639807 Makefile: add 'test-proxy', 'test-coverage'
To dockerize all test runs in Jenkins.

Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-10-05 10:52:22 -07:00