Anthony Romano
4c43fb83df
Merge pull request #8159 from heyitsanthony/crl-test-fix
...
e2e: accept more kinds of errors in CRL test
2017-06-22 15:59:26 -07:00
Anthony Romano
f7df3c80d5
Merge pull request #8149 from heyitsanthony/lease-sort-promote
...
lessor: extend leases on promote if expires will be rate limited
2017-06-22 13:31:34 -07:00
Anthony Romano
e22d00a9f1
e2e: accept more kinds of errors in CRL test
...
Semaphore is failing with context exceeded errors and dial timeouts, only
returning an "Error: ..." from expect on etcdctl. So, only test for
"Error:" instead of grpc internal errors.
2017-06-22 13:27:36 -07:00
Gyu-Ho Lee
cdc7d77beb
Merge pull request #8158 from gyuho/fix
...
etcdctl/ctlv3: remove unnecessary 'return'
2017-06-22 12:47:49 -07:00
Gyu-Ho Lee
f2d8929a09
etcdctl/ctlv3: remove unnecessary 'return'
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-06-22 12:24:00 -07:00
Anthony Romano
ac061671d5
Revert "integration: remove lease exist checking on randomized expiry"
...
This reverts commit 95bc33f37f7c31a4cd06287d44879a60baaee40c. The new
lease extension algorithm should pass this test.
2017-06-22 11:25:45 -07:00
Anthony Romano
c38c00f7c3
lessor: extend leases on promote if expires will be rate limited
...
Instead of unconditionally randomizing, extend leases on promotion
if too many leases expire within the same time span. If the server
has few leases or spread out expires, there will be no extension.
2017-06-22 11:25:34 -07:00
Anthony Romano
310a09691f
Merge pull request #8150 from heyitsanthony/update-db-size-defrag
...
mvcc: use GaugeFunc metric to load db size when requested
2017-06-22 09:38:00 -07:00
Anthony Romano
522e75cb4f
mvcc: use GaugeFunc metric to load db size when requested
...
Relying on mvcc to set the db size metric can cause it to
miss size changes when a txn commits after the last write
completes before a quiescent period. Instead, load the
db size on demand.
Fixes #8146
2017-06-21 23:58:37 -07:00
Anthony Romano
4e6c77185b
integration: test mvcc db size metric is updated following defrag
2017-06-21 22:59:48 -07:00
Anthony Romano
9cb12deca6
Merge pull request #8102 from heyitsanthony/txn-nested
...
api: nested txns
2017-06-21 19:56:43 -07:00
Anthony Romano
23c816718a
Merge pull request #8143 from heyitsanthony/endpoint-all
...
etcdctl: use cluster endpoints when passed --cluster
2017-06-21 16:11:13 -07:00
Anthony Romano
b10ea20113
namespace: support nested txns
2017-06-21 14:33:16 -07:00
Anthony Romano
f465e3ea8a
grpcproxy: support nested txns
2017-06-21 14:33:15 -07:00
Anthony Romano
f400010028
clientv3/integration: test clientv3 nested txns
2017-06-21 14:33:15 -07:00
Anthony Romano
f8dbcd86ec
clientv3: support nested Txns with OpTxn
2017-06-21 14:33:15 -07:00
Anthony Romano
0dd4c2ac69
integration: test grpc nested txns
2017-06-21 14:33:15 -07:00
Anthony Romano
6ed51dc621
etcdserver, v3rpc: support nested txns
2017-06-21 14:33:15 -07:00
Anthony Romano
5c7efaa288
adt: Union for interval trees
2017-06-21 14:33:15 -07:00
Anthony Romano
822473bc31
etcdserverpb: add txns to requestop/responseop
2017-06-21 14:33:15 -07:00
Gyu-Ho Lee
8b09309c81
Merge pull request #8147 from gyuho/monitoring
...
Documentation: use 'etcd_disk_' metrics in monitoring
2017-06-21 14:07:18 -07:00
Anthony Romano
1a2be432c5
etcdctl: --cluster flag using cluster endpoints for endpoint commands
...
Queries the cluster for endpoints to use for the endpoint commands.
Fixes #8117
2017-06-21 13:55:23 -07:00
Gyu-Ho Lee
7ebcfcf871
Documentation: use 'etcd_disk_' metrics in monitoring
...
Rather than 'etcd_debugging_' ones that might change
in the future.
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-06-21 12:35:08 -07:00
Gyu-Ho Lee
a40cdc7baa
Merge pull request #8142 from gyuho/a
...
Documentation/release: sign *.aci files
2017-06-20 16:57:53 -07:00
Gyu-Ho Lee
20881bde05
Merge pull request #8128 from gyuho/functional-tester
...
*: run basic functional-tester cases to test script
2017-06-20 16:20:11 -07:00
Gyu-Ho Lee
6e31901108
test: run basic functional tests
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-06-20 16:04:51 -07:00
Gyu-Ho Lee
7689a2535e
etcd-tester: add 'exit-on-failure'
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-06-20 16:04:48 -07:00
Gyu-Ho Lee
ca6d7bd836
Documentation/release: sign *.aci files
...
Thanks to
https://github.com/coreos/etcd/issues/8085#issuecomment-308232300 .
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-06-20 14:18:19 -07:00
Gyu-Ho Lee
1df8b90d67
Merge pull request #8121 from gyuho/health-check-service
...
*: add basic health check service
2017-06-20 13:07:52 -07:00
Gyu-Ho Lee
8ce2c79197
integration: add 'HealthClient.Check' test
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-06-20 13:02:11 -07:00
Anthony Romano
117a83c1bf
Merge pull request #8140 from heyitsanthony/doc-curl-auth
...
dev-guide: add authentication example for grpc/json
2017-06-20 10:59:39 -07:00
Anthony Romano
30029c0019
Merge pull request #8124 from heyitsanthony/crl
...
reject connections based on CRL file
2017-06-20 10:52:41 -07:00
Gyu-Ho Lee
c1e3172e3a
etcdserver/api/v3rpc: add default grpc health service
2017-06-20 10:48:06 -07:00
Gyu-Ho Lee
71e6fe183f
vendor: add 'grpc/health/*'
2017-06-20 10:48:06 -07:00
Gyu-Ho Lee
ac62c6c811
Merge pull request #8133 from gyuho/release-test
...
test: 'FAIL' on release binary download failure
2017-06-20 10:46:11 -07:00
Anthony Romano
8837719a8d
dev-guide: add authentication example for grpc/json
2017-06-20 10:12:17 -07:00
Anthony Romano
41e26f741b
e2e: test rejecting CRL'd client certs
2017-06-19 15:23:41 -07:00
Anthony Romano
798b14979c
fixtures: add gencerts.sh, generate CRL
2017-06-19 15:23:41 -07:00
Anthony Romano
87d16af2e2
embed: use transport TLS listener for client listener for CRLs
2017-06-19 15:23:41 -07:00
Anthony Romano
7d7d1ae6a0
etcdmain: configure CRL file through command line
2017-06-19 15:23:41 -07:00
Anthony Romano
322976bedc
transport: CRL checking
2017-06-19 15:23:41 -07:00
Xiang Li
a65e3c69a6
Merge pull request #8122 from yudai/fast_fail_proxy
...
grpcproxy: Disable fast fail on lease grant call to cluster
2017-06-19 15:04:25 -07:00
Anthony Romano
66f553a96b
Merge pull request #8127 from heyitsanthony/fix-restore
...
mvcc: restore into tree index with one key index
2017-06-19 12:58:18 -07:00
Gyu-Ho Lee
8f8f550443
test: 'FAIL' on release binary download failure
...
I see CI is failing to download release binaries
but exit code doesn't trigger CI job failure.
We need 'FAIL' string.
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-06-19 12:52:02 -07:00
Anthony Romano
51a568aa81
mvcc: restore into tree index with one key index
...
Clobbering the mvcc kvindex with new keyIndexes for each restore
chunk would cause index corruption by dropping historical information.
2017-06-19 12:04:01 -07:00
Anthony Romano
02164874d9
mvcc: test restore and deletes with small chunk sizes
2017-06-19 12:04:01 -07:00
Anthony Romano
45fbac5544
Merge pull request #8025 from heyitsanthony/txn-cmp-range
...
api: txn comparisons on ranges
2017-06-18 11:11:43 -07:00
Iwasaki Yudai
df2cc4bc8c
grpcproxy: Disable fast fail on lease grant call to cluster
...
Problem Observed
----------------
When there is no etcd process behind the proxy,
clients repeat resending lease grant requests without delay.
This behavior can cause abnormal resource consumption on CPU/RAM and
network.
Problem Detail
--------------
`LeaseGrant()` uses a bare protobuf client to forward requests.
However, it doesn't use `grpc.FailFast(false)`, which means the method returns
an `Unavailable` error immediately when no etcd process is available.
In clientv3, `Unavailable` errors are not considered the "Halt" error,
and library retries the request without delay.
Both clients and the proxy consume much CPU cycles to process retry requests.
Resolution
----------
Add `grpc.FailFast(false))` to `LeaseGrant()` of the `leaseProxy`.
This makes the proxy not to return immediately when no etcd process is
available. Clients will simply timeout requests instead.
2017-06-16 15:09:05 -07:00
Anthony Romano
e475a4ea71
Merge pull request #8120 from heyitsanthony/restore-set-size-metric
...
mvcc: set db size metric on restore
v3.2.0+git
v3.2.0_plus_git
2017-06-16 12:37:08 -07:00
Anthony Romano
8f34d0c8b6
clientv3/integration: test compare on range
2017-06-16 12:13:27 -07:00