Anthony Romano
6e83ec0ed7
etcdmain: reject binding listeners to domain names
...
Fixes #6336
2016-09-07 08:08:35 +09:00
Jason E. Aten
5c44cdfdaa
etcdctl/ctlv3: don't crash when we should prompt for pw.
...
when 'etcdctl --user name get blah' is invoked to
prompt for password, don't panic.
addresses the segfault part of #6343
2016-09-04 09:02:50 +09:00
Anthony Romano
09a239f040
e2e: add quoted key/value to txn test
2016-09-04 09:02:47 +09:00
Anthony Romano
3faff8b2e2
etcdctl: fix quoted string handling in txn and watch
...
Fixes #6315
2016-09-04 09:02:28 +09:00
Anthony Romano
2345fda18e
version: bump to v3.0.7+git
2016-08-31 16:41:06 -07:00
Gyu-Ho Lee
5695120efc
version: bump to v3.0.7
v3.0.7
2016-08-31 09:49:24 -07:00
Gyu-Ho Lee
183293e061
wal: lowercase segmentSizeBytes
2016-08-31 09:48:30 -07:00
Jason E. Aten
4b48876f0e
clientv3/concurrency: allow election on prefixes of keys.
...
After winning an election or obtaining a lock, we
auto-append a slash after the provided key prefix.
This avoids the previous deadlock due to waiting
on the wrong key.
Fixes #6278
Conflicts:
clientv3/concurrency/election.go
clientv3/concurrency/mutex.go
2016-08-31 09:46:05 -07:00
Aaron Lehmann
5089bf58fb
wal: hold file lock while renaming WAL directory on non-Windows
...
Windows requires this lock to be released before the directory is
renamed. But on unix-like operating systems, releasing the lock and
trying to reacquire it immediately can be flaky if a process is forked
around the same time. The file descriptors are marked as close-on-exec
by the Go runtime, but there is a window between the fork and exec where
another process will be holding the lock.
2016-08-31 09:39:57 -07:00
Anthony Romano
480a347179
wal: use page buffered writer for writing records
...
Forces torn writes to only happen on sector boundaries.
Fixes #6271
2016-08-30 21:06:36 -07:00
Anthony Romano
59e560c7a7
ioutil: add page buffered writer
...
A buffered writer that only writes full pages or when explicitly flushed.
2016-08-30 21:06:33 -07:00
Xiang Li
0bd9bea2e9
etcdserver: allow zero kv index for cluster upgrade
...
If a user upgrades etcd from 2.3.x to 3.0 and shutdown the
cluster immediately without triggering any new backend writes,
then the consistent index in backend would be zero.
The user cannot restart etcdserver due to today's strick index
match checking. We now have to lose this a bit for this case.
2016-08-30 21:05:20 -07:00
Anthony Romano
bd7581ac59
wal: zero out wal tail past its first zero record
...
Whenever the WAL is opened for writes, it should write zeroes to its tail
starting from the first zero record. Otherwise, if there are entries past
the first zero record due to a torn write, any new writes that overlap the
old entries will lead to a garbage record on the tail and cause a CRC
mismatch.
2016-08-26 14:27:53 -07:00
Anthony Romano
db378c3d26
wal: test for truncation on torn writes
2016-08-26 14:27:51 -07:00
Anthony Romano
23740162dc
fileutil: add ZeroToEnd for zeroing files
2016-08-26 14:27:49 -07:00
Anthony Romano
96422a955f
discovery: reject IP address records in SRVGetCluster
...
Was incorrectly trimming the trailing '.' from the target; this in turn
caused the etcd server to accept any SRV record with an IP target
instead of only targets with A records.
2016-08-24 09:14:47 -07:00
Gyu-Ho Lee
6fd996fdac
version: bump to v3.0.6+git
2016-08-19 12:38:13 -07:00
Gyu-Ho Lee
9efa00d103
version: bump to v3.0.6
v3.0.6
2016-08-19 12:03:02 -07:00
Xiang Li
72d30f4c34
*: minor cleanup for lease
2016-08-19 11:53:38 -07:00
Xiang Li
2e92779777
mvcc: attach keys to leases after recover all state
...
The previous logic is wrong. When we have hisotry like Put(foo, bar, lease1),
and Put(foo, bar, lease2), we will end up with attaching foo to two leases 1 and
2. Similar things can happen for deattach by clearing the lease of a key.
Now we try to fix this by starting to attach leases at the end of the recovery.
We use a map to keep the last lease attachment state.
2016-08-19 11:49:05 -07:00
Xiang Li
404415b1e3
lease: do lease delection in the kv txn
2016-08-19 11:49:05 -07:00
Xiang Li
07e421d245
lease: delete kvs in a txn
2016-08-19 11:49:05 -07:00
Xiang Li
a7d6e29275
etcdserver: always recover lessor first
2016-08-19 11:49:05 -07:00
Gyu-Ho Lee
1a8b295dab
vendor: update grpc/grpc-go for clientconn patch
2016-08-19 11:46:51 -07:00
Anthony Romano
ffc45cc066
rafthttp: fix race between streamReader.stop() and connection closer
2016-08-19 11:45:39 -07:00
Gyu-Ho Lee
0db1ba8093
version: bump to v3.0.5+git
2016-08-19 11:11:10 -07:00
Gyu-Ho Lee
43f7c94ac8
version: bump to v3.0.5
v3.0.5
2016-08-19 10:20:37 -07:00
Hongchao Deng
93d13fb5b4
integration: NewClusterV3 should launch cluster before creating clients
2016-08-18 14:54:45 -07:00
Gyu-Ho Lee
6a1e3e73dd
vendor: boltdb/bolt v1.3.0 for Go 1.7
...
In case somebody wants to build this branch with Go 1.7
2016-08-18 14:41:34 -07:00
Xiang Li
ec576ee5ac
mvcc: fix count
2016-08-16 12:13:33 -07:00
Anthony Romano
606d79afc4
clientv3: use failfast and retry wrappers for at-most-once rpcs
2016-08-16 12:12:44 -07:00
Anthony Romano
f4d15a430c
integration: treat client TLS connecting to insecure server as timeout
2016-08-16 12:09:42 -07:00
Anthony Romano
4a841459f1
clientv3: respect up/down notifications from grpc
...
Fixes #5842
2016-08-16 12:09:38 -07:00
Gyu-Ho Lee
ee8c577fc0
vendor: update grpc
2016-08-16 12:09:16 -07:00
Anthony Romano
8ae0f94cd7
clientv3: only block on New() when DialTimeout > 0
...
Fixes #6162
2016-08-12 12:03:33 -07:00
Anthony Romano
69a97863a9
clientv3: handle watchGrpcStream shutdown if prior to goroutine start
...
Fixes #6141
2016-08-09 20:59:09 -07:00
Anthony Romano
12c7e4a9f8
clientv3: close watcher stream once all watchers detach
...
Fixes #6134
2016-08-09 10:44:21 -07:00
Anthony Romano
23cced240b
transport: add ServerName to TLSConfig and add ValidateSecureEndpoints
...
ServerName prevents accepting forged SRV records with cross-domain
credentials. ValidateSecureEndpoints prevents downgrade attacks from SRV
records.
2016-08-04 11:00:28 -07:00
Anthony Romano
e73c928d85
etcdctl: set ServerName for TLS when using --discovery-srv
2016-08-04 11:00:25 -07:00
Anthony Romano
779ad90f9a
Documentation: update clustering guide about PKI SRV record forging
2016-08-04 11:00:22 -07:00
Anthony Romano
dca1740be5
etcdmain: check TLS on gateway SRV records
2016-08-04 11:00:15 -07:00
Anthony Romano
487b34d857
embed: use ServerName on TLS DNS discovery w/o CA file
2016-08-04 10:56:11 -07:00
Gyu-Ho Lee
a31283cf51
v2http: use guest access in non-TLS mode
...
Fix https://github.com/coreos/etcd/issues/6075 .
2016-08-04 10:52:42 -07:00
Gyu-Ho Lee
b722bedf8a
version: bump to v3.0.4+git
2016-07-27 15:30:31 -07:00
Gyu-Ho Lee
d53923c636
version: bump to v3.0.4
v3.0.4
2016-07-27 13:40:42 -07:00
Gyu-Ho Lee
9356665d60
*: regenerate proto files for grpc-gateway
2016-07-27 13:40:07 -07:00
Gyu-Ho Lee
0932d17395
scripts/genproto: use latest grpc-gateway c8ec92d0
2016-07-27 13:39:00 -07:00
Gyu-Ho Lee
2a3ea3f996
Dockerfile-release: add '/var/lib/etcd/'
...
We have '/var/etcd/' in Dockerfile for historical reason.
Most cases, user store data in '/var/lib/etcd/'.
2016-07-27 13:38:58 -07:00
Anthony Romano
e5a5e5f7c6
etcdserver, api, membership: don't race on setting version
...
Fixes #6029
2016-07-27 09:39:39 -07:00
Gyu-Ho Lee
00bdd907d5
Documentation: fix links in upgrades
2016-07-26 13:16:15 -07:00