This is an automated email from the ASF dual-hosted git repository.
gjacoby pushed a commit to branch 5.1
in repository https://gitbox.apache.org/repos/asf/phoenix.git
The following commit(s) were added to refs/heads/5.1 by this push:
new 0a6c28ff2d PHOENIX-6530 - changed the tenant id generation for uniform
distribution load generator (#1453)
0a6c28ff2d is described below
commit 0a6c28ff2dc9b81d1cbb40cac66beb51597c21e6
Author: thrylokya <[email protected]>
AuthorDate: Wed Jun 22 20:27:07 2022 +0530
PHOENIX-6530 - changed the tenant id generation for uniform distribution
load generator (#1453)
Co-authored-by: Thrylokya Geereddy <[email protected]>
---
.../UniformDistributionLoadEventGenerator.java | 19 +++++++++++++++----
1 file changed, 15 insertions(+), 4 deletions(-)
diff --git
a/phoenix-pherf/src/main/java/org/apache/phoenix/pherf/workload/mt/generators/UniformDistributionLoadEventGenerator.java
b/phoenix-pherf/src/main/java/org/apache/phoenix/pherf/workload/mt/generators/UniformDistributionLoadEventGenerator.java
index 15ccbb4e80..3dac8bb3c5 100644
---
a/phoenix-pherf/src/main/java/org/apache/phoenix/pherf/workload/mt/generators/UniformDistributionLoadEventGenerator.java
+++
b/phoenix-pherf/src/main/java/org/apache/phoenix/pherf/workload/mt/generators/UniformDistributionLoadEventGenerator.java
@@ -37,6 +37,10 @@ import java.util.Random;
public class UniformDistributionLoadEventGenerator extends
BaseLoadEventGenerator {
private static class UniformDistributionSampler {
+
+ private final Random RANDOM = new Random();
+
+
private final LoadProfile loadProfile;
private final String modelName;
private final String scenarioName;
@@ -47,7 +51,7 @@ public class UniformDistributionLoadEventGenerator extends
BaseLoadEventGenerato
private final List<Operation> operationList;
public UniformDistributionSampler(List<Operation> operationList,
DataModel model,
- Scenario scenario) {
+ Scenario scenario) {
this.modelName = model.getName();
this.scenarioName = scenario.getName();
this.tableName = scenario.getTableName();
@@ -72,12 +76,19 @@ public class UniformDistributionLoadEventGenerator extends
BaseLoadEventGenerato
public TenantOperationInfo nextSample() {
int sampleIndex = this.distribution.nextInt(operationList.size());
Operation op = operationList.get(sampleIndex);
+ int numTenants = 1;
+
+ if(tenantGroup.getNumTenants() != 0){
+ numTenants = tenantGroup.getNumTenants();
+ }
String tenantGroupId = tenantGroup.getId();
String tenantIdPrefix = Strings
.padStart(tenantGroupId, loadProfile.getGroupIdLength(),
'x');
+
String formattedTenantId =
String.format(loadProfile.getTenantIdFormat(),
- tenantIdPrefix.substring(0,
loadProfile.getGroupIdLength()), 1);
+ tenantIdPrefix.substring(0,
loadProfile.getGroupIdLength()), RANDOM.nextInt(numTenants));
+
String paddedTenantId = Strings.padStart(formattedTenantId,
loadProfile.getTenantIdLength(), 'x');
String tenantId = paddedTenantId.substring(0,
loadProfile.getTenantIdLength());
@@ -91,13 +102,13 @@ public class UniformDistributionLoadEventGenerator extends
BaseLoadEventGenerato
public UniformDistributionLoadEventGenerator(PhoenixUtil phoenixUtil,
DataModel model, Scenario scenario,
- Properties properties) {
+ Properties properties) {
super(phoenixUtil, model, scenario, properties);
this.sampler = new
UniformDistributionSampler(operationFactory.getOperations(), model, scenario);
}
public UniformDistributionLoadEventGenerator(PhoenixUtil phoenixUtil,
DataModel model, Scenario scenario,
- List<PherfWorkHandler> workHandlers, Properties properties) {
+ List<PherfWorkHandler>
workHandlers, Properties properties) {
super(phoenixUtil, model, scenario, workHandlers, properties);
this.sampler = new
UniformDistributionSampler(operationFactory.getOperations(), model, scenario);
}