e441c57972
clientv3: fix godoc badge link
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com >
2017-08-25 17:44:36 -07:00
b206afc4a7
concurrency: fix STM example to add to balance
...
Worked by coincidence; the txn would always retry and there
was a 1/10 chance it would pass by selecting the same to/from keys.
2017-08-22 19:39:22 -07:00
1d195521c7
concurrency: retry snapshot serializable stm if writes since first header rev
...
Was checking the rset key mod rev, which does not work.
2017-08-22 19:39:22 -07:00
5c03ade973
leasing: don't acquire lease on ttl'd keys
...
TTL'd keys may expire on cluster without lease holder's consent.
2017-08-21 12:12:53 -07:00
cf0a07be52
integration: test leasing client does not acuire lease on TTL'd keys
2017-08-21 12:11:19 -07:00
126e91c449
leasing, integration, etcdmain: closer function for leasing kv
...
Semaphore was seeing goroutine leaks
2017-08-18 14:05:57 -07:00
556c1a1fe0
integration,clientv3/integration: test LeaseLeases API
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com >
2017-08-14 14:18:57 -07:00
15ef98a4ee
clientv3: implement LeaseLeases API
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com >
2017-08-14 14:18:56 -07:00
cf0eb3b7ce
integration: increase timeout for TestLeasingReconnectOwnerRevoke
...
Adding retry to acquire on failure causes Get to now retry until a
connection can be reestablished to the etcd server, causing the
timeout to trigger and fail the test.
2017-08-07 15:51:27 -07:00
61ebb98e55
leasing: retry on errors from acquire txn
...
Gets should retry on transient failure, but the txn inserts a write, skipping
the retry logic in the client. Instead, check the error if the txn should be
retried.
Fixes #8372
2017-08-07 11:39:12 -07:00
9982cd0528
clientv3/integration: add 'TestMaintenanceHashKV'
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com >
2017-08-05 18:17:06 -07:00
8c32cd96fb
clientv3: add 'HashKV' to 'Maintenance' interface
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com >
2017-08-05 18:17:06 -07:00
d3716b86ae
clientv3: s/ToOpResponse/OpResponse
...
Closer to idiomatic go.
2017-08-04 11:35:36 -07:00
8fe94356f4
clientv3: more Op accessors
2017-08-04 11:35:36 -07:00
468078ffcd
integration: leasing tests
2017-08-04 11:35:36 -07:00
a425e98a7e
leasing: KV leasing
2017-08-04 11:35:36 -07:00
b7b31e5770
concurrency: add examples
2017-08-02 21:09:05 -07:00
d543870966
Merge pull request #8347 from heyitsanthony/use-from-grpc-md
...
clientv3: use FromOutgoingContext to bucket watches
2017-08-01 17:05:56 -07:00
45e6b658dd
Merge pull request #8349 from gyuho/fix-lease-test
...
clientv3/integration: match context canceled on client close
2017-08-01 14:53:31 -07:00
b89ef7e295
clientv3/integration: match context canceled on client close
...
Fix https://github.com/coreos/etcd/issues/8329 .
Different behavior from https://github.com/grpc/grpc-go/pull/1369 ,
in grpc-go transportMonitor.
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com >
2017-08-01 13:25:13 -07:00
7de417d745
clientv3/integration: use grpc metadata to create unique watch ctxs
2017-08-01 13:14:31 -07:00
fdba9e5fb1
clientv3/integration: test Put succeeds following SetEndpoint
...
Still gets transport closing errors, but no unavailable endpoint errors.
2017-08-01 12:59:37 -07:00
10db0319d1
ordering: use default clients to populate etcd data
...
Switching endpoints on the same client was triggering balancer
reconnect errors that should be tested in clientv3/integration.
2017-08-01 12:56:04 -07:00
4669aaa9a2
clientv3: only retry mutable KV RPCs if no endpoints found
...
Was retrying when it shouldn't, causing multiple puts
2017-08-01 12:55:51 -07:00
8385c6682a
clientv3/integration: test client puts at most once on bad connection
2017-08-01 10:31:13 -07:00
1c75c383a1
clientv3: use FromOutgoingContext to bucket watches
...
Watches were bucketed on string(ctx) for historical reasons;
metadata.FromOutgoingContext should be enough to key watches now.
Fixes #8338
2017-08-01 09:26:07 -07:00
52b031cfa2
clientv3: accept Compare_LEASE in Compare()
2017-07-31 13:00:04 -07:00
fca56f132a
ordering: use x/net/context and add doc.go
...
Compilation troubles when using the "context" package.
2017-07-26 20:58:41 -07:00
318caeee7e
clientv3: return CompactRevision wresp when set with Canceled
2017-07-25 12:36:01 -07:00
ebcfdd1a3d
integration: check Canceled is true in compacted watch response
2017-07-25 12:36:01 -07:00
887df72d13
clientv3/ordering: kv order caching
2017-07-19 21:40:50 -04:00
755270fa6a
integration: sync lapi server after puts in TestLeaseTimeToLive
...
Linearized read to ensure the keys have committed.
2017-07-13 14:55:43 -07:00
acfde8aba0
Merge pull request #8199 from sakshamsharma/clientv3-keep-alive
...
clientv3: add keep-alive to connection
2017-07-08 16:32:35 -07:00
a57405a958
Merge pull request #8153 from gyuho/leadership-transfer
...
*: expose Leadership Transfer API to clients
2017-07-06 13:00:08 -07:00
2a30a754e9
clientv3: add keep-alive to connection
...
this makes the grpc client connection use a keep-alive.
2017-07-06 12:55:52 -07:00
d48e59e389
Merge pull request #8201 from arthurkiller/master
...
concurrency: fix typo in Serializable godoc
2017-07-06 11:03:55 -07:00
4df1970188
concurrency: fix typo in Serializable godoc
2017-07-06 12:57:55 +08:00
581a83dfd9
clientv3/*: add 'MoveLeader' method to 'Maintenance'
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com >
2017-06-23 13:07:17 -07:00
7fffd8b827
concurrency: comment the default stm isolation level is serializable snapshot
...
Default stm isolation level is serializable snapshot isolation, which
is different than snapshot isolation (SI)
Signed-off-by: Hui Kang <kangh@us.ibm.com >
2017-06-22 22:24:17 -04:00
9e574afb84
clientv3/integration: wait for leader before trying to count watches
...
Fixes #8044
2017-06-22 15:02:41 -07:00
b10ea20113
namespace: support nested txns
2017-06-21 14:33:16 -07:00
f400010028
clientv3/integration: test clientv3 nested txns
2017-06-21 14:33:15 -07:00
f8dbcd86ec
clientv3: support nested Txns with OpTxn
2017-06-21 14:33:15 -07:00
8f34d0c8b6
clientv3/integration: test compare on range
2017-06-16 12:13:27 -07:00
7ff6e62c56
namespace: prefix comparison range_end
2017-06-16 12:13:27 -07:00
fcf1abd23b
clientv3: compare helper functions to set range/prefix
2017-06-16 12:13:27 -07:00
5e059fd8dc
*: use metadata Incoming/OutgoingContext
...
Fix https://github.com/coreos/etcd/issues/7888 .
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com >
2017-06-15 16:41:23 -07:00
f5b96991a1
concurrency: fetch current lock holder when creating waitlist key
...
The uncontended path for a mutex would fetch the minimum
revision key on the prefix after creating its entry in
the wait list. This fetch can be rolled into the txn for
creating the wait key, eliminating a round-trip for immediately
acquiring the lock.
2017-06-15 11:29:34 -07:00
13d9438cf9
clientv3: clarify Watch close conditions
...
The "too slow" comment is rather vague. If the server closes
the watch for being too slow (it doesn't seem to any more), the
watch client should gracefully resume instead of forcing the
user to handle it.
Also removed the 'opts' comment since it wasn't being maintained.
2017-06-15 09:34:00 -07:00
762b2c625c
clientv3: change watchGrpcStream Close() to close()
...
private struct shouldn't have public method.
2017-06-08 12:11:06 -07:00