diff --git a/Godeps/Godeps.json b/Godeps/Godeps.json index 7452fc911fd..ffd24810915 100644 --- a/Godeps/Godeps.json +++ b/Godeps/Godeps.json @@ -358,263 +358,263 @@ }, { "ImportPath": "github.com/coreos/etcd/alarm", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/auth", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/auth/authpb", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/client", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/clientv3", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/compactor", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/discovery", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/error", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/etcdserver", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/etcdserver/api", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/etcdserver/api/v2http", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/etcdserver/api/v2http/httptypes", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/etcdserver/api/v3rpc", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/etcdserver/api/v3rpc/rpctypes", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/etcdserver/auth", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/etcdserver/etcdserverpb", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/etcdserver/membership", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/etcdserver/stats", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/integration", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/lease", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/lease/leasehttp", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/lease/leasepb", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/mvcc", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/mvcc/backend", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/mvcc/mvccpb", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/adt", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/contention", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/crc", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/fileutil", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/httputil", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/idutil", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/ioutil", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/logutil", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/netutil", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/pathutil", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/pbutil", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/runtime", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/schedule", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/testutil", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/tlsutil", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/transport", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/types", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/pkg/wait", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/raft", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/raft/raftpb", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/rafthttp", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/snap", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/snap/snappb", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/store", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/version", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/wal", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/etcd/wal/walpb", - "Comment": "v3.0.12", - "Rev": "2d1e2e8e646e65f73ca0d9ee905a5343d6135a50" + "Comment": "v3.0.13", + "Rev": "c99d0d4b255f0dfc117b59555c89933192237c27" }, { "ImportPath": "github.com/coreos/go-oidc/http", diff --git a/build-tools/build-image/cross/Dockerfile b/build-tools/build-image/cross/Dockerfile index c9a176fe8cd..749bf3bf7f1 100644 --- a/build-tools/build-image/cross/Dockerfile +++ b/build-tools/build-image/cross/Dockerfile @@ -72,7 +72,7 @@ RUN mkdir $TMPDIR \ github.com/jteeuwen/go-bindata/go-bindata # Download and symlink etcd. We need this for our integration tests. -RUN export ETCD_VERSION=v3.0.10; \ +RUN export ETCD_VERSION=v3.0.13; \ mkdir -p /usr/local/src/etcd \ && cd /usr/local/src/etcd \ && curl -fsSL https://github.com/coreos/etcd/releases/download/${ETCD_VERSION}/etcd-${ETCD_VERSION}-linux-amd64.tar.gz | tar -xz \ diff --git a/build-tools/build-image/cross/VERSION b/build-tools/build-image/cross/VERSION index 7c727ed6d36..08acdfb9caf 100644 --- a/build-tools/build-image/cross/VERSION +++ b/build-tools/build-image/cross/VERSION @@ -1 +1 @@ -v1.7.1-0 +v1.7.1-2 diff --git a/cluster/images/etcd/Makefile b/cluster/images/etcd/Makefile index 3c2fd2805b2..b37270fa8b0 100644 --- a/cluster/images/etcd/Makefile +++ b/cluster/images/etcd/Makefile @@ -15,7 +15,7 @@ # Build the etcd image # # Usage: -# [TAGS=2.2.1 2.3.7 3.0.12] [REGISTRY=gcr.io/google_containers] [ARCH=amd64] [BASEIMAGE=busybox] make (build|push) +# [TAGS=2.2.1 2.3.7 3.0.13] [REGISTRY=gcr.io/google_containers] [ARCH=amd64] [BASEIMAGE=busybox] make (build|push) # The image contains different etcd versions to simplify # upgrades. Thus be careful when removing any tag from here. @@ -26,8 +26,8 @@ # Except from etcd-$(tag) and etcdctl-$(tag) binaries, we also # need etcd and etcdctl binaries for backward compatibility reasons. # That binary will be set to the last tag from $(TAGS). -TAGS?=2.2.1 2.3.7 3.0.12 -REGISTRY_TAG?=3.0.12 +TAGS?=2.2.1 2.3.7 3.0.13 +REGISTRY_TAG?=3.0.13 ARCH?=amd64 REGISTRY?=gcr.io/google_containers GOLANG_VERSION?=1.6.3 diff --git a/cluster/images/etcd/migrate-if-needed.sh b/cluster/images/etcd/migrate-if-needed.sh index fc36b8496e7..25a6080ca08 100755 --- a/cluster/images/etcd/migrate-if-needed.sh +++ b/cluster/images/etcd/migrate-if-needed.sh @@ -18,7 +18,7 @@ # This script performs etcd upgrade based on the following environmental # variables: # TARGET_STORAGE - API of etcd to be used (supported: 'etcd2', 'etcd3') -# TARGET_VERSION - etcd release to be used (supported: '2.2.1', '2.3.7', '3.0.12') +# TARGET_VERSION - etcd release to be used (supported: '2.2.1', '2.3.7', '3.0.13') # DATA_DIRECTORY - directory with etcd data # # The current etcd version and storage format is detected based on the @@ -27,8 +27,8 @@ # # The update workflow support the following upgrade steps: # - 2.2.1/etcd2 -> 2.3.7/etcd2 -# - 2.3.7/etcd2 -> 3.0.12/etcd2 -# - 3.0.12/etcd2 -> 3.0.12/etcd3 +# - 2.3.7/etcd2 -> 3.0.13/etcd2 +# - 3.0.13/etcd2 -> 3.0.13/etcd3 # # NOTE: The releases supported in this script has to match release binaries # present in the etcd image (to make this script work correctly). @@ -60,7 +60,7 @@ fi # NOTE: SUPPORTED_VERSION has to match release binaries present in the # etcd image (to make this script work correctly). # We cannot use array since sh doesn't support it. -SUPPORTED_VERSIONS_STRING="2.2.1 2.3.7 3.0.12" +SUPPORTED_VERSIONS_STRING="2.2.1 2.3.7 3.0.13" SUPPORTED_VERSIONS=$(echo "${SUPPORTED_VERSIONS_STRING}" | tr " " "\n") VERSION_FILE="version.txt" diff --git a/hack/lib/etcd.sh b/hack/lib/etcd.sh index 83b80ffcb69..8c8033b2b9d 100644 --- a/hack/lib/etcd.sh +++ b/hack/lib/etcd.sh @@ -16,7 +16,7 @@ # A set of helpers for starting/running etcd for tests -ETCD_VERSION=${ETCD_VERSION:-3.0.10} +ETCD_VERSION=${ETCD_VERSION:-3.0.13} ETCD_HOST=${ETCD_HOST:-127.0.0.1} ETCD_PORT=${ETCD_PORT:-2379} diff --git a/hack/test-update-storage-objects.sh b/hack/test-update-storage-objects.sh index e2c6bcb8bc0..4f2c3a0d72b 100755 --- a/hack/test-update-storage-objects.sh +++ b/hack/test-update-storage-objects.sh @@ -160,7 +160,7 @@ killApiServer kube::etcd::stop TARGET_STORAGE="etcd3" \ - TARGET_VERSION="3.0.12" \ + TARGET_VERSION="3.0.13" \ DATA_DIRECTORY="${ETCD_DIR}" \ ETCD=$(which etcd) \ ETCDCTL=$(which etcdctl) \ diff --git a/vendor/github.com/coreos/etcd/auth/store.go b/vendor/github.com/coreos/etcd/auth/store.go index 01c6c9905c8..0c210acb0b3 100644 --- a/vendor/github.com/coreos/etcd/auth/store.go +++ b/vendor/github.com/coreos/etcd/auth/store.go @@ -603,6 +603,11 @@ func (as *authStore) isOpPermitted(userName string, key, rangeEnd []byte, permTy return false } + // root role should have permission on all ranges + if hasRootRole(user) { + return true + } + if as.isRangeOpPermitted(tx, userName, key, rangeEnd, permTyp) { return true } diff --git a/vendor/github.com/coreos/etcd/etcdserver/server.go b/vendor/github.com/coreos/etcd/etcdserver/server.go index dd232d5ef2a..d2324e57c2d 100644 --- a/vendor/github.com/coreos/etcd/etcdserver/server.go +++ b/vendor/github.com/coreos/etcd/etcdserver/server.go @@ -154,13 +154,13 @@ type Server interface { // EtcdServer is the production implementation of the Server interface type EtcdServer struct { - // r and inflightSnapshots must be the first elements to keep 64-bit alignment for atomic - // access to fields - - // count the number of inflight snapshots. - // MUST use atomic operation to access this field. - inflightSnapshots int64 - Cfg *ServerConfig + // inflightSnapshots holds count the number of snapshots currently inflight. + inflightSnapshots int64 // must use atomic operations to access; keep 64-bit aligned. + appliedIndex uint64 // must use atomic operations to access; keep 64-bit aligned. + // consistIndex used to hold the offset of current executing entry + // It is initialized to 0 before executing any entry. + consistIndex consistentIndex // must use atomic operations to access; keep 64-bit aligned. + Cfg *ServerConfig readych chan struct{} r raftNode @@ -195,10 +195,6 @@ type EtcdServer struct { // compactor is used to auto-compact the KV. compactor *compactor.Periodic - // consistent index used to hold the offset of current executing entry - // It is initialized to 0 before executing any entry. - consistIndex consistentIndex - // peerRt used to send requests (version, lease) to peers. peerRt http.RoundTripper reqIDGen *idutil.Generator @@ -212,8 +208,6 @@ type EtcdServer struct { // wg is used to wait for the go routines that depends on the server state // to exit when stopping the server. wg sync.WaitGroup - - appliedIndex uint64 } // NewServer creates a new EtcdServer from the supplied configuration. The diff --git a/vendor/github.com/coreos/etcd/mvcc/kvstore.go b/vendor/github.com/coreos/etcd/mvcc/kvstore.go index adc1fb7661e..6819c69a16d 100644 --- a/vendor/github.com/coreos/etcd/mvcc/kvstore.go +++ b/vendor/github.com/coreos/etcd/mvcc/kvstore.go @@ -408,6 +408,13 @@ func (s *store) restore() error { s.currentRev = rev } + // keys in the range [compacted revision -N, compaction] might all be deleted due to compaction. + // the correct revision should be set to compaction revision in the case, not the largest revision + // we have seen. + if s.currentRev.main < s.compactMainRev { + s.currentRev.main = s.compactMainRev + } + for key, lid := range keyToLease { if s.le == nil { panic("no lessor to attach lease") diff --git a/vendor/github.com/coreos/etcd/raft/node.go b/vendor/github.com/coreos/etcd/raft/node.go index 59d61284d89..22332be6bad 100644 --- a/vendor/github.com/coreos/etcd/raft/node.go +++ b/vendor/github.com/coreos/etcd/raft/node.go @@ -38,7 +38,7 @@ var ( // SoftState provides state that is useful for logging and debugging. // The state is volatile and does not need to be persisted to the WAL. type SoftState struct { - Lead uint64 + Lead uint64 // must use atomic operations to access; keep 64-bit aligned. RaftState StateType } diff --git a/vendor/github.com/coreos/etcd/raft/raftpb/raft.pb.go b/vendor/github.com/coreos/etcd/raft/raftpb/raft.pb.go index 664b5b8289c..e60fb88df34 100644 --- a/vendor/github.com/coreos/etcd/raft/raftpb/raft.pb.go +++ b/vendor/github.com/coreos/etcd/raft/raftpb/raft.pb.go @@ -183,9 +183,9 @@ func (x *ConfChangeType) UnmarshalJSON(data []byte) error { func (ConfChangeType) EnumDescriptor() ([]byte, []int) { return fileDescriptorRaft, []int{2} } type Entry struct { - Type EntryType `protobuf:"varint,1,opt,name=Type,json=type,enum=raftpb.EntryType" json:"Type"` Term uint64 `protobuf:"varint,2,opt,name=Term,json=term" json:"Term"` Index uint64 `protobuf:"varint,3,opt,name=Index,json=index" json:"Index"` + Type EntryType `protobuf:"varint,1,opt,name=Type,json=type,enum=raftpb.EntryType" json:"Type"` Data []byte `protobuf:"bytes,4,opt,name=Data,json=data" json:"Data,omitempty"` XXX_unrecognized []byte `json:"-"` } diff --git a/vendor/github.com/coreos/etcd/raft/raftpb/raft.proto b/vendor/github.com/coreos/etcd/raft/raftpb/raft.proto index 42f10d269f0..8cd630046ef 100644 --- a/vendor/github.com/coreos/etcd/raft/raftpb/raft.proto +++ b/vendor/github.com/coreos/etcd/raft/raftpb/raft.proto @@ -15,9 +15,9 @@ enum EntryType { } message Entry { + optional uint64 Term = 2 [(gogoproto.nullable) = false]; // must be 64-bit aligned for atomic operations + optional uint64 Index = 3 [(gogoproto.nullable) = false]; // must be 64-bit aligned for atomic operations optional EntryType Type = 1 [(gogoproto.nullable) = false]; - optional uint64 Term = 2 [(gogoproto.nullable) = false]; - optional uint64 Index = 3 [(gogoproto.nullable) = false]; optional bytes Data = 4; } diff --git a/vendor/github.com/coreos/etcd/version/version.go b/vendor/github.com/coreos/etcd/version/version.go index 6934905ba05..fd3dcd5661f 100644 --- a/vendor/github.com/coreos/etcd/version/version.go +++ b/vendor/github.com/coreos/etcd/version/version.go @@ -29,7 +29,7 @@ import ( var ( // MinClusterVersion is the min cluster version this etcd binary is compatible with. MinClusterVersion = "2.3.0" - Version = "3.0.12" + Version = "3.0.13" // Git SHA Value will be set during build GitSHA = "Not provided (use ./build instead of go build)"