Skip to content

Commit f3e9427

Browse files
authored
Merge pull request #41 from elandau/bugfix/bad_precondition
Fix bad precondition check
2 parents a6d5674 + 222c988 commit f3e9427

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

concurrency-limits-core/src/main/java/com/netflix/concurrency/limits/limiter/DefaultLimiter.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ public Builder limit(Limit limit) {
8383
}
8484

8585
public Builder minWindowTime(long minWindowTime, TimeUnit units) {
86-
Preconditions.checkArgument(minWindowTime >= units.toMillis(100), "minWindowTime must be >= 100 ms");
86+
Preconditions.checkArgument(units.toMillis(minWindowTime) >= 100, "minWindowTime must be >= 100 ms");
8787
this.minWindowTime = units.toNanos(minWindowTime);
8888
return this;
8989
}
@@ -130,14 +130,13 @@ private DefaultLimiter(Builder builder, Strategy<ContextT> strategy) {
130130

131131
@Override
132132
public Optional<Listener> acquire(final ContextT context) {
133-
final long startTime = nanoClock.get();
134-
135133
// Did we exceed the limit
136134
final Token token = strategy.tryAcquire(context);
137135
if (!token.isAcquired()) {
138136
return Optional.empty();
139137
}
140138

139+
final long startTime = nanoClock.get();
141140
int currentMaxInFlight = inFlight.incrementAndGet();
142141

143142
return Optional.of(new Listener() {

concurrency-limits-core/src/main/java/com/netflix/concurrency/limits/limiter/ImmutableSample.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package com.netflix.concurrency.limits.limiter;
22

3+
import java.util.concurrent.TimeUnit;
4+
35
import com.netflix.concurrency.limits.Limit;
46

57
/**
@@ -56,4 +58,12 @@ public int getSampleCount() {
5658
public boolean didDrop() {
5759
return didDrop;
5860
}
61+
62+
@Override
63+
public String toString() {
64+
return "ImmutableSample [minRtt=" + TimeUnit.NANOSECONDS.toMillis(minRtt)
65+
+ ", maxInFlight=" + maxInFlight
66+
+ ", sampleCount=" + sampleCount
67+
+ ", didDrop=" + didDrop + "]";
68+
}
5969
}

0 commit comments

Comments
 (0)