Skip to content

Commit 4d0905a

Browse files
authored
PHOENIX-7740 Update JAXB to 2.3.9 in Pherf and fix XML object collection initialization (#2327)
1 parent 1d684a9 commit 4d0905a

File tree

9 files changed

+36
-20
lines changed

9 files changed

+36
-20
lines changed

phoenix-pherf/pom.xml

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@
3636
<jcabi-jdbc.version>0.15</jcabi-jdbc.version>
3737
<system-rules.version>1.8.0</system-rules.version>
3838
<stax.version>1.0.1</stax.version>
39-
<jaxb.version>2.2.11</jaxb.version>
39+
<jaxb-api.version>2.3.1</jaxb-api.version>
40+
<jaxb-impl.version>2.3.9</jaxb-impl.version>
4041
<!-- JaCoCo thresholds overriden for phoenix-pherf -->
4142
<jacoco.instruction.coverage.percentage>0.650</jacoco.instruction.coverage.percentage>
4243
<jacoco.branch.coverage.percentage>0.500</jacoco.branch.coverage.percentage>
@@ -67,12 +68,18 @@
6768
<dependency>
6869
<groupId>javax.xml.bind</groupId>
6970
<artifactId>jaxb-api</artifactId>
70-
<version>${jaxb.version}</version>
71+
<version>${jaxb-api.version}</version>
7172
</dependency>
7273
<dependency>
7374
<groupId>org.glassfish.jaxb</groupId>
7475
<artifactId>jaxb-runtime</artifactId>
75-
<version>${jaxb.version}</version>
76+
<version>${jaxb-impl.version}</version>
77+
</dependency>
78+
<!-- Same as above, but we get both from transitive dependencies -->
79+
<dependency>
80+
<groupId>com.sun.xml.bind</groupId>
81+
<artifactId>jaxb-impl</artifactId>
82+
<version>${jaxb-impl.version}</version>
7683
</dependency>
7784
<dependency>
7885
<groupId>com.jcabi</groupId>
@@ -252,6 +259,11 @@
252259
<groupId>javax.xml.bind</groupId>
253260
<artifactId>jaxb-api</artifactId>
254261
</dependency>
262+
<dependency>
263+
<groupId>org.glassfish.jaxb</groupId>
264+
<artifactId>jaxb-runtime</artifactId>
265+
<scope>runtime</scope>
266+
</dependency>
255267
</dependencies>
256268

257269
<build>
@@ -294,7 +306,7 @@
294306
<ignoredUnusedDeclaredDependency>org.apache.hbase.thirdparty:hbase-shaded-miscellaneous</ignoredUnusedDeclaredDependency>
295307
<ignoredUnusedDeclaredDependency>javax.activation:activation</ignoredUnusedDeclaredDependency>
296308
<ignoredUnusedDeclaredDependency>javax.xml.bind:jaxb-api</ignoredUnusedDeclaredDependency>
297-
<ignoredUnusedDeclaredDependency>org.glassfish.jaxb:jax-runtime</ignoredUnusedDeclaredDependency>
309+
<ignoredUnusedDeclaredDependency>org.glassfish.jaxb:jaxb-runtime</ignoredUnusedDeclaredDependency>
298310
<ignoredUnusedDeclaredDependency>org.apache.hbase:hbase-it</ignoredUnusedDeclaredDependency>
299311
<ignoredUnusedDeclaredDependency>org.apache.phoenix:phoenix-hbase-compat-${hbase.compat.version}</ignoredUnusedDeclaredDependency>
300312
<ignoredUnusedDeclaredDependency>org.apache.hbase:hbase-testing-util</ignoredUnusedDeclaredDependency>

phoenix-pherf/src/main/java/org/apache/phoenix/pherf/configuration/Column.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
*/
1818
package org.apache.phoenix.pherf.configuration;
1919

20+
import java.util.ArrayList;
2021
import java.util.List;
2122
import java.util.Objects;
2223
import javax.xml.bind.annotation.XmlElement;
@@ -31,7 +32,7 @@ public class Column {
3132
private long minValue, maxValue;
3233
private int nullChance;
3334
private boolean userDefined;
34-
private List<DataValue> dataValues;
35+
private List<DataValue> dataValues = new ArrayList<>();
3536
private DataTypeMapping type;
3637
private boolean useCurrentDate;
3738

phoenix-pherf/src/main/java/org/apache/phoenix/pherf/configuration/DataModel.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
*/
1818
package org.apache.phoenix.pherf.configuration;
1919

20+
import java.util.ArrayList;
2021
import java.util.List;
2122
import javax.xml.bind.annotation.XmlAttribute;
2223
import javax.xml.bind.annotation.XmlElement;
@@ -26,8 +27,8 @@
2627
@XmlRootElement(name = "datamodel")
2728
public class DataModel {
2829
private String name;
29-
private List<Scenario> scenarios;
30-
private List<Column> dataMappingColumns;
30+
private List<Scenario> scenarios = new ArrayList<>();
31+
private List<Column> dataMappingColumns = new ArrayList<>();
3132

3233
public DataModel() {
3334
}

phoenix-pherf/src/main/java/org/apache/phoenix/pherf/configuration/DataOverride.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,13 @@
1717
*/
1818
package org.apache.phoenix.pherf.configuration;
1919

20+
import java.util.ArrayList;
2021
import java.util.List;
2122
import javax.xml.bind.annotation.XmlType;
2223

2324
@XmlType
2425
public class DataOverride {
25-
private List<Column> column;
26+
private List<Column> column = new ArrayList<>();
2627

2728
public List<Column> getColumn() {
2829
return column;

phoenix-pherf/src/main/java/org/apache/phoenix/pherf/configuration/LoadProfile.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
*/
1818
package org.apache.phoenix.pherf.configuration;
1919

20+
import java.util.ArrayList;
2021
import java.util.List;
2122
import javax.xml.bind.annotation.XmlType;
2223

@@ -44,9 +45,9 @@ public class LoadProfile {
4445
private int groupIdLength;
4546
private int tenantIdLength;
4647
// Holds the desired tenant distribution for this load.
47-
private List<TenantGroup> tenantDistribution;
48+
private List<TenantGroup> tenantDistribution = new ArrayList<>();
4849
// Holds the desired operation distribution for this load.
49-
private List<OperationGroup> opDistribution;
50+
private List<OperationGroup> opDistribution = new ArrayList<>();
5051

5152
public LoadProfile() {
5253
this.batchSize = MIN_BATCH_SIZE;

phoenix-pherf/src/main/java/org/apache/phoenix/pherf/configuration/Scenario.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
package org.apache.phoenix.pherf.configuration;
1919

2020
import java.util.ArrayList;
21+
import java.util.HashMap;
2122
import java.util.List;
2223
import java.util.Map;
2324
import javax.xml.bind.annotation.XmlAttribute;
@@ -33,7 +34,7 @@
3334
public class Scenario {
3435
private String tableName;
3536
private int rowCount;
36-
private Map<String, String> phoenixProperties;
37+
private Map<String, String> phoenixProperties = new HashMap<>();
3738
private WriteParams writeParams = null;
3839
private DataOverride dataOverride;
3940
private List<QuerySet> querySet = new ArrayList<>();
@@ -45,8 +46,8 @@ public class Scenario {
4546
private String name;
4647
private String generatorName;
4748
private String tenantId;
48-
private List<Ddl> preScenarioDdls;
49-
private List<Ddl> postScenarioDdls;
49+
private List<Ddl> preScenarioDdls = new ArrayList<>();
50+
private List<Ddl> postScenarioDdls = new ArrayList<>();
5051

5152
public Scenario() {
5253
}

phoenix-pherf/src/main/java/org/apache/phoenix/pherf/configuration/Upsert.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,20 +17,19 @@
1717
*/
1818
package org.apache.phoenix.pherf.configuration;
1919

20+
import java.util.ArrayList;
2021
import java.util.List;
2122
import java.util.regex.Matcher;
2223
import java.util.regex.Pattern;
2324
import javax.xml.bind.annotation.XmlAttribute;
2425
import org.apache.phoenix.pherf.rules.RulesApplier;
2526

26-
import org.apache.phoenix.thirdparty.com.google.common.collect.Lists;
27-
2827
public class Upsert {
2928

3029
private String id;
3130
private String upsertGroup;
3231
private String statement;
33-
private List<Column> column;
32+
private List<Column> column = new ArrayList<>();
3433
private boolean useGlobalConnection;
3534
private Pattern pattern;
3635
private long timeoutDuration = Long.MAX_VALUE;
@@ -84,7 +83,6 @@ public void setId(String id) {
8483
}
8584

8685
public List<Column> getColumn() {
87-
if (column == null) return Lists.newArrayList();
8886
return column;
8987
}
9088

phoenix-pherf/src/main/java/org/apache/phoenix/pherf/configuration/UserDefined.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
*/
1818
package org.apache.phoenix.pherf.configuration;
1919

20+
import java.util.ArrayList;
2021
import java.util.List;
2122
import javax.xml.bind.annotation.XmlAttribute;
2223
import javax.xml.bind.annotation.XmlType;
@@ -25,7 +26,7 @@
2526
public class UserDefined {
2627
String id;
2728
String clazzName;
28-
List<String> args;
29+
List<String> args = new ArrayList<>();
2930

3031
@XmlAttribute
3132
public String getId() {

phoenix-pherf/src/main/java/org/apache/phoenix/pherf/configuration/XMLConfigParser.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,9 @@ public class XMLConfigParser {
4343
private static final Logger LOGGER = LoggerFactory.getLogger(XMLConfigParser.class);
4444
private String filePattern;
4545
private List<DataModel> dataModels;
46-
private List<Scenario> scenarios = null;
46+
private List<Scenario> scenarios;
4747
private ResourceList resourceList;
48-
private Collection<Path> paths = null;
48+
private Collection<Path> paths;
4949

5050
public XMLConfigParser(String pattern) throws Exception {
5151
init(pattern);

0 commit comments

Comments
 (0)