mirror of
https://github.com/nosqlbench/nosqlbench.git
synced 2025-02-25 18:55:28 -06:00
Merge pull request #1520 from nosqlbench/nosqlbench-1518-resultsize
remove result size from base op
This commit is contained in:
commit
e321e5cc77
@ -54,8 +54,4 @@ public class MongoDirectCommandOp implements CycleOp<Document> {
|
|||||||
return document;
|
return document;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public long getResultSize() {
|
|
||||||
return resultSize;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -16,7 +16,6 @@
|
|||||||
|
|
||||||
package io.nosqlbench.adapters.api.activityimpl;
|
package io.nosqlbench.adapters.api.activityimpl;
|
||||||
|
|
||||||
import com.codahale.metrics.Histogram;
|
|
||||||
import com.codahale.metrics.Timer;
|
import com.codahale.metrics.Timer;
|
||||||
import groovy.lang.Binding;
|
import groovy.lang.Binding;
|
||||||
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
@ -59,7 +58,6 @@ public abstract class BaseOpDispenser<T extends Op, S> implements OpDispenser<T>
|
|||||||
protected final DriverAdapter<T, S> adapter;
|
protected final DriverAdapter<T, S> adapter;
|
||||||
private final NBLabels labels;
|
private final NBLabels labels;
|
||||||
private boolean instrument;
|
private boolean instrument;
|
||||||
private Histogram resultSizeHistogram;
|
|
||||||
private Timer successTimer;
|
private Timer successTimer;
|
||||||
private Timer errorTimer;
|
private Timer errorTimer;
|
||||||
private final String[] timerStarts;
|
private final String[] timerStarts;
|
||||||
@ -181,7 +179,6 @@ public abstract class BaseOpDispenser<T extends Op, S> implements OpDispenser<T>
|
|||||||
final int hdrDigits = pop.getStaticConfigOr("hdr_digits", 4).intValue();
|
final int hdrDigits = pop.getStaticConfigOr("hdr_digits", 4).intValue();
|
||||||
successTimer = ActivityMetrics.timer(pop, "success", hdrDigits);
|
successTimer = ActivityMetrics.timer(pop, "success", hdrDigits);
|
||||||
errorTimer = ActivityMetrics.timer(pop, "error", hdrDigits);
|
errorTimer = ActivityMetrics.timer(pop, "error", hdrDigits);
|
||||||
resultSizeHistogram = ActivityMetrics.histogram(pop, "resultset_size", hdrDigits);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -191,10 +188,9 @@ public abstract class BaseOpDispenser<T extends Op, S> implements OpDispenser<T>
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess(final long cycleValue, final long nanoTime, final long resultSize) {
|
public void onSuccess(final long cycleValue, final long nanoTime) {
|
||||||
if (this.instrument) {
|
if (this.instrument) {
|
||||||
this.successTimer.update(nanoTime, TimeUnit.NANOSECONDS);
|
this.successTimer.update(nanoTime, TimeUnit.NANOSECONDS);
|
||||||
if (-1 < resultSize) this.resultSizeHistogram.update(resultSize);
|
|
||||||
}
|
}
|
||||||
if (null != timerStops) ThreadLocalNamedTimers.TL_INSTANCE.get().stop(this.timerStops);
|
if (null != timerStops) ThreadLocalNamedTimers.TL_INSTANCE.get().stop(this.timerStops);
|
||||||
}
|
}
|
||||||
|
@ -18,6 +18,6 @@ package io.nosqlbench.adapters.api.activityimpl;
|
|||||||
|
|
||||||
public interface OpResultTracker {
|
public interface OpResultTracker {
|
||||||
void onStart(long cycleValue);
|
void onStart(long cycleValue);
|
||||||
void onSuccess(long cycleValue, long nanoTime, long resultsize);
|
void onSuccess(long cycleValue, long nanoTime);
|
||||||
void onError(long cycleValue, long resultNanos, Throwable t);
|
void onError(long cycleValue, long resultNanos, Throwable t);
|
||||||
}
|
}
|
||||||
|
@ -33,5 +33,5 @@ package io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes;
|
|||||||
* </p>
|
* </p>
|
||||||
*/
|
*/
|
||||||
// TODO: optimize the runtime around the specific op type
|
// TODO: optimize the runtime around the specific op type
|
||||||
public interface Op extends OpResultSize {
|
public interface Op {
|
||||||
}
|
}
|
||||||
|
@ -127,7 +127,7 @@ public class StandardAction<A extends StandardActivity<R, ?>, R extends Op> impl
|
|||||||
resultTimer.update(nanos, TimeUnit.NANOSECONDS);
|
resultTimer.update(nanos, TimeUnit.NANOSECONDS);
|
||||||
if (error == null) {
|
if (error == null) {
|
||||||
resultSuccessTimer.update(nanos, TimeUnit.NANOSECONDS);
|
resultSuccessTimer.update(nanos, TimeUnit.NANOSECONDS);
|
||||||
dispenser.onSuccess(cycle, nanos, op.getResultSize());
|
dispenser.onSuccess(cycle, nanos);
|
||||||
break;
|
break;
|
||||||
} else {
|
} else {
|
||||||
ErrorDetail detail = errorHandler.handleError(error, cycle, nanos);
|
ErrorDetail detail = errorHandler.handleError(error, cycle, nanos);
|
||||||
|
Loading…
Reference in New Issue
Block a user