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 2bb33181b6c8fbe8109fc668a19ce4ab46c605ec. 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
Anthony Romano
887db5a3db
*: fix go tool vet -all -shadow errors
2017-06-03 21:32:36 -07:00
Anthony Romano
0c923bdf11
Merge pull request #8010 from heyitsanthony/json-txn
...
e2e: test txn over grpc json
2017-06-01 10:01:41 -07:00
Anthony Romano
d8210da505
v3rpc: treat nil txn request op as error
...
Fixes #7889
2017-05-31 12:39:52 -07:00
Anthony Romano
a20e667c5b
Merge pull request #7967 from heyitsanthony/purge-snapdb
...
etcdserver: purge old snap.db files
2017-05-30 16:15:11 -07:00
fanmin shi
68a72c6b6e
v3rpc: change grpc max recv size as needed.
2017-05-25 11:01:51 -07:00
fanmin shi
9e7740011b
etcdserver: add --max-request-bytes flag
2017-05-25 11:01:38 -07:00
fanmin shi
b003734be6
Merge pull request #7976 from fanminshi/make_maxOpsPerTxn_configurable
...
etcdserver: add --max-txn-ops flag
2017-05-25 10:34:17 -07:00
fanmin shi
e9f464debc
integration: creation of cluster now takes maxTxnOps
2017-05-24 14:48:44 -07:00
fanmin shi
ae7ddfb483
etcdserver: add --max-txn-ops flag
...
--max-txn-ops allows users to define the maximum transaction operations
for each txn request. it defaults at 128.
Fixes #7826
2017-05-24 10:32:32 -07:00
Anthony Romano
c1c9a2c96c
etcdserver: close mvcc.KV on init error path
...
Scheduled compaction will panic if KV is not stopped before
closing the backend.
2017-05-23 10:41:37 -07:00
Anthony Romano
ab16fa1f07
etcdserver: purge old snap.db files
...
Lots of garbage db files in #7957 . Should purge.
2017-05-22 15:44:21 -07:00
Hitoshi Mitake
4cd5e7ebb2
Merge pull request #7809 from mitake/auth-watch
...
protect watch with auth
2017-05-20 13:23:30 +09:00
Hitoshi Mitake
939912c425
clientv3, etcdserver: support auth in Watch()
2017-05-20 11:34:45 +09:00
Anthony Romano
33c375dc44
*: fill out blank package godocs
...
Mostly one-liner short descriptions, but also includes some typo fixes
and some examples.
2017-05-18 09:41:13 -07:00
Xiang
32c252f003
etcdserver: more logging on snapshot close path
2017-05-17 14:48:52 -07:00
Anthony Romano
f6cd4d4f5b
snap, etcdserver: tighten up snapshot path handling
...
Computing the snapshot file path is error prone; snapshot recovery was
constructing file paths missing a path separator so the snapshot
would never be loaded. Instead, refactor the backend path handling
to use helper functions where possible.
2017-05-11 13:46:59 -07:00
fanmin shi
47f5b7c3ad
Merge pull request #7876 from fanminshi/fix_7628
...
etcdserver: renaming db happens after snapshot persists to wal and snap files
2017-05-09 16:15:41 -07:00
fanmin shi
dfdaf082c5
etcdserver: add a test to ensure renaming db happens before persisting wal and snap files
2017-05-09 14:00:22 -07:00