Cristian Armaselu created PHOENIX-956:
-----------------------------------------
Summary: Connection properties ignored
Key: PHOENIX-956
URL: https://issues.apache.org/jira/browse/PHOENIX-956
Project: Phoenix
Issue Type: Bug
Affects Versions: 4.0.0
Environment: Win 7
Reporter: Cristian Armaselu
Connection opened as:
Properties connectionProperties = new Properties();
connectionProperties.setProperty(QueryServices.MAX_MUTATION_SIZE_ATTRIB,"10000000");
connectionProperties.setProperty(QueryServices.IMMUTABLE_ROWS_ATTRIB,"10000000");
connection =
DriverManager.getConnection("jdbc:phoenix:ulvdtlchd01:2181",connectionProperties);
Executing:
preparedStatement = connection.prepareStatement("upsert into
cristi_test(id,name,other) values(?,?,?)");
for (int i = 0; i < 10000000; i++) {
preparedStatement.setString(1, "AAAA" + i);
preparedStatement.setString(2, "BBBB" + i);
preparedStatement.setString(3, "cccc" + i);
preparedStatement.execute();
}
Getting:
java.lang.IllegalArgumentException: MutationState size of 500001 is bigger than
max allowed size of 500000
at
org.apache.phoenix.execute.MutationState.throwIfTooBig(MutationState.java:114)
at org.apache.phoenix.execute.MutationState.join(MutationState.java:163)
at
org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:227)
at
org.apache.phoenix.jdbc.PhoenixStatement.execute(PhoenixStatement.java:185)
at
org.apache.phoenix.jdbc.PhoenixPreparedStatement.execute(PhoenixPreparedStatement.java:146)
at
org.apache.phoenix.jdbc.PhoenixPreparedStatement.execute(PhoenixPreparedStatement.java:151)
Because:
In PhoenixConnection constructor :
this.info = info == null ? new Properties() : new Properties(info);
info passed to the constructor is size 3
the above is not copying the properties so the below is executed
if (this.info.isEmpty() && tenantId == null) {
this.services = services;
since this.info.isEmpty() is true
That means the passed info connection properties are ignored and not wrapped in
the DelegateConnectionQueryServices which follows the other branch of the if
above
--
This message was sent by Atlassian JIRA
(v6.2#6252)