From fc1f0af6435e6aacab0d4e2264e0ff178ad8bece Mon Sep 17 00:00:00 2001 From: Brian Kassouf Date: Mon, 15 Oct 2018 14:06:45 -0700 Subject: [PATCH] Port some changes (#5518) --- physical/error.go | 2 +- physical/latency.go | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/physical/error.go b/physical/error.go index cf206b1150..d4c6f80e11 100644 --- a/physical/error.go +++ b/physical/error.go @@ -35,7 +35,7 @@ var _ Transactional = (*TransactionalErrorInjector)(nil) // NewErrorInjector returns a wrapped physical backend to inject error func NewErrorInjector(b Backend, errorPercent int, logger log.Logger) *ErrorInjector { if errorPercent < 0 || errorPercent > 100 { - errorPercent = DefaultJitterPercent + errorPercent = DefaultErrorPercent } logger.Info("creating error injector") diff --git a/physical/latency.go b/physical/latency.go index 7aa9fab985..188297142e 100644 --- a/physical/latency.go +++ b/physical/latency.go @@ -57,9 +57,12 @@ func NewTransactionalLatencyInjector(b Backend, latency time.Duration, jitter in func (l *LatencyInjector) addLatency() { // Calculate a value between 1 +- jitter% - min := 100 - l.jitterPercent - max := 100 + l.jitterPercent - percent := l.random.Intn(max-min) + min + percent := 100 + if l.jitterPercent > 0 { + min := 100 - l.jitterPercent + max := 100 + l.jitterPercent + percent = l.random.Intn(max-min) + min + } latencyDuration := time.Duration(int(l.latency) * percent / 100) time.Sleep(latencyDuration) }