Gyu-Ho Lee
d25ae50c02
etcdserver: implement LeaseLeases API
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-08-14 14:18:56 -07:00
Gyu-Ho Lee
8005f00bcf
*: regenerate proto
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-08-14 14:18:56 -07:00
Gyu-Ho Lee
a7413bbf28
etcdserverpb: define LeaseLeases API
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-08-14 14:18:56 -07:00
Gyu-Ho Lee
e0843c691b
Merge pull request #8322 from gyuho/health-grpc-proxy
...
*: add /health endpoint to grpc-proxy
2017-07-31 15:45:42 -07:00
Gyu-Ho Lee
cd37ef2c1b
*: expose etcdhttp.Health, define proxy health handler
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-07-31 14:07:54 -07:00
Anthony Romano
ec4ca4408f
etcdserver: support lease txn comparison
2017-07-31 13:00:04 -07:00
Anthony Romano
71e56a44b7
*: regenerate protobuf assets
2017-07-31 13:00:04 -07:00
Anthony Romano
d8ca2bbffb
etcdserverpb: add lease to txn comparison targets
...
Also shifts down fields following target_union in case there's any more
reason to expand. OK since range_end is still pre-release.
2017-07-31 13:00:04 -07:00
Gyu-Ho Lee
4267d368df
api/etcdhttp: serve error information in '/health', marshal health in JSON
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-07-27 15:36:59 -07:00
Xiang Li
2a348fb8e9
Merge pull request #8263 from fanminshi/hash_by_rev
...
api: hash by rev
2017-07-26 11:22:33 -07:00
Gyu-Ho Lee
74c8050adc
*: use etcdhttp.Handle* for health, prometheus handlers
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-07-26 06:23:55 -07:00
Gyu-Ho Lee
78432e3bd2
etcdhttp: add metrics.go for metrics, health handler
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-07-26 06:23:55 -07:00
Anthony Romano
16943f04e2
Merge pull request #8283 from heyitsanthony/cancel-compact-rpc
...
v3rpc: set Canceled=true on compacted watch
2017-07-25 19:15:18 -07:00
Anthony Romano
478ba2c4f2
etcdserver: consolidate error checking for v3_server functions
...
Duplicated error checking code moved into raftRequest/raftRequestOnce.
2017-07-25 14:28:39 -07:00
Anthony Romano
6fb08672d8
v3rpc: set canceled=true when stream is compacted
...
Fixes #8231
2017-07-25 12:36:01 -07:00
Gyu-Ho Lee
61a736a068
etcdserver: check alarms in health handler
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-07-18 15:51:28 -07:00
fanmin shi
fbb75d24a4
v3rpc: add HashKV to server rpc
2017-07-14 16:44:00 -07:00
fanmin shi
ed052ce9a3
proto: add HashKV grpc
...
HashKV rpc hash of all MVCC keys up to a given revision for a given node.
2017-07-14 16:41:23 -07:00
Xiang Li
0a2b580f73
Merge pull request #8238 from yudai/allow_more_streams
...
v3rpc: Let clients establish unlimited streams
2017-07-11 18:21:09 -07:00
Iwasaki Yudai
52101e6e93
v3rpc: Let clients establish unlimited streams
...
From go-grpc v1.2.0, the number of max streams per client is set to 100
by default by the server side. This change makes it impossible
for third party proxies and custom clients to establish many streams.
2017-07-11 13:02:01 -07:00
Anthony Romano
e29db923bc
*: move v2http handlers without /v2 prefix to etcdhttp
...
Lets --enable-v2=false configurations provide /metrics, /health, etc.
Fixes #8167
2017-07-07 18:35:57 -07:00
Gyu-Ho Lee
a57405a958
Merge pull request #8153 from gyuho/leadership-transfer
...
*: expose Leadership Transfer API to clients
2017-07-06 13:00:08 -07:00
Hitoshi Mitake
e0c33ef881
auth, etcdserver: allow users to know their roles and permissions
...
Current UserGet() and RoleGet() RPCs require admin permission. It
means that users cannot know which roles they belong to and what
permissions the roles have. This commit change the semantics and now
users can know their roles and permissions.
2017-06-26 22:20:41 -07:00
Gyu-Ho Lee
403ba1dfa7
etcdserver: expose 'transferLeadership' as 'MoveLeader'
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-06-23 12:51:28 -07:00
Gyu-Ho Lee
b1a0ae3a3e
etcdserver/api/v3rpc: add 'MoveLeader' to 'maintenanceServer'
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-06-23 12:51:24 -07:00
Gyu-Ho Lee
939bbd77c0
etcdserver/*: add 'ErrNotLeader'
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-06-23 12:46:07 -07:00
Gyu-Ho Lee
265303c19a
*: regenerate proto with 'MoveLeader' RPC
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-06-23 12:45:53 -07:00
Gyu-Ho Lee
d82f2572a4
etcdserver/etcdserverpb: define 'MoveLeader' RPC
...
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-06-23 12:43:29 -07:00
Xiang Li
0fe8fdcb29
Merge pull request #8123 from yudai/revision_compactor
...
Compactor: Add Revisional compactor
2017-06-22 16:34:28 -07:00
Iwasaki Yudai
a3f8f47422
*: add Revision compactor
2017-06-21 15:41:07 -07:00
Anthony Romano
6ed51dc621
etcdserver, v3rpc: support nested txns
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
c1e3172e3a
etcdserver/api/v3rpc: add default grpc health service
2017-06-20 10:48:06 -07:00
Anthony Romano
8d7c29c732
etcdserver, etcdserverpb: Txn.Compare range_end support
2017-06-16 12:13:27 -07:00
Anthony Romano
1acc8090e3
Merge pull request #8110 from heyitsanthony/fix-test-sync-timeout
...
etcdserver: use RecorderStream for TestSyncTimeout to avoid missing action
2017-06-15 20:49:10 -07:00
Anthony Romano
e962b0c849
Merge pull request #7909 from heyitsanthony/unptr-cfg
...
etcdserver, embed, integration: don't use pointer for ServerConfig
2017-06-15 20:47:30 -07:00
Gyu-Ho Lee
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
Anthony Romano
aa0e6b26c0
etcdserver: use RecorderStream for TestSyncTimeout to avoid missing action
2017-06-15 13:43:53 -07:00
Anthony Romano
dcf52bbfac
etcdserver, embed, integration: don't use pointer for ServerConfig
...
ServerConfig is owned by etdcserver and unshared, so don't pass or store by
pointer. Also removes duplicated field 'snapCount'.
2017-06-15 13:02:13 -07:00
Anthony Romano
4445996a38
Merge pull request #8084 from heyitsanthony/update-protobuf
...
vendor: update github.com/{gogo,golang}/protobuf
2017-06-12 19:09:49 -07:00
Anthony Romano
4ebeba0e18
*: regen protofiles with latest protobuf tools
2017-06-12 15:14:43 -07:00
Anthony Romano
7ff5b05004
etcdserver: better warning when initial-cluster doesn't match advertise urls
...
The old error was not clear about what URLs needed to be added, sometimes
truncating the list. To make it clearer, print out the missing entries
for --initial-cluster and print the full list of initial advertise peers.
Fixes #8079 and #7927
2017-06-12 14:14:16 -07:00
Anthony Romano
d173b09a1b
etcdserver: use same ReadView for read-only txns
...
A read-only txn isn't serialized by raft, but it uses a fresh
read txn for every mvcc access prior to executing its request ops.
If a write txn modifies the keys matching the read txn's comparisons,
the read txn may return inconsistent results.
To fix, use the same read-only mvcc txn for the duration of the etcd
txn. Probably gets a modest txn speedup as well since there are
fewer read txn allocations.
2017-06-09 09:20:38 -07:00
Anthony Romano
2caae60004
Merge pull request #8062 from heyitsanthony/revert-v2machines
...
v2http: put back /v2/machines and mark as non-deprecated
2017-06-08 12:01:58 -07:00
Gyu-Ho Lee
45fd8279f0
etcdserver: add leaseExpired debugging metrics
...
Fix https://github.com/coreos/etcd/issues/8050 .
Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
2017-06-08 10:36:25 -07:00
Anthony Romano
c2dadbd9f8
v2http: put back /v2/machines and mark as non-deprecated
...
This reverts commit 2bb33181b6
. python-etcd
seems to depend on /v2/machines and the maintainer vanished. Plus, it is
prefixed with /v2/ so it probably can't be deprecated anyway.
2017-06-08 09:39:11 -07:00
Hitoshi Mitake
fa4903c83c
Merge pull request #8031 from mitake/lease-revoke-auth
...
protecting lease revoking with auth
2017-06-08 13:34:14 +09:00
Hitoshi Mitake
0c655902f2
auth, etcdserver: protect revoking lease with auth
...
Currently clients can revoke any lease without permission. This commit
lets etcdserver protect revoking with write permission.
This commit adds a mechanism for generating internal token. It is used
for indicating that LeaseRevoke was issued internally so it should be
able to delete any attached keys.
2017-06-07 17:46:14 -07:00
Anthony Romano
fb086ef13f
v3rpc: dedup resp.Header == nil checks
2017-06-07 09:25:42 -07:00
Anthony Romano
8542f2e673
v3rpc: use map for translating errors to grpc errors
...
Switch statement had poor coverage, use a map instead
2017-06-06 16:55:44 -07:00