mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
server: address golangci var-naming issues
Signed-off-by: Ivan Valdes <ivan@vald.es>
This commit is contained in:
parent
6f55dfa26e
commit
66f56d71e4
@ -639,7 +639,7 @@ func configureClientListeners(cfg *Config) (sctxs map[string]*serveCtx, err erro
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, u := range cfg.ListenClientUrls {
|
for _, u := range cfg.ListenClientUrls {
|
||||||
addr, secure, network := resolveUrl(u)
|
addr, secure, network := resolveURL(u)
|
||||||
sctx := sctxs[addr]
|
sctx := sctxs[addr]
|
||||||
if sctx == nil {
|
if sctx == nil {
|
||||||
sctx = newServeCtx(cfg.logger)
|
sctx = newServeCtx(cfg.logger)
|
||||||
@ -652,7 +652,7 @@ func configureClientListeners(cfg *Config) (sctxs map[string]*serveCtx, err erro
|
|||||||
sctx.network = network
|
sctx.network = network
|
||||||
}
|
}
|
||||||
for _, u := range cfg.ListenClientHttpUrls {
|
for _, u := range cfg.ListenClientHttpUrls {
|
||||||
addr, secure, network := resolveUrl(u)
|
addr, secure, network := resolveURL(u)
|
||||||
|
|
||||||
sctx := sctxs[addr]
|
sctx := sctxs[addr]
|
||||||
if sctx == nil {
|
if sctx == nil {
|
||||||
@ -715,7 +715,7 @@ func configureClientListeners(cfg *Config) (sctxs map[string]*serveCtx, err erro
|
|||||||
return sctxs, nil
|
return sctxs, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func resolveUrl(u url.URL) (addr string, secure bool, network string) {
|
func resolveURL(u url.URL) (addr string, secure bool, network string) {
|
||||||
addr = u.Host
|
addr = u.Host
|
||||||
network = "tcp"
|
network = "tcp"
|
||||||
if u.Scheme == "unix" || u.Scheme == "unixs" {
|
if u.Scheme == "unix" || u.Scheme == "unixs" {
|
||||||
@ -757,26 +757,26 @@ func (e *Etcd) serveClients() {
|
|||||||
}))
|
}))
|
||||||
}
|
}
|
||||||
|
|
||||||
splitHttp := false
|
splitHTTP := false
|
||||||
for _, sctx := range e.sctxs {
|
for _, sctx := range e.sctxs {
|
||||||
if sctx.httpOnly {
|
if sctx.httpOnly {
|
||||||
splitHttp = true
|
splitHTTP = true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// start client servers in each goroutine
|
// start client servers in each goroutine
|
||||||
for _, sctx := range e.sctxs {
|
for _, sctx := range e.sctxs {
|
||||||
go func(s *serveCtx) {
|
go func(s *serveCtx) {
|
||||||
e.errHandler(s.serve(e.Server, &e.cfg.ClientTLSInfo, mux, e.errHandler, e.grpcGatewayDial(splitHttp), splitHttp, gopts...))
|
e.errHandler(s.serve(e.Server, &e.cfg.ClientTLSInfo, mux, e.errHandler, e.grpcGatewayDial(splitHTTP), splitHTTP, gopts...))
|
||||||
}(sctx)
|
}(sctx)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (e *Etcd) grpcGatewayDial(splitHttp bool) (grpcDial func(ctx context.Context) (*grpc.ClientConn, error)) {
|
func (e *Etcd) grpcGatewayDial(splitHTTP bool) (grpcDial func(ctx context.Context) (*grpc.ClientConn, error)) {
|
||||||
if !e.cfg.EnableGRPCGateway {
|
if !e.cfg.EnableGRPCGateway {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
sctx := e.pickGrpcGatewayServeContext(splitHttp)
|
sctx := e.pickGRPCGatewayServeContext(splitHTTP)
|
||||||
addr := sctx.addr
|
addr := sctx.addr
|
||||||
if network := sctx.network; network == "unix" {
|
if network := sctx.network; network == "unix" {
|
||||||
// explicitly define unix network for gRPC socket support
|
// explicitly define unix network for gRPC socket support
|
||||||
@ -808,9 +808,9 @@ func (e *Etcd) grpcGatewayDial(splitHttp bool) (grpcDial func(ctx context.Contex
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (e *Etcd) pickGrpcGatewayServeContext(splitHttp bool) *serveCtx {
|
func (e *Etcd) pickGRPCGatewayServeContext(splitHTTP bool) *serveCtx {
|
||||||
for _, sctx := range e.sctxs {
|
for _, sctx := range e.sctxs {
|
||||||
if !splitHttp || !sctx.httpOnly {
|
if !splitHTTP || !sctx.httpOnly {
|
||||||
return sctx
|
return sctx
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -96,7 +96,7 @@ func (sctx *serveCtx) serve(
|
|||||||
handler http.Handler,
|
handler http.Handler,
|
||||||
errHandler func(error),
|
errHandler func(error),
|
||||||
grpcDialForRestGatewayBackends func(ctx context.Context) (*grpc.ClientConn, error),
|
grpcDialForRestGatewayBackends func(ctx context.Context) (*grpc.ClientConn, error),
|
||||||
splitHttp bool,
|
splitHTTP bool,
|
||||||
gopts ...grpc.ServerOption) (err error) {
|
gopts ...grpc.ServerOption) (err error) {
|
||||||
logger := defaultLog.New(io.Discard, "etcdhttp", 0)
|
logger := defaultLog.New(io.Discard, "etcdhttp", 0)
|
||||||
<-s.ReadyNotify()
|
<-s.ReadyNotify()
|
||||||
@ -105,9 +105,9 @@ func (sctx *serveCtx) serve(
|
|||||||
|
|
||||||
m := cmux.New(sctx.l)
|
m := cmux.New(sctx.l)
|
||||||
var server func() error
|
var server func() error
|
||||||
onlyGRPC := splitHttp && !sctx.httpOnly
|
onlyGRPC := splitHTTP && !sctx.httpOnly
|
||||||
onlyHttp := splitHttp && sctx.httpOnly
|
onlyHTTP := splitHTTP && sctx.httpOnly
|
||||||
grpcEnabled := !onlyHttp
|
grpcEnabled := !onlyHTTP
|
||||||
httpEnabled := !onlyGRPC
|
httpEnabled := !onlyGRPC
|
||||||
|
|
||||||
v3c := v3client.New(s)
|
v3c := v3client.New(s)
|
||||||
@ -129,7 +129,7 @@ func (sctx *serveCtx) serve(
|
|||||||
switch {
|
switch {
|
||||||
case onlyGRPC:
|
case onlyGRPC:
|
||||||
traffic = "grpc"
|
traffic = "grpc"
|
||||||
case onlyHttp:
|
case onlyHTTP:
|
||||||
traffic = "http"
|
traffic = "http"
|
||||||
default:
|
default:
|
||||||
traffic = "grpc+http"
|
traffic = "grpc+http"
|
||||||
@ -144,7 +144,7 @@ func (sctx *serveCtx) serve(
|
|||||||
Handler: createAccessController(sctx.lg, s, httpmux),
|
Handler: createAccessController(sctx.lg, s, httpmux),
|
||||||
ErrorLog: logger, // do not log user error
|
ErrorLog: logger, // do not log user error
|
||||||
}
|
}
|
||||||
if err = configureHttpServer(srv, s.Cfg); err != nil {
|
if err = configureHTTPServer(srv, s.Cfg); err != nil {
|
||||||
sctx.lg.Error("Configure http server failed", zap.Error(err))
|
sctx.lg.Error("Configure http server failed", zap.Error(err))
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -227,7 +227,7 @@ func (sctx *serveCtx) serve(
|
|||||||
TLSConfig: tlscfg,
|
TLSConfig: tlscfg,
|
||||||
ErrorLog: logger, // do not log user error
|
ErrorLog: logger, // do not log user error
|
||||||
}
|
}
|
||||||
if err := configureHttpServer(srv, s.Cfg); err != nil {
|
if err := configureHTTPServer(srv, s.Cfg); err != nil {
|
||||||
sctx.lg.Error("Configure https server failed", zap.Error(err))
|
sctx.lg.Error("Configure https server failed", zap.Error(err))
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -258,7 +258,7 @@ func (sctx *serveCtx) serve(
|
|||||||
return server()
|
return server()
|
||||||
}
|
}
|
||||||
|
|
||||||
func configureHttpServer(srv *http.Server, cfg config.ServerConfig) error {
|
func configureHTTPServer(srv *http.Server, cfg config.ServerConfig) error {
|
||||||
// todo (ahrtr): should we support configuring other parameters in the future as well?
|
// todo (ahrtr): should we support configuring other parameters in the future as well?
|
||||||
return http2.ConfigureServer(srv, &http2.Server{
|
return http2.ConfigureServer(srv, &http2.Server{
|
||||||
MaxConcurrentStreams: cfg.MaxConcurrentStreams,
|
MaxConcurrentStreams: cfg.MaxConcurrentStreams,
|
||||||
|
@ -119,7 +119,11 @@ func (s *storeRecorder) Clone() v2store.Store {
|
|||||||
return s
|
return s
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//revive:disable:var-naming
|
||||||
func (s *storeRecorder) JsonStats() []byte { return nil }
|
func (s *storeRecorder) JsonStats() []byte { return nil }
|
||||||
|
|
||||||
|
//revive:enable:var-naming
|
||||||
|
|
||||||
func (s *storeRecorder) DeleteExpiredKeys(cutoff time.Time) {
|
func (s *storeRecorder) DeleteExpiredKeys(cutoff time.Time) {
|
||||||
s.Record(testutil.Action{
|
s.Record(testutil.Action{
|
||||||
Name: "DeleteExpiredKeys",
|
Name: "DeleteExpiredKeys",
|
||||||
|
@ -26,7 +26,7 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
ENV_VERIFY_VALUE_LOCK verify.VerificationType = "lock"
|
EnvVerifyValueLock verify.VerificationType = "lock"
|
||||||
)
|
)
|
||||||
|
|
||||||
func ValidateCalledInsideApply(lg *zap.Logger) {
|
func ValidateCalledInsideApply(lg *zap.Logger) {
|
||||||
@ -57,7 +57,7 @@ func ValidateCalledInsideUnittest(lg *zap.Logger) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func verifyLockEnabled() bool {
|
func verifyLockEnabled() bool {
|
||||||
return verify.IsVerificationEnabled(ENV_VERIFY_VALUE_LOCK)
|
return verify.IsVerificationEnabled(EnvVerifyValueLock)
|
||||||
}
|
}
|
||||||
|
|
||||||
func insideApply() bool {
|
func insideApply() bool {
|
||||||
|
@ -69,7 +69,7 @@ func TestLockVerify(t *testing.T) {
|
|||||||
expectPanic: false,
|
expectPanic: false,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
revertVerifyFunc := verify.EnableVerifications(backend.ENV_VERIFY_VALUE_LOCK)
|
revertVerifyFunc := verify.EnableVerifications(backend.EnvVerifyValueLock)
|
||||||
defer revertVerifyFunc()
|
defer revertVerifyFunc()
|
||||||
for _, tc := range tcs {
|
for _, tc := range tcs {
|
||||||
t.Run(tc.name, func(t *testing.T) {
|
t.Run(tc.name, func(t *testing.T) {
|
||||||
|
@ -44,7 +44,7 @@ func MustUnsafeGetAllLeases(tx backend.UnsafeReader) []*leasepb.Lease {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func MustUnsafePutLease(tx backend.UnsafeWriter, lpb *leasepb.Lease) {
|
func MustUnsafePutLease(tx backend.UnsafeWriter, lpb *leasepb.Lease) {
|
||||||
key := leaseIdToBytes(lpb.ID)
|
key := leaseIDToBytes(lpb.ID)
|
||||||
|
|
||||||
val, err := lpb.Marshal()
|
val, err := lpb.Marshal()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -54,11 +54,11 @@ func MustUnsafePutLease(tx backend.UnsafeWriter, lpb *leasepb.Lease) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func UnsafeDeleteLease(tx backend.UnsafeWriter, lpb *leasepb.Lease) {
|
func UnsafeDeleteLease(tx backend.UnsafeWriter, lpb *leasepb.Lease) {
|
||||||
tx.UnsafeDelete(Lease, leaseIdToBytes(lpb.ID))
|
tx.UnsafeDelete(Lease, leaseIDToBytes(lpb.ID))
|
||||||
}
|
}
|
||||||
|
|
||||||
func MustUnsafeGetLease(tx backend.UnsafeReader, leaseID int64) *leasepb.Lease {
|
func MustUnsafeGetLease(tx backend.UnsafeReader, leaseID int64) *leasepb.Lease {
|
||||||
_, vs := tx.UnsafeRange(Lease, leaseIdToBytes(leaseID), nil, 0)
|
_, vs := tx.UnsafeRange(Lease, leaseIDToBytes(leaseID), nil, 0)
|
||||||
if len(vs) != 1 {
|
if len(vs) != 1 {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
@ -70,7 +70,7 @@ func MustUnsafeGetLease(tx backend.UnsafeReader, leaseID int64) *leasepb.Lease {
|
|||||||
return &lpb
|
return &lpb
|
||||||
}
|
}
|
||||||
|
|
||||||
func leaseIdToBytes(n int64) []byte {
|
func leaseIDToBytes(n int64) []byte {
|
||||||
bytes := make([]byte, 8)
|
bytes := make([]byte, 8)
|
||||||
binary.BigEndian.PutUint64(bytes, uint64(n))
|
binary.BigEndian.PutUint64(bytes, uint64(n))
|
||||||
return bytes
|
return bytes
|
||||||
|
@ -93,12 +93,12 @@ func (s *membershipBackend) readMembersFromBackend() (map[types.ID]*membership.M
|
|||||||
tx.RLock()
|
tx.RLock()
|
||||||
defer tx.RUnlock()
|
defer tx.RUnlock()
|
||||||
err := tx.UnsafeForEach(Members, func(k, v []byte) error {
|
err := tx.UnsafeForEach(Members, func(k, v []byte) error {
|
||||||
memberId := mustParseMemberIDFromBytes(s.lg, k)
|
memberID := mustParseMemberIDFromBytes(s.lg, k)
|
||||||
m := &membership.Member{ID: memberId}
|
m := &membership.Member{ID: memberID}
|
||||||
if err := json.Unmarshal(v, &m); err != nil {
|
if err := json.Unmarshal(v, &m); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
members[memberId] = m
|
members[memberID] = m
|
||||||
return nil
|
return nil
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -106,8 +106,8 @@ func (s *membershipBackend) readMembersFromBackend() (map[types.ID]*membership.M
|
|||||||
}
|
}
|
||||||
|
|
||||||
err = tx.UnsafeForEach(MembersRemoved, func(k, v []byte) error {
|
err = tx.UnsafeForEach(MembersRemoved, func(k, v []byte) error {
|
||||||
memberId := mustParseMemberIDFromBytes(s.lg, k)
|
memberID := mustParseMemberIDFromBytes(s.lg, k)
|
||||||
removed[memberId] = true
|
removed[memberID] = true
|
||||||
return nil
|
return nil
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -74,14 +74,14 @@ func readWALNames(lg *zap.Logger, dirpath string) ([]string, error) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("[readWALNames] fileutil.ReadDir failed: %w", err)
|
return nil, fmt.Errorf("[readWALNames] fileutil.ReadDir failed: %w", err)
|
||||||
}
|
}
|
||||||
wnames := checkWalNames(lg, names)
|
wnames := checkWALNames(lg, names)
|
||||||
if len(wnames) == 0 {
|
if len(wnames) == 0 {
|
||||||
return nil, ErrFileNotFound
|
return nil, ErrFileNotFound
|
||||||
}
|
}
|
||||||
return wnames, nil
|
return wnames, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func checkWalNames(lg *zap.Logger, names []string) []string {
|
func checkWALNames(lg *zap.Logger, names []string) []string {
|
||||||
wnames := make([]string, 0)
|
wnames := make([]string, 0)
|
||||||
for _, name := range names {
|
for _, name := range names {
|
||||||
if _, _, err := parseWALName(name); err != nil {
|
if _, _, err := parseWALName(name); err != nil {
|
||||||
|
@ -29,7 +29,7 @@ import (
|
|||||||
"go.etcd.io/raft/v3/raftpb"
|
"go.etcd.io/raft/v3/raftpb"
|
||||||
)
|
)
|
||||||
|
|
||||||
const ENV_VERIFY_VALUE_STORAGE_WAL verify.VerificationType = "storage_wal"
|
const envVerifyValueStorageWAL verify.VerificationType = "storage_wal"
|
||||||
|
|
||||||
type Config struct {
|
type Config struct {
|
||||||
// DataDir is a root directory where the data being verified are stored.
|
// DataDir is a root directory where the data being verified are stored.
|
||||||
@ -77,7 +77,7 @@ func Verify(cfg Config) (retErr error) {
|
|||||||
be := backend.NewDefaultBackend(lg, datadir.ToBackendFileName(cfg.DataDir))
|
be := backend.NewDefaultBackend(lg, datadir.ToBackendFileName(cfg.DataDir))
|
||||||
defer be.Close()
|
defer be.Close()
|
||||||
|
|
||||||
snapshot, hardstate, err := validateWal(cfg)
|
snapshot, hardstate, err := validateWAL(cfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -91,7 +91,7 @@ func Verify(cfg Config) (retErr error) {
|
|||||||
// VerifyIfEnabled performs verification according to ETCD_VERIFY env settings.
|
// VerifyIfEnabled performs verification according to ETCD_VERIFY env settings.
|
||||||
// See Verify for more information.
|
// See Verify for more information.
|
||||||
func VerifyIfEnabled(cfg Config) error {
|
func VerifyIfEnabled(cfg Config) error {
|
||||||
if verify.IsVerificationEnabled(ENV_VERIFY_VALUE_STORAGE_WAL) {
|
if verify.IsVerificationEnabled(envVerifyValueStorageWAL) {
|
||||||
return Verify(cfg)
|
return Verify(cfg)
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
@ -131,7 +131,7 @@ func validateConsistentIndex(cfg Config, hardstate *raftpb.HardState, snapshot *
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func validateWal(cfg Config) (*walpb.Snapshot, *raftpb.HardState, error) {
|
func validateWAL(cfg Config) (*walpb.Snapshot, *raftpb.HardState, error) {
|
||||||
walDir := datadir.ToWalDir(cfg.DataDir)
|
walDir := datadir.ToWalDir(cfg.DataDir)
|
||||||
|
|
||||||
walSnaps, err := wal2.ValidSnapshotEntries(cfg.Logger, walDir)
|
walSnaps, err := wal2.ValidSnapshotEntries(cfg.Logger, walDir)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user