mirror of
https://github.com/zalando/postgres-operator.git
synced 2026-09-30 21:09:30 +02:00
Merge pull request #240 from zalando-incubator/feature/goreport-improvements
Some improvements for golint, ineffassign and misspell
This commit is contained in:
@@ -5,11 +5,14 @@ import (
|
||||
"time"
|
||||
)
|
||||
|
||||
// RetryTicker is a wrapper aroung time.Tick,
|
||||
// that allows to mock its implementation
|
||||
type RetryTicker interface {
|
||||
Stop()
|
||||
Tick()
|
||||
}
|
||||
|
||||
// Ticker is a real implementation of RetryTicker interface
|
||||
type Ticker struct {
|
||||
ticker *time.Ticker
|
||||
}
|
||||
@@ -18,10 +21,7 @@ func (t *Ticker) Stop() { t.ticker.Stop() }
|
||||
|
||||
func (t *Ticker) Tick() { <-t.ticker.C }
|
||||
|
||||
// Retry calls ConditionFunc until either:
|
||||
// * it returns boolean true
|
||||
// * a timeout expires
|
||||
// * an error occurs
|
||||
// Retry is a wrapper around RetryWorker that provides a real RetryTicker
|
||||
func Retry(interval time.Duration, timeout time.Duration, f func() (bool, error)) error {
|
||||
//TODO: make the retry exponential
|
||||
if timeout < interval {
|
||||
@@ -31,6 +31,10 @@ func Retry(interval time.Duration, timeout time.Duration, f func() (bool, error)
|
||||
return RetryWorker(interval, timeout, tick, f)
|
||||
}
|
||||
|
||||
// RetryWorker calls ConditionFunc until either:
|
||||
// * it returns boolean true
|
||||
// * a timeout expires
|
||||
// * an error occurs
|
||||
func RetryWorker(
|
||||
interval time.Duration,
|
||||
timeout time.Duration,
|
||||
|
||||
@@ -13,7 +13,7 @@ type mockTicker struct {
|
||||
func (t *mockTicker) Stop() {}
|
||||
|
||||
func (t *mockTicker) Tick() {
|
||||
t.counter += 1
|
||||
t.counter++
|
||||
}
|
||||
|
||||
func TestRetryWorkerSuccess(t *testing.T) {
|
||||
@@ -36,13 +36,8 @@ func TestRetryWorkerOneFalse(t *testing.T) {
|
||||
|
||||
tick := &mockTicker{t, 0}
|
||||
result := RetryWorker(1, 3, tick, func() (bool, error) {
|
||||
counter += 1
|
||||
|
||||
if counter <= 1 {
|
||||
return false, nil
|
||||
} else {
|
||||
return true, nil
|
||||
}
|
||||
counter++
|
||||
return counter > 1, nil
|
||||
})
|
||||
|
||||
if result != nil {
|
||||
|
||||
@@ -29,7 +29,7 @@ type DefaultUserSyncStrategy struct {
|
||||
}
|
||||
|
||||
// ProduceSyncRequests figures out the types of changes that need to happen with the given users.
|
||||
func (s DefaultUserSyncStrategy) ProduceSyncRequests(dbUsers spec.PgUserMap,
|
||||
func (strategy DefaultUserSyncStrategy) ProduceSyncRequests(dbUsers spec.PgUserMap,
|
||||
newUsers spec.PgUserMap) (reqs []spec.PgSyncUserRequest) {
|
||||
|
||||
// No existing roles are deleted or stripped of role memebership/flags
|
||||
@@ -70,19 +70,19 @@ func (s DefaultUserSyncStrategy) ProduceSyncRequests(dbUsers spec.PgUserMap,
|
||||
}
|
||||
|
||||
// ExecuteSyncRequests makes actual database changes from the requests passed in its arguments.
|
||||
func (s DefaultUserSyncStrategy) ExecuteSyncRequests(reqs []spec.PgSyncUserRequest, db *sql.DB) error {
|
||||
func (strategy DefaultUserSyncStrategy) ExecuteSyncRequests(reqs []spec.PgSyncUserRequest, db *sql.DB) error {
|
||||
for _, r := range reqs {
|
||||
switch r.Kind {
|
||||
case spec.PGSyncUserAdd:
|
||||
if err := s.createPgUser(r.User, db); err != nil {
|
||||
if err := strategy.createPgUser(r.User, db); err != nil {
|
||||
return fmt.Errorf("could not create user %q: %v", r.User.Name, err)
|
||||
}
|
||||
case spec.PGsyncUserAlter:
|
||||
if err := s.alterPgUser(r.User, db); err != nil {
|
||||
if err := strategy.alterPgUser(r.User, db); err != nil {
|
||||
return fmt.Errorf("could not alter user %q: %v", r.User.Name, err)
|
||||
}
|
||||
case spec.PGSyncAlterSet:
|
||||
if err := s.alterPgUserSet(r.User, db); err != nil {
|
||||
if err := strategy.alterPgUserSet(r.User, db); err != nil {
|
||||
return fmt.Errorf("could not set custom user %q parameters: %v", r.User.Name, err)
|
||||
}
|
||||
default:
|
||||
@@ -102,7 +102,7 @@ func (strategy DefaultUserSyncStrategy) alterPgUserSet(user spec.PgUser, db *sql
|
||||
return
|
||||
}
|
||||
|
||||
func (s DefaultUserSyncStrategy) createPgUser(user spec.PgUser, db *sql.DB) (err error) {
|
||||
func (strategy DefaultUserSyncStrategy) createPgUser(user spec.PgUser, db *sql.DB) (err error) {
|
||||
var userFlags []string
|
||||
var userPassword string
|
||||
|
||||
@@ -129,7 +129,7 @@ func (s DefaultUserSyncStrategy) createPgUser(user spec.PgUser, db *sql.DB) (err
|
||||
return
|
||||
}
|
||||
|
||||
func (s DefaultUserSyncStrategy) alterPgUser(user spec.PgUser, db *sql.DB) (err error) {
|
||||
func (strategy DefaultUserSyncStrategy) alterPgUser(user spec.PgUser, db *sql.DB) (err error) {
|
||||
var resultStmt []string
|
||||
|
||||
if user.Password != "" || len(user.Flags) > 0 {
|
||||
@@ -206,9 +206,9 @@ func quoteParameterValue(name, val string) string {
|
||||
// in the schema name would break the parsing code in the operator.)
|
||||
if start == '\'' && end == '\'' {
|
||||
return fmt.Sprintf("%s", val[1:len(val)-1])
|
||||
} else {
|
||||
return val
|
||||
}
|
||||
|
||||
return val
|
||||
}
|
||||
if (start == '"' && end == '"') || (start == '\'' && end == '\'') {
|
||||
return val
|
||||
|
||||
Reference in New Issue
Block a user