Commit e4d9aa15 authored by Daniel Seybold's avatar Daniel Seybold

several bugfixes for plotting and TPC-C workload

parent 840d8673
Pipeline #74055 passed with stage
in 14 minutes and 28 seconds
# Colosseum # Colosseum
#colosseumUri=http://134.60.152.90:9000/api #colosseumUri=http://134.60.152.90:9000/api
colosseumUri=http://134.60.244.56:9000/api colosseumUri=http://134.60.153.38:9000/api
# Application Catalogue # Application Catalogue
#applicationCatalogue=http://localhost:9091/v1 #applicationCatalogue=http://localhost:9091/v1
applicationCatalogue=http://134.60.244.56:9091/v1 applicationCatalogue=http://134.60.153.38:9091/v1
# Workload-API # Workload-API
#workloadApi=http://134.60.47.80:8181/v1 #workloadApi=http://134.60.47.80:8181/v1
#workloadApi=http://localhost:8181/v1 #workloadApi=http://localhost:8181/v1
workloadApi=http://134.60.64.88:8181/v1 workloadApi=http://134.60.64.144:8181/v1
# InfluxDB # InfluxDB
influxDbUrl=http://134.60.244.56:8086 influxDbUrl=http://134.60.153.38:8086
influxDbDatabase=telegraf influxDbDatabase=telegraf
#influxDbUser=carlos #influxDbUser=carlos
......
matplotlib matplotlib
numpy numpy
pandas pandas
influxdb influxdb
\ No newline at end of file seaborn
\ No newline at end of file
...@@ -61,15 +61,15 @@ public class ScalabilityTPCCScenario extends EvaluationScenario { ...@@ -61,15 +61,15 @@ public class ScalabilityTPCCScenario extends EvaluationScenario {
CheckDeployment checkDeployment = new CheckDeployment(this.evaluationContext, this.dbmsClusterContext); CheckDeployment checkDeployment = new CheckDeployment(this.evaluationContext, this.dbmsClusterContext);
CheckWorkload checkWorkload = new CheckWorkload(this.evaluationContext, this.workloadPhaseContext,null); CheckWorkload checkWorkload = new CheckWorkload(this.evaluationContext, this.workloadPhaseContext,this.scenarioSpec.getWorkloadInstances());
FetchTpcCResult fetchTpcCResult = new FetchTpcCResult(this.evaluationContext); FetchTpcCResult fetchTpcCResult = new FetchTpcCResult(this.evaluationContext, this.scenarioSpec.getWorkloadInstances());
CleanUpResources cleanUpResources = new CleanUpResources(this.evaluationContext, this.dbmsClusterContext, this.cleanUp); CleanUpResources cleanUpResources = new CleanUpResources(this.evaluationContext, this.dbmsClusterContext, this.cleanUp);
TpcCWorkload tpccWorkload = new TpcCWorkload(this.evaluationContext, this.dbmsClusterContext, TpcCWorkload tpccWorkload = new TpcCWorkload(this.evaluationContext, this.dbmsClusterContext,
this.scenarioSpec.getWorkload(), this.scenarioSpec.getWorkloadNetwork(), this.workloadPhaseContext); this.scenarioSpec.getWorkload(), this.scenarioSpec.getWorkloadNetwork(), this.workloadPhaseContext, this.scenarioSpec.getWorkloadInstances());
CleanUpRun cleanUpRun = new CleanUpRun(this.evaluationContext, dbmsClusterContext); CleanUpRun cleanUpRun = new CleanUpRun(this.evaluationContext, dbmsClusterContext);
......
...@@ -7,6 +7,7 @@ import de.uulm.omi.dbms.workload.client.ApiException; ...@@ -7,6 +7,7 @@ import de.uulm.omi.dbms.workload.client.ApiException;
import de.uulm.omi.utils.WorkloadApiClientHelper; import de.uulm.omi.utils.WorkloadApiClientHelper;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.util.List;
import org.jeasy.flows.work.DefaultWorkReport; import org.jeasy.flows.work.DefaultWorkReport;
import org.jeasy.flows.work.WorkReport; import org.jeasy.flows.work.WorkReport;
import org.jeasy.flows.work.WorkStatus; import org.jeasy.flows.work.WorkStatus;
...@@ -16,15 +17,19 @@ import org.jeasy.flows.work.WorkStatus; ...@@ -16,15 +17,19 @@ import org.jeasy.flows.work.WorkStatus;
*/ */
public class FetchTpcCResult extends EvaluationTask { public class FetchTpcCResult extends EvaluationTask {
public FetchTpcCResult(EvaluationContext evaluationContext) { private final List<String> workloadInstances;
public FetchTpcCResult(EvaluationContext evaluationContext, List<String> workloadInstances) {
super(TaskType.FETCH_WORKLOAD, evaluationContext); super(TaskType.FETCH_WORKLOAD, evaluationContext);
this.workloadInstances = workloadInstances;
} }
@Override @Override
public WorkReport call() { public WorkReport call() {
DefaultApi apiInstance = WorkloadApiClientHelper.getWorkloadClients(null).get(0); DefaultApi apiInstance = WorkloadApiClientHelper.getWorkloadClients(workloadInstances).get(0);
String loggerPrefix= "RUN " + this.evaluationContext.getRunCounter().intValue() +": "; String loggerPrefix= "RUN " + this.evaluationContext.getRunCounter().intValue() +": ";
......
...@@ -14,6 +14,7 @@ import de.uulm.omi.utils.ColosseumUtils; ...@@ -14,6 +14,7 @@ import de.uulm.omi.utils.ColosseumUtils;
import de.uulm.omi.utils.DBMSNodeType; import de.uulm.omi.utils.DBMSNodeType;
import de.uulm.omi.utils.WorkloadApiClientHelper; import de.uulm.omi.utils.WorkloadApiClientHelper;
import java.io.File; import java.io.File;
import java.util.List;
import org.jeasy.flows.work.DefaultWorkReport; import org.jeasy.flows.work.DefaultWorkReport;
import org.jeasy.flows.work.WorkReport; import org.jeasy.flows.work.WorkReport;
import org.jeasy.flows.work.WorkStatus; import org.jeasy.flows.work.WorkStatus;
...@@ -27,16 +28,19 @@ public class TpcCWorkload extends EvaluationTask { ...@@ -27,16 +28,19 @@ public class TpcCWorkload extends EvaluationTask {
private final EvaluationNetwork network; private final EvaluationNetwork network;
private final ClusterContext clusterContext; private final ClusterContext clusterContext;
private final WorkloadPhaseContext workloadPhaseContext; private final WorkloadPhaseContext workloadPhaseContext;
private final List<String> workloadInstances;
private String loggerPrefix = ""; private String loggerPrefix = "";
public TpcCWorkload(EvaluationContext evaluationContext, ClusterContext clusterContext, public TpcCWorkload(EvaluationContext evaluationContext, ClusterContext clusterContext,
TPCCWorkload tpccWorkload, EvaluationNetwork network, WorkloadPhaseContext workloadPhaseContext) { TPCCWorkload tpccWorkload, EvaluationNetwork network, WorkloadPhaseContext workloadPhaseContext,
List<String> workloadInstances) {
super(TaskType.TPCC, evaluationContext); super(TaskType.TPCC, evaluationContext);
this.tpccWorkload = tpccWorkload; this.tpccWorkload = tpccWorkload;
this.network = network; this.network = network;
this.clusterContext = clusterContext; this.clusterContext = clusterContext;
this.workloadPhaseContext = workloadPhaseContext; this.workloadPhaseContext = workloadPhaseContext;
this.workloadInstances = workloadInstances;
} }
@Override @Override
...@@ -44,8 +48,12 @@ public class TpcCWorkload extends EvaluationTask { ...@@ -44,8 +48,12 @@ public class TpcCWorkload extends EvaluationTask {
this.loggerPrefix= "RUN " + this.evaluationContext.getRunCounter().intValue() +": "; this.loggerPrefix= "RUN " + this.evaluationContext.getRunCounter().intValue() +": ";
if(this.workloadInstances.size()>1){
LOGGER.warn(loggerPrefix + " Using more than one workloadInstance for the TPC-C workload is currently not supported! Just using the first one!");
}
//get workloadApi client //get workloadApi client
DefaultApi workloadClient = WorkloadApiClientHelper.getWorkloadClients(null).get(0); DefaultApi workloadClient = WorkloadApiClientHelper.getWorkloadClients(this.workloadInstances).get(0);
Long appInstanceId = Long.valueOf(this.clusterContext.getIdApplicationInstance()); Long appInstanceId = Long.valueOf(this.clusterContext.getIdApplicationInstance());
checkNotNull(appInstanceId); checkNotNull(appInstanceId);
......
...@@ -460,7 +460,7 @@ paths: ...@@ -460,7 +460,7 @@ paths:
schema: schema:
$ref: '#/definitions/EvaluationStatus' $ref: '#/definitions/EvaluationStatus'
'403': '403':
description: already ae evaluation running description: already an evaluation running
schema: schema:
$ref: '#/definitions/EvaluationSubmissionError' $ref: '#/definitions/EvaluationSubmissionError'
default: default:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment