etcd-tester: do not restart stresser on error

This commit is contained in:
Xiang Li 2016-08-27 20:47:45 -07:00
parent 0be190df4d
commit 017aac88a8

View File

@ -47,9 +47,11 @@ func (tt *tester) runLoop() {
roundTotalCounter.Inc() roundTotalCounter.Inc()
if ok, err := tt.doRound(round); !ok { if ok, err := tt.doRound(round); !ok {
if err != nil || tt.cleanup() != nil { if err != nil {
if tt.cleanup() != nil {
return return
} }
}
prevCompactRev = 0 // reset after clean up prevCompactRev = 0 // reset after clean up
continue continue
} }
@ -67,7 +69,7 @@ func (tt *tester) runLoop() {
plog.Printf("%s compacting %d entries (timeout %v)", tt.logPrefix(), compactN, timeout) plog.Printf("%s compacting %d entries (timeout %v)", tt.logPrefix(), compactN, timeout)
if err := tt.compact(revToCompact, timeout); err != nil { if err := tt.compact(revToCompact, timeout); err != nil {
plog.Warningf("%s functional-tester compact got error (%v)", tt.logPrefix(), err) plog.Warningf("%s functional-tester compact got error (%v)", tt.logPrefix(), err)
if err := tt.cleanup(); err != nil { if tt.cleanup() != nil {
return return
} }
prevCompactRev = 0 // reset after clean up prevCompactRev = 0 // reset after clean up
@ -145,9 +147,8 @@ func (tt *tester) updateRevision() error {
func (tt *tester) checkConsistency() (failed bool, err error) { func (tt *tester) checkConsistency() (failed bool, err error) {
tt.cancelStressers() tt.cancelStressers()
defer func() { defer func() {
serr := tt.startStressers()
if err == nil { if err == nil {
err = serr err = tt.startStressers()
} }
}() }()
@ -193,9 +194,8 @@ func (tt *tester) checkConsistency() (failed bool, err error) {
func (tt *tester) compact(rev int64, timeout time.Duration) (err error) { func (tt *tester) compact(rev int64, timeout time.Duration) (err error) {
tt.cancelStressers() tt.cancelStressers()
defer func() { defer func() {
serr := tt.startStressers()
if err == nil { if err == nil {
err = serr err = tt.startStressers()
} }
}() }()