From d1f856b7e21b543aaccd701942bc8bc4efc96912 Mon Sep 17 00:00:00 2001
From: Gaetan Boismal <gaetan.boismal@forgerock.com>
Date: Mon, 08 Feb 2016 09:45:01 +0000
Subject: [PATCH] OPENDJSDK-81 Remove asynchronous option in rate tools
---
opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/PerformanceRunnerOptions.java | 11 -----
opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/PerformanceRunner.java | 54 ++++++++-------------------
opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/StatsThread.java | 20 ---------
opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/AuthRate.java | 1
opendj-sdk/opendj-ldap-toolkit/src/main/resources/com/forgerock/opendj/ldap/tools/tools.properties | 1
5 files changed, 18 insertions(+), 69 deletions(-)
diff --git a/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/AuthRate.java b/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/AuthRate.java
index 582873e..881e5d3 100644
--- a/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/AuthRate.java
+++ b/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/AuthRate.java
@@ -406,7 +406,6 @@
setDefaultPerfToolProperties();
PerformanceRunnerOptions options = new PerformanceRunnerOptions(argParser, this);
options.setSupportsRebind(false);
- options.setSupportsAsynchronousRequests(false);
options.setSupportsMultipleThreadsPerConnection(false);
connectionFactoryProvider = new ConnectionFactoryProvider(argParser, this);
diff --git a/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/PerformanceRunner.java b/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/PerformanceRunner.java
index 0e5ed7c..fb7da7f 100644
--- a/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/PerformanceRunner.java
+++ b/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/PerformanceRunner.java
@@ -157,25 +157,24 @@
long startTimeNs = System.nanoTime();
promise = performOperation(connection, dataSources.get(), startTimeNs);
statsThread.incrementOperationCount();
- if (!isAsync) {
- try {
- promise.getOrThrow();
- } catch (final InterruptedException e) {
- // Ignore and check stop requested
- continue;
- } catch (final LdapException e) {
- if (!stopRequested && e.getCause() instanceof IOException) {
- e.getCause().printStackTrace(app.getErrorStream());
- stopTool(true);
- break;
- }
- // Ignore. Handled by result handler
- } finally {
- if (this.connection == null) {
- connection.close();
- }
+ try {
+ promise.getOrThrow();
+ } catch (final InterruptedException e) {
+ // Ignore and check stop requested
+ continue;
+ } catch (final LdapException e) {
+ if (!stopRequested && e.getCause() instanceof IOException) {
+ e.getCause().printStackTrace(app.getErrorStream());
+ stopTool(true);
+ break;
+ }
+ // Ignore. Handled by result handler
+ } finally {
+ if (this.connection == null) {
+ connection.close();
}
}
+
if (targetThroughput > 0) {
try {
if (sleepTimeMs > 1) {
@@ -241,7 +240,6 @@
private long warmUpDurationMs;
/** Max duration time in ms, 0 for unlimited. **/
private long maxDurationTimeMs;
- private boolean isAsync;
private boolean noRebind;
private BindRequest bindRequest;
private int statsIntervalMs;
@@ -253,7 +251,6 @@
private final IntegerArgument percentilesArgument;
private final BooleanArgument keepConnectionsOpen;
private final BooleanArgument noRebindArgument;
- private final BooleanArgument asyncArgument;
private final StringArgument arguments;
protected final IntegerArgument maxIterationsArgument;
protected final IntegerArgument warmUpArgument;
@@ -339,15 +336,6 @@
argParser.addArgument(noRebindArgument);
}
- asyncArgument =
- new BooleanArgument("asynchronous", 'A', "asynchronous", LocalizableMessage
- .raw("Use asynchronous mode and do not "
- + "wait for results before sending the next request"));
- asyncArgument.setPropertyName("asynchronous");
- if (options.supportsAsynchronousRequests()) {
- argParser.addArgument(asyncArgument);
- }
-
arguments =
new StringArgument(
"argument",
@@ -402,7 +390,6 @@
statsIntervalMs = statsIntervalArgument.getIntValue() * 1000;
targetThroughput = targetThroughputArgument.getIntValue();
- isAsync = asyncArgument.isPresent();
noRebind = noRebindArgument.isPresent();
if (!noRebindArgument.isPresent() && this.numThreads > 1) {
@@ -410,11 +397,6 @@
"--" + noRebindArgument.getLongIdentifier(), "--" + numThreadsArgument.getLongIdentifier(), "> 1"));
}
- if (!noRebindArgument.isPresent() && asyncArgument.isPresent()) {
- throw new ArgumentException(ERR_TOOL_ARG_NEEDED_WHEN_USING_ARG.get(
- "--" + noRebindArgument.getLongIdentifier(), asyncArgument.getLongIdentifier()));
- }
-
if (maxIterationsArgument.isPresent() && maxIterations <= 0) {
throw new ArgumentException(ERR_TOOL_NOT_ENOUGH_ITERATIONS.get(
"--" + maxIterationsArgument.getLongIdentifier(), numConnections * numThreads,
@@ -505,10 +487,6 @@
}
}
- boolean isAsync() {
- return isAsync;
- }
-
double[] getPercentiles() {
if (percentilesArgument.isPresent()) {
double[] percentiles = new double[percentilesArgument.getValues().size()];
diff --git a/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/PerformanceRunnerOptions.java b/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/PerformanceRunnerOptions.java
index f4585de..2a796b2 100644
--- a/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/PerformanceRunnerOptions.java
+++ b/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/PerformanceRunnerOptions.java
@@ -21,7 +21,7 @@
* CDDL HEADER END
*
*
- * Portions Copyright 2014-2015 ForgeRock AS
+ * Portions Copyright 2014-2016 ForgeRock AS
*/
package com.forgerock.opendj.ldap.tools;
@@ -37,7 +37,6 @@
private ConsoleApplication app;
private boolean supportsRebind = true;
- private boolean supportAsynchronousRequests = true;
private boolean supportsMultipleThreadsPerConnection = true;
private boolean supportsGeneratorArgument = true;
@@ -54,14 +53,6 @@
this.supportsRebind = supportsRebind;
}
- boolean supportsAsynchronousRequests() {
- return supportAsynchronousRequests;
- }
-
- void setSupportsAsynchronousRequests(boolean supportAsynchronousRequests) {
- this.supportAsynchronousRequests = supportAsynchronousRequests;
- }
-
boolean supportsMultipleThreadsPerConnection() {
return supportsMultipleThreadsPerConnection;
}
diff --git a/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/StatsThread.java b/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/StatsThread.java
index 6d35ff8..885fdb6 100644
--- a/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/StatsThread.java
+++ b/opendj-sdk/opendj-ldap-toolkit/src/main/java/com/forgerock/opendj/ldap/tools/StatsThread.java
@@ -69,7 +69,6 @@
private static final String AVERAGE_RESPONSE_TIME_MS = STAT_ID_PREFIX + "average_response_time";
private static final String PERCENTILES = STAT_ID_PREFIX + "percentiles";
private static final String ERROR_PER_SECOND = STAT_ID_PREFIX + "error_per_second";
- private static final String REQUEST_PER_RESPONSE = STAT_ID_PREFIX + "request_per_response";
public static final double MS_IN_S = TimeUnit.SECONDS.toMillis(1);
public static final double NS_IN_MS = TimeUnit.MILLISECONDS.toNanos(1);
@@ -116,7 +115,7 @@
void printTitle() {
final int throughputRawSpan = 2;
final int responseTimeRawSpan = 2 + percentiles.length;
- final int additionalStatsRawSpan = 1 + (performanceRunner.isAsync() ? 1 : 0) + additionalColumns.size();
+ final int additionalStatsRawSpan = 1 + additionalColumns.size();
printer.printDashedLine();
printer.printTitleSection("Throughput", throughputRawSpan);
@@ -146,10 +145,6 @@
// Additional stats
columns.add(separatorColumn());
columns.add(column(ERROR_PER_SECOND, "err/sec", STANDARD_WIDTH, 1));
- if (performanceRunner.isAsync()) {
- columns.add(separatorColumn());
- columns.add(column(REQUEST_PER_RESPONSE, "req/res", 4, 1));
- }
additionalColumns = registerAdditionalColumns();
if (!additionalColumns.isEmpty()) {
columns.addAll(additionalColumns);
@@ -183,9 +178,6 @@
PERCENTILES + percentile, percentile + "% response time", 2));
}
columns.add(column(ERROR_PER_SECOND, "errors/second", 1));
- if (performanceRunner.isAsync()) {
- columns.add(column(REQUEST_PER_RESPONSE, "Requests/response", 1));
- }
columns.addAll(registerAdditionalColumns());
@@ -352,16 +344,6 @@
return Ratio.of(errorCount.getLastIntervalCount(), durationMsCount.getLastIntervalCount() / MS_IN_S);
}
});
-
- if (performanceRunner.isAsync()) {
- registry.register(REQUEST_PER_RESPONSE, new RatioGauge() {
- @Override
- protected Ratio getRatio() {
- return Ratio.of(operationCount.getLastIntervalCount(),
- successCount.getLastIntervalCount() + errorCount.getLastIntervalCount());
- }
- });
- }
registry.register(PERCENTILES, responseTimes);
}
diff --git a/opendj-sdk/opendj-ldap-toolkit/src/main/resources/com/forgerock/opendj/ldap/tools/tools.properties b/opendj-sdk/opendj-ldap-toolkit/src/main/resources/com/forgerock/opendj/ldap/tools/tools.properties
index e9c2edd..e5ab1a7 100755
--- a/opendj-sdk/opendj-ldap-toolkit/src/main/resources/com/forgerock/opendj/ldap/tools/tools.properties
+++ b/opendj-sdk/opendj-ldap-toolkit/src/main/resources/com/forgerock/opendj/ldap/tools/tools.properties
@@ -503,7 +503,6 @@
directory %s does not exist
ERR_TOOL_NOT_ENOUGH_ITERATIONS=%s argument must be greater than or equal to %s \
(%s per %s)
-ERR_TOOL_ARG_NEEDED_WHEN_USING_ARG=%s must be used when using %s
ERR_TOOL_ARG_MUST_BE_USED_WHEN_ARG_CONDITION=%s must be used if %s is %s
INFO_TOOL_WARMING_UP=Warming up for %d seconds...
ERR_AUTHRATE_NO_BIND_DN_PROVIDED=Authentication information must be provided \
--
Gitblit v1.10.0