Merge pull request #3249 from philips/get-etcd-running-under-arm64
Get etcd running under arm64release-2.2
commit
45f3a0c547
|
@ -79,6 +79,13 @@ type apply struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
type raftNode struct {
|
type raftNode struct {
|
||||||
|
// Cache of the latest raft index and raft term the server has seen.
|
||||||
|
// These three unit64 fields must be the first elements to keep 64-bit
|
||||||
|
// alignment for atomic access to the fields.
|
||||||
|
index uint64
|
||||||
|
term uint64
|
||||||
|
lead uint64
|
||||||
|
|
||||||
raft.Node
|
raft.Node
|
||||||
|
|
||||||
// a chan to send out apply
|
// a chan to send out apply
|
||||||
|
@ -99,11 +106,6 @@ type raftNode struct {
|
||||||
// If transport is nil, server will panic.
|
// If transport is nil, server will panic.
|
||||||
transport rafthttp.Transporter
|
transport rafthttp.Transporter
|
||||||
|
|
||||||
// Cache of the latest raft index and raft term the server has seen
|
|
||||||
index uint64
|
|
||||||
term uint64
|
|
||||||
lead uint64
|
|
||||||
|
|
||||||
stopped chan struct{}
|
stopped chan struct{}
|
||||||
done chan struct{}
|
done chan struct{}
|
||||||
}
|
}
|
||||||
|
|
|
@ -141,11 +141,13 @@ type Server interface {
|
||||||
|
|
||||||
// EtcdServer is the production implementation of the Server interface
|
// EtcdServer is the production implementation of the Server interface
|
||||||
type EtcdServer struct {
|
type EtcdServer struct {
|
||||||
|
// r must be the first element to keep 64-bit alignment for atomic
|
||||||
|
// access to fields
|
||||||
|
r raftNode
|
||||||
|
|
||||||
cfg *ServerConfig
|
cfg *ServerConfig
|
||||||
snapCount uint64
|
snapCount uint64
|
||||||
|
|
||||||
r raftNode
|
|
||||||
|
|
||||||
w wait.Wait
|
w wait.Wait
|
||||||
stop chan struct{}
|
stop chan struct{}
|
||||||
done chan struct{}
|
done chan struct{}
|
||||||
|
|
|
@ -31,9 +31,13 @@ import (
|
||||||
// event happens between the end of the first watch command and the start
|
// event happens between the end of the first watch command and the start
|
||||||
// of the second command.
|
// of the second command.
|
||||||
type watcherHub struct {
|
type watcherHub struct {
|
||||||
|
// count must be the first element to keep 64-bit alignment for atomic
|
||||||
|
// access
|
||||||
|
|
||||||
|
count int64 // current number of watchers.
|
||||||
|
|
||||||
mutex sync.Mutex
|
mutex sync.Mutex
|
||||||
watchers map[string]*list.List
|
watchers map[string]*list.List
|
||||||
count int64 // current number of watchers.
|
|
||||||
EventHistory *EventHistory
|
EventHistory *EventHistory
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
8
test
8
test
|
@ -45,7 +45,13 @@ split=(${NO_RACE_TEST// / })
|
||||||
NO_RACE_TEST=${split[@]/#/${REPO_PATH}/}
|
NO_RACE_TEST=${split[@]/#/${REPO_PATH}/}
|
||||||
|
|
||||||
echo "Running tests..."
|
echo "Running tests..."
|
||||||
go test -timeout 3m ${COVER} $@ ${TEST} --race -cpu 1,2,4
|
|
||||||
|
MACHINE_TYPE=$(uname -m)
|
||||||
|
if [ $MACHINE_TYPE != "armv7l" ]; then
|
||||||
|
RACE="--race"
|
||||||
|
fi
|
||||||
|
|
||||||
|
go test -timeout 3m ${COVER} $@ ${TEST} ${RACE} -cpu 1,2,4
|
||||||
go test -timeout 3m ${COVER} $@ ${NO_RACE_TEST} -cpu 1,2,4
|
go test -timeout 3m ${COVER} $@ ${NO_RACE_TEST} -cpu 1,2,4
|
||||||
|
|
||||||
if [ -n "$INTEGRATION" ]; then
|
if [ -n "$INTEGRATION" ]; then
|
||||||
|
|
Loading…
Reference in New Issue