This is an automated email from the ASF dual-hosted git repository.
zhaojinchao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new edf8322 Correct BatchedInserts to BatchedStatements in
PostgreSQL/openGauss (#16297)
edf8322 is described below
commit edf83226b03c979af77543a34356ad435c330749
Author: 吴伟杰 <[email protected]>
AuthorDate: Wed Mar 23 13:33:23 2022 +0800
Correct BatchedInserts to BatchedStatements in PostgreSQL/openGauss (#16297)
* Correct BatchedInserts to BatchedStatements in PostgreSQL/openGauss
* Rename methods and variables
---
.../query/extended/PostgreSQLAggregatedCommandPacket.java | 4 ++--
.../opengauss/command/OpenGaussCommandExecutorFactory.java | 12 ++++++------
.../query/extended/bind/OpenGaussComBatchBindExecutor.java | 4 ++--
.../command/OpenGaussCommandExecutorFactoryTest.java | 12 ++++++------
.../postgresql/command/PostgreSQLCommandExecutorFactory.java | 12 ++++++------
...ostgreSQLAggregatedBatchedStatementsCommandExecutor.java} | 6 +++---
...xecutor.java => PostgreSQLBatchedStatementsExecutor.java} | 12 ++++++------
.../command/PostgreSQLCommandExecutorFactoryTest.java | 12 ++++++------
...reSQLAggregatedBatchedStatementsCommandExecutorTest.java} | 6 +++---
...est.java => PostgreSQLBatchedStatementsExecutorTest.java} | 8 ++++----
10 files changed, 44 insertions(+), 44 deletions(-)
diff --git
a/shardingsphere-db-protocol/shardingsphere-db-protocol-postgresql/src/main/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/PostgreSQLAggregatedCommandPacket.java
b/shardingsphere-db-protocol/shardingsphere-db-protocol-postgresql/src/main/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/PostgreSQLAggregatedCommandPacket.java
index 18b9724..a7211a9 100644
---
a/shardingsphere-db-protocol/shardingsphere-db-protocol-postgresql/src/main/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/PostgreSQLAggregatedCommandPacket.java
+++
b/shardingsphere-db-protocol/shardingsphere-db-protocol-postgresql/src/main/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/PostgreSQLAggregatedCommandPacket.java
@@ -35,7 +35,7 @@ public final class PostgreSQLAggregatedCommandPacket extends
PostgreSQLCommandPa
private final List<PostgreSQLCommandPacket> packets;
- private final boolean containsBatchedInserts;
+ private final boolean containsBatchedStatements;
private final int firstBindIndex;
@@ -93,7 +93,7 @@ public final class PostgreSQLAggregatedCommandPacket extends
PostgreSQLCommandPa
}
this.firstBindIndex = firstBindIndex;
this.lastExecuteIndex = lastExecuteIndex;
- if (this.containsBatchedInserts = firstStatementBindTimes ==
firstStatementExecuteTimes && firstStatementBindTimes >= 3) {
+ if (this.containsBatchedStatements = firstStatementBindTimes ==
firstStatementExecuteTimes && firstStatementBindTimes >= 3) {
ensureRandomAccessible(packets);
}
}
diff --git
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/command/OpenGaussCommandExecutorFactory.java
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/command/OpenGaussCommandExecutorFactory.java
index b924d28..104180f 100644
---
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/command/OpenGaussCommandExecutorFactory.java
+++
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/command/OpenGaussCommandExecutorFactory.java
@@ -38,7 +38,7 @@ import
org.apache.shardingsphere.proxy.frontend.opengauss.command.query.extended
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.PostgreSQLConnectionContext;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.generic.PostgreSQLComTerminationExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.generic.PostgreSQLUnsupportedCommandExecutor;
-import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.PostgreSQLAggregatedBatchedInsertsCommandExecutor;
+import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.PostgreSQLAggregatedBatchedStatementsCommandExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.PostgreSQLAggregatedCommandExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.bind.PostgreSQLComBindExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.close.PostgreSQLComCloseExecutor;
@@ -76,8 +76,8 @@ public final class OpenGaussCommandExecutorFactory {
return getCommandExecutor(commandPacketType, commandPacket,
connectionSession, connectionContext);
}
PostgreSQLAggregatedCommandPacket aggregatedCommandPacket =
(PostgreSQLAggregatedCommandPacket) commandPacket;
- if (aggregatedCommandPacket.isContainsBatchedInserts() &&
aggregatedCommandPacket.getPackets().stream().noneMatch(each -> each instanceof
OpenGaussComBatchBindPacket)) {
- return new
PostgreSQLAggregatedCommandExecutor(getExecutorsOfAggregatedBatchedInserts(aggregatedCommandPacket,
connectionSession, connectionContext));
+ if (aggregatedCommandPacket.isContainsBatchedStatements() &&
aggregatedCommandPacket.getPackets().stream().noneMatch(each -> each instanceof
OpenGaussComBatchBindPacket)) {
+ return new
PostgreSQLAggregatedCommandExecutor(getExecutorsOfAggregatedBatchedStatements(aggregatedCommandPacket,
connectionSession, connectionContext));
}
List<CommandExecutor> result = new
ArrayList<>(aggregatedCommandPacket.getPackets().size());
for (PostgreSQLCommandPacket each :
aggregatedCommandPacket.getPackets()) {
@@ -86,8 +86,8 @@ public final class OpenGaussCommandExecutorFactory {
return new PostgreSQLAggregatedCommandExecutor(result);
}
- private static List<CommandExecutor>
getExecutorsOfAggregatedBatchedInserts(final PostgreSQLAggregatedCommandPacket
aggregatedCommandPacket,
-
final ConnectionSession connectionSession, final PostgreSQLConnectionContext
connectionContext) throws SQLException {
+ private static List<CommandExecutor>
getExecutorsOfAggregatedBatchedStatements(final
PostgreSQLAggregatedCommandPacket aggregatedCommandPacket,
+
final ConnectionSession connectionSession, final
PostgreSQLConnectionContext connectionContext) throws SQLException {
List<PostgreSQLCommandPacket> packets =
aggregatedCommandPacket.getPackets();
int firstBindIndex = aggregatedCommandPacket.getFirstBindIndex();
int lastExecuteIndex = aggregatedCommandPacket.getLastExecuteIndex();
@@ -96,7 +96,7 @@ public final class OpenGaussCommandExecutorFactory {
PostgreSQLCommandPacket each = packets.get(i);
result.add(getCommandExecutor((CommandPacketType)
each.getIdentifier(), each, connectionSession, connectionContext));
}
- result.add(new
PostgreSQLAggregatedBatchedInsertsCommandExecutor(connectionSession,
packets.subList(firstBindIndex, lastExecuteIndex + 1)));
+ result.add(new
PostgreSQLAggregatedBatchedStatementsCommandExecutor(connectionSession,
packets.subList(firstBindIndex, lastExecuteIndex + 1)));
for (int i = lastExecuteIndex + 1; i < packets.size(); i++) {
PostgreSQLCommandPacket each = packets.get(i);
result.add(getCommandExecutor((CommandPacketType)
each.getIdentifier(), each, connectionSession, connectionContext));
diff --git
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/command/query/extended/bind/OpenGaussComBatchBindExecutor.java
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/command/query/extended/bind/OpenGaussComBatchBindExecutor.java
index 0ca3d64..5a02ef0 100644
---
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/command/query/extended/bind/OpenGaussComBatchBindExecutor.java
+++
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/command/query/extended/bind/OpenGaussComBatchBindExecutor.java
@@ -27,7 +27,7 @@ import
org.apache.shardingsphere.db.protocol.postgresql.packet.generic.PostgreSQ
import org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
import
org.apache.shardingsphere.proxy.frontend.command.executor.CommandExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.PostgreSQLCommand;
-import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.PostgreSQLBatchedInsertsExecutor;
+import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.PostgreSQLBatchedStatementsExecutor;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
import java.sql.SQLException;
@@ -47,7 +47,7 @@ public final class OpenGaussComBatchBindExecutor implements
CommandExecutor {
@Override
public Collection<DatabasePacket<?>> execute() throws SQLException {
PostgreSQLPreparedStatement preparedStatement =
PostgreSQLPreparedStatementRegistry.getInstance().get(connectionSession.getConnectionId(),
packet.getStatementId());
- int updateCount = new
PostgreSQLBatchedInsertsExecutor(connectionSession, preparedStatement,
packet.readParameterSets(preparedStatement.getParameterTypes())).executeBatch();
+ int updateCount = new
PostgreSQLBatchedStatementsExecutor(connectionSession, preparedStatement,
packet.readParameterSets(preparedStatement.getParameterTypes())).executeBatch();
return Arrays.asList(PostgreSQLBindCompletePacket.getInstance(),
createCommandComplete(preparedStatement.getSqlStatement(), updateCount));
}
diff --git
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/test/java/org/apache/shardingsphere/proxy/frontend/opengauss/command/OpenGaussCommandExecutorFactoryTest.java
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/test/java/org/apache/shardingsphere/proxy/frontend/opengauss/command/OpenGaussCommandExecutorFactoryTest.java
index 10f7973..4078651 100644
---
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/test/java/org/apache/shardingsphere/proxy/frontend/opengauss/command/OpenGaussCommandExecutorFactoryTest.java
+++
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/test/java/org/apache/shardingsphere/proxy/frontend/opengauss/command/OpenGaussCommandExecutorFactoryTest.java
@@ -36,7 +36,7 @@ import
org.apache.shardingsphere.proxy.frontend.opengauss.command.query.extended
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.PostgreSQLConnectionContext;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.generic.PostgreSQLComTerminationExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.generic.PostgreSQLUnsupportedCommandExecutor;
-import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.PostgreSQLAggregatedBatchedInsertsCommandExecutor;
+import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.PostgreSQLAggregatedBatchedStatementsCommandExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.PostgreSQLAggregatedCommandExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.bind.PostgreSQLComBindExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.close.PostgreSQLComCloseExecutor;
@@ -92,7 +92,7 @@ public final class OpenGaussCommandExecutorFactoryTest {
}
@Test
- public void assertAggregatedPacketNotBatchedInserts() throws SQLException {
+ public void assertAggregatedPacketNotBatchedStatements() throws
SQLException {
PostgreSQLComParsePacket parsePacket =
mock(PostgreSQLComParsePacket.class);
when(parsePacket.getIdentifier()).thenReturn(PostgreSQLCommandPacketType.PARSE_COMMAND);
PostgreSQLComBindPacket bindPacket =
mock(PostgreSQLComBindPacket.class);
@@ -104,7 +104,7 @@ public final class OpenGaussCommandExecutorFactoryTest {
PostgreSQLComSyncPacket syncPacket =
mock(PostgreSQLComSyncPacket.class);
when(syncPacket.getIdentifier()).thenReturn(PostgreSQLCommandPacketType.SYNC_COMMAND);
PostgreSQLAggregatedCommandPacket packet =
mock(PostgreSQLAggregatedCommandPacket.class);
- when(packet.isContainsBatchedInserts()).thenReturn(false);
+ when(packet.isContainsBatchedStatements()).thenReturn(false);
when(packet.getPackets()).thenReturn(Arrays.asList(parsePacket,
bindPacket, describePacket, executePacket, syncPacket));
CommandExecutor actual =
OpenGaussCommandExecutorFactory.newInstance(null, packet, connectionSession,
connectionContext);
assertTrue(actual instanceof PostgreSQLAggregatedCommandExecutor);
@@ -118,7 +118,7 @@ public final class OpenGaussCommandExecutorFactoryTest {
}
@Test
- public void assertAggregatedPacketIsBatchedInserts() throws SQLException {
+ public void assertAggregatedPacketIsBatchedStatements() throws
SQLException {
PostgreSQLComParsePacket parsePacket =
mock(PostgreSQLComParsePacket.class);
when(parsePacket.getIdentifier()).thenReturn(PostgreSQLCommandPacketType.PARSE_COMMAND);
PostgreSQLComBindPacket bindPacket =
mock(PostgreSQLComBindPacket.class);
@@ -131,7 +131,7 @@ public final class OpenGaussCommandExecutorFactoryTest {
PostgreSQLComTerminationPacket terminationPacket =
mock(PostgreSQLComTerminationPacket.class);
when(terminationPacket.getIdentifier()).thenReturn(PostgreSQLCommandPacketType.TERMINATE);
PostgreSQLAggregatedCommandPacket packet =
mock(PostgreSQLAggregatedCommandPacket.class);
- when(packet.isContainsBatchedInserts()).thenReturn(true);
+ when(packet.isContainsBatchedStatements()).thenReturn(true);
when(packet.getPackets()).thenReturn(
Arrays.asList(parsePacket, bindPacket, describePacket,
executePacket, bindPacket, describePacket, executePacket, closePacket,
syncPacket, terminationPacket));
when(packet.getFirstBindIndex()).thenReturn(1);
@@ -140,7 +140,7 @@ public final class OpenGaussCommandExecutorFactoryTest {
assertTrue(actual instanceof PostgreSQLAggregatedCommandExecutor);
Iterator<CommandExecutor> actualPacketsIterator =
getExecutorsFromAggregatedCommandExecutor((PostgreSQLAggregatedCommandExecutor)
actual).iterator();
assertTrue(actualPacketsIterator.next() instanceof
PostgreSQLComParseExecutor);
- assertTrue(actualPacketsIterator.next() instanceof
PostgreSQLAggregatedBatchedInsertsCommandExecutor);
+ assertTrue(actualPacketsIterator.next() instanceof
PostgreSQLAggregatedBatchedStatementsCommandExecutor);
assertTrue(actualPacketsIterator.next() instanceof
PostgreSQLComCloseExecutor);
assertTrue(actualPacketsIterator.next() instanceof
PostgreSQLComSyncExecutor);
assertTrue(actualPacketsIterator.next() instanceof
PostgreSQLComTerminationExecutor);
diff --git
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/PostgreSQLCommandExecutorFactory.java
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/PostgreSQLCommandExecutorFactory.java
index 6a3bd15..5bee6a5 100644
---
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/PostgreSQLCommandExecutorFactory.java
+++
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/PostgreSQLCommandExecutorFactory.java
@@ -33,7 +33,7 @@ import
org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
import
org.apache.shardingsphere.proxy.frontend.command.executor.CommandExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.generic.PostgreSQLComTerminationExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.generic.PostgreSQLUnsupportedCommandExecutor;
-import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.PostgreSQLAggregatedBatchedInsertsCommandExecutor;
+import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.PostgreSQLAggregatedBatchedStatementsCommandExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.PostgreSQLAggregatedCommandExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.bind.PostgreSQLComBindExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.close.PostgreSQLComCloseExecutor;
@@ -71,8 +71,8 @@ public final class PostgreSQLCommandExecutorFactory {
return getCommandExecutor(commandPacketType, commandPacket,
connectionSession, connectionContext);
}
PostgreSQLAggregatedCommandPacket aggregatedCommandPacket =
(PostgreSQLAggregatedCommandPacket) commandPacket;
- if (aggregatedCommandPacket.isContainsBatchedInserts()) {
- return new
PostgreSQLAggregatedCommandExecutor(getExecutorsOfAggregatedBatchedInserts(aggregatedCommandPacket,
connectionSession, connectionContext));
+ if (aggregatedCommandPacket.isContainsBatchedStatements()) {
+ return new
PostgreSQLAggregatedCommandExecutor(getExecutorsOfAggregatedBatchedStatements(aggregatedCommandPacket,
connectionSession, connectionContext));
}
List<CommandExecutor> result = new
ArrayList<>(aggregatedCommandPacket.getPackets().size());
for (PostgreSQLCommandPacket each :
aggregatedCommandPacket.getPackets()) {
@@ -81,8 +81,8 @@ public final class PostgreSQLCommandExecutorFactory {
return new PostgreSQLAggregatedCommandExecutor(result);
}
- private static List<CommandExecutor>
getExecutorsOfAggregatedBatchedInserts(final PostgreSQLAggregatedCommandPacket
aggregatedCommandPacket,
-
final ConnectionSession connectionSession, final PostgreSQLConnectionContext
connectionContext) throws SQLException {
+ private static List<CommandExecutor>
getExecutorsOfAggregatedBatchedStatements(final
PostgreSQLAggregatedCommandPacket aggregatedCommandPacket, final
ConnectionSession connectionSession,
+
final PostgreSQLConnectionContext connectionContext) throws SQLException {
List<PostgreSQLCommandPacket> packets =
aggregatedCommandPacket.getPackets();
int firstBindIndex = aggregatedCommandPacket.getFirstBindIndex();
int lastExecuteIndex = aggregatedCommandPacket.getLastExecuteIndex();
@@ -91,7 +91,7 @@ public final class PostgreSQLCommandExecutorFactory {
PostgreSQLCommandPacket each = packets.get(i);
result.add(getCommandExecutor((PostgreSQLCommandPacketType)
each.getIdentifier(), each, connectionSession, connectionContext));
}
- result.add(new
PostgreSQLAggregatedBatchedInsertsCommandExecutor(connectionSession,
packets.subList(firstBindIndex, lastExecuteIndex + 1)));
+ result.add(new
PostgreSQLAggregatedBatchedStatementsCommandExecutor(connectionSession,
packets.subList(firstBindIndex, lastExecuteIndex + 1)));
for (int i = lastExecuteIndex + 1; i < packets.size(); i++) {
PostgreSQLCommandPacket each = packets.get(i);
result.add(getCommandExecutor((PostgreSQLCommandPacketType)
each.getIdentifier(), each, connectionSession, connectionContext));
diff --git
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLAggregatedBatchedInsertsCommandExecutor.java
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLAggregatedBatchedStatementsCommandExecutor.java
similarity index 92%
rename from
shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLAggregatedBatchedInsertsCommandExecutor.java
rename to
shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLAggregatedBatchedStatementsCommandExecutor.java
index bc90012..ae212fb 100644
---
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLAggregatedBatchedInsertsCommandExecutor.java
+++
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLAggregatedBatchedStatementsCommandExecutor.java
@@ -40,10 +40,10 @@ import java.util.LinkedList;
import java.util.List;
/**
- * Aggregated batched inserts command executor for PostgreSQL.
+ * Aggregated batched statements command executor for PostgreSQL.
*/
@RequiredArgsConstructor
-public final class PostgreSQLAggregatedBatchedInsertsCommandExecutor
implements CommandExecutor {
+public final class PostgreSQLAggregatedBatchedStatementsCommandExecutor
implements CommandExecutor {
private final ConnectionSession connectionSession;
@@ -52,7 +52,7 @@ public final class
PostgreSQLAggregatedBatchedInsertsCommandExecutor implements
@Override
public Collection<DatabasePacket<?>> execute() throws SQLException {
PostgreSQLPreparedStatement preparedStatement = getPreparedStatement();
- PostgreSQLBatchedInsertsExecutor executor = new
PostgreSQLBatchedInsertsExecutor(connectionSession, preparedStatement,
readParameterSets(preparedStatement.getParameterTypes()));
+ PostgreSQLBatchedStatementsExecutor executor = new
PostgreSQLBatchedStatementsExecutor(connectionSession, preparedStatement,
readParameterSets(preparedStatement.getParameterTypes()));
List<DatabasePacket<?>> result = new ArrayList<>(packets.size());
int totalInserted = executor.executeBatch();
int executePacketCount = executePacketCount();
diff --git
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLBatchedInsertsExecutor.java
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLBatchedStatementsExecutor.java
similarity index 93%
rename from
shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLBatchedInsertsExecutor.java
rename to
shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLBatchedStatementsExecutor.java
index 914da0a..68692c6 100644
---
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLBatchedInsertsExecutor.java
+++
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLBatchedStatementsExecutor.java
@@ -61,9 +61,9 @@ import java.util.Map;
import java.util.Optional;
/**
- * Batched inserts executor for PostgreSQL.
+ * Batched statements executor for PostgreSQL.
*/
-public final class PostgreSQLBatchedInsertsExecutor {
+public final class PostgreSQLBatchedStatementsExecutor {
private final KernelProcessor kernelProcessor = new KernelProcessor();
@@ -81,7 +81,7 @@ public final class PostgreSQLBatchedInsertsExecutor {
private ExecutionGroupContext<JDBCExecutionUnit> executionGroupContext;
- public PostgreSQLBatchedInsertsExecutor(final ConnectionSession
connectionSession, final PostgreSQLPreparedStatement preparedStatement, final
List<List<Object>> parameterSets) {
+ public PostgreSQLBatchedStatementsExecutor(final ConnectionSession
connectionSession, final PostgreSQLPreparedStatement preparedStatement, final
List<List<Object>> parameterSets) {
this.connectionSession = connectionSession;
metaDataContexts =
ProxyContext.getInstance().getContextManager().getMetaDataContexts();
this.preparedStatement = preparedStatement;
@@ -152,7 +152,7 @@ public final class PostgreSQLBatchedInsertsExecutor {
private int executeBatchedPreparedStatements() throws SQLException {
boolean isExceptionThrown =
SQLExecutorExceptionHandler.isExceptionThrown();
DatabaseType databaseType =
metaDataContexts.getMetaData(connectionSession.getSchemaName()).getResource().getDatabaseType();
- JDBCExecutorCallback<int[]> callback = new
BatchedInsertsJDBCExecutorCallback(databaseType,
preparedStatement.getSqlStatement(), isExceptionThrown);
+ JDBCExecutorCallback<int[]> callback = new
BatchedStatementsJDBCExecutorCallback(databaseType,
preparedStatement.getSqlStatement(), isExceptionThrown);
List<int[]> executeResults =
jdbcExecutor.execute(executionGroupContext, callback);
int result = 0;
for (int[] eachResult : executeResults) {
@@ -163,9 +163,9 @@ public final class PostgreSQLBatchedInsertsExecutor {
return result;
}
- private static class BatchedInsertsJDBCExecutorCallback extends
JDBCExecutorCallback<int[]> {
+ private static class BatchedStatementsJDBCExecutorCallback extends
JDBCExecutorCallback<int[]> {
- BatchedInsertsJDBCExecutorCallback(final DatabaseType databaseType,
final SQLStatement sqlStatement, final boolean isExceptionThrown) {
+ BatchedStatementsJDBCExecutorCallback(final DatabaseType databaseType,
final SQLStatement sqlStatement, final boolean isExceptionThrown) {
super(databaseType, sqlStatement, isExceptionThrown);
}
diff --git
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/PostgreSQLCommandExecutorFactoryTest.java
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/PostgreSQLCommandExecutorFactoryTest.java
index bcbcb21..07380b1 100644
---
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/PostgreSQLCommandExecutorFactoryTest.java
+++
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/PostgreSQLCommandExecutorFactoryTest.java
@@ -35,7 +35,7 @@ import
org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
import
org.apache.shardingsphere.proxy.frontend.command.executor.CommandExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.generic.PostgreSQLComTerminationExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.generic.PostgreSQLUnsupportedCommandExecutor;
-import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.PostgreSQLAggregatedBatchedInsertsCommandExecutor;
+import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.PostgreSQLAggregatedBatchedStatementsCommandExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.PostgreSQLAggregatedCommandExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.bind.PostgreSQLComBindExecutor;
import
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extended.close.PostgreSQLComCloseExecutor;
@@ -105,7 +105,7 @@ public final class PostgreSQLCommandExecutorFactoryTest {
}
@Test
- public void assertAggregatedPacketNotBatchedInserts() throws SQLException {
+ public void assertAggregatedPacketNotBatchedStatements() throws
SQLException {
PostgreSQLComParsePacket parsePacket =
mock(PostgreSQLComParsePacket.class);
when(parsePacket.getIdentifier()).thenReturn(PostgreSQLCommandPacketType.PARSE_COMMAND);
PostgreSQLComBindPacket bindPacket =
mock(PostgreSQLComBindPacket.class);
@@ -117,7 +117,7 @@ public final class PostgreSQLCommandExecutorFactoryTest {
PostgreSQLComSyncPacket syncPacket =
mock(PostgreSQLComSyncPacket.class);
when(syncPacket.getIdentifier()).thenReturn(PostgreSQLCommandPacketType.SYNC_COMMAND);
PostgreSQLAggregatedCommandPacket packet =
mock(PostgreSQLAggregatedCommandPacket.class);
- when(packet.isContainsBatchedInserts()).thenReturn(false);
+ when(packet.isContainsBatchedStatements()).thenReturn(false);
when(packet.getPackets()).thenReturn(Arrays.asList(parsePacket,
bindPacket, describePacket, executePacket, syncPacket));
CommandExecutor actual =
PostgreSQLCommandExecutorFactory.newInstance(null, packet, connectionSession,
connectionContext);
assertTrue(actual instanceof PostgreSQLAggregatedCommandExecutor);
@@ -131,7 +131,7 @@ public final class PostgreSQLCommandExecutorFactoryTest {
}
@Test
- public void assertAggregatedPacketIsBatchedInserts() throws SQLException {
+ public void assertAggregatedPacketIsBatchedStatements() throws
SQLException {
PostgreSQLComParsePacket parsePacket =
mock(PostgreSQLComParsePacket.class);
when(parsePacket.getIdentifier()).thenReturn(PostgreSQLCommandPacketType.PARSE_COMMAND);
PostgreSQLComBindPacket bindPacket =
mock(PostgreSQLComBindPacket.class);
@@ -140,7 +140,7 @@ public final class PostgreSQLCommandExecutorFactoryTest {
PostgreSQLComSyncPacket syncPacket =
mock(PostgreSQLComSyncPacket.class);
when(syncPacket.getIdentifier()).thenReturn(PostgreSQLCommandPacketType.SYNC_COMMAND);
PostgreSQLAggregatedCommandPacket packet =
mock(PostgreSQLAggregatedCommandPacket.class);
- when(packet.isContainsBatchedInserts()).thenReturn(true);
+ when(packet.isContainsBatchedStatements()).thenReturn(true);
when(packet.getPackets()).thenReturn(Arrays.asList(parsePacket,
bindPacket, describePacket, executePacket, bindPacket, describePacket,
executePacket, syncPacket));
when(packet.getFirstBindIndex()).thenReturn(1);
when(packet.getLastExecuteIndex()).thenReturn(6);
@@ -148,7 +148,7 @@ public final class PostgreSQLCommandExecutorFactoryTest {
assertTrue(actual instanceof PostgreSQLAggregatedCommandExecutor);
Iterator<CommandExecutor> actualPacketsIterator =
getExecutorsFromAggregatedCommandExecutor((PostgreSQLAggregatedCommandExecutor)
actual).iterator();
assertTrue(actualPacketsIterator.next() instanceof
PostgreSQLComParseExecutor);
- assertTrue(actualPacketsIterator.next() instanceof
PostgreSQLAggregatedBatchedInsertsCommandExecutor);
+ assertTrue(actualPacketsIterator.next() instanceof
PostgreSQLAggregatedBatchedStatementsCommandExecutor);
assertTrue(actualPacketsIterator.next() instanceof
PostgreSQLComSyncExecutor);
assertFalse(actualPacketsIterator.hasNext());
}
diff --git
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLAggregatedBatchedInsertsCommandExecutorTest.java
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLAggregatedBatchedStatementsCommandExecutorTest.java
similarity index 96%
rename from
shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLAggregatedBatchedInsertsCommandExecutorTest.java
rename to
shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLAggregatedBatchedStatementsCommandExecutorTest.java
index f493fca..4ddfdee 100644
---
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLAggregatedBatchedInsertsCommandExecutorTest.java
+++
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLAggregatedBatchedStatementsCommandExecutorTest.java
@@ -60,7 +60,7 @@ import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
-public final class PostgreSQLAggregatedBatchedInsertsCommandExecutorTest {
+public final class PostgreSQLAggregatedBatchedStatementsCommandExecutorTest {
private static final ShardingSphereSQLParserEngine SQL_PARSER_ENGINE = new
ShardingSphereSQLParserEngine("PostgreSQL", new SQLParserRule(new
DefaultSQLParserRuleConfigurationBuilder().build()));
@@ -100,8 +100,8 @@ public final class
PostgreSQLAggregatedBatchedInsertsCommandExecutorTest {
when(backendStatement.createStorageResource(any(ExecutionUnit.class),
any(Connection.class), any(ConnectionMode.class),
any(StatementOption.class))).thenReturn(preparedStatement);
when(connectionSession.getStatementManager()).thenReturn(backendStatement);
when(connectionSession.getBackendConnection()).thenReturn(backendConnection);
- PostgreSQLAggregatedBatchedInsertsCommandExecutor
batchedInsertsCommandExecutor = new
PostgreSQLAggregatedBatchedInsertsCommandExecutor(connectionSession,
preparePackets());
- List<DatabasePacket<?>> actualPackets = new
ArrayList<>(batchedInsertsCommandExecutor.execute());
+ PostgreSQLAggregatedBatchedStatementsCommandExecutor
batchedStatementsCommandExecutor = new
PostgreSQLAggregatedBatchedStatementsCommandExecutor(connectionSession,
preparePackets());
+ List<DatabasePacket<?>> actualPackets = new
ArrayList<>(batchedStatementsCommandExecutor.execute());
assertThat(actualPackets.size(), is(BATCH_SIZE * 3));
for (int i = 0; i < BATCH_SIZE; i++) {
assertThat(actualPackets.get(i * 3),
is(PostgreSQLBindCompletePacket.getInstance()));
diff --git
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLBatchedInsertsExecutorTest.java
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLBatchedStatementsExecutorTest.java
similarity index 89%
rename from
shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLBatchedInsertsExecutorTest.java
rename to
shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLBatchedStatementsExecutorTest.java
index b256ed9..b31c758 100644
---
a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLBatchedInsertsExecutorTest.java
+++
b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PostgreSQLBatchedStatementsExecutorTest.java
@@ -49,7 +49,7 @@ import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@RunWith(MockitoJUnitRunner.class)
-public final class PostgreSQLBatchedInsertsExecutorTest {
+public final class PostgreSQLBatchedStatementsExecutorTest {
@Mock
private ConnectionSession connectionSession;
@@ -76,7 +76,7 @@ public final class PostgreSQLBatchedInsertsExecutorTest {
OpenGaussInsertStatement openGaussInsertStatement =
mock(OpenGaussInsertStatement.class, RETURNS_DEEP_STUBS);
when(openGaussInsertStatement.getTable().getTableName().getIdentifier().getValue()).thenReturn("");
PostgreSQLPreparedStatement postgreSQLPreparedStatement = new
PostgreSQLPreparedStatement("", openGaussInsertStatement,
Collections.emptyList());
- PostgreSQLBatchedInsertsExecutor actual = new
PostgreSQLBatchedInsertsExecutor(connectionSession,
postgreSQLPreparedStatement, Collections.emptyList());
+ PostgreSQLBatchedStatementsExecutor actual = new
PostgreSQLBatchedStatementsExecutor(connectionSession,
postgreSQLPreparedStatement, Collections.emptyList());
ExecutionContext executionContext = mock(ExecutionContext.class);
setAnyExecutionContext(actual, executionContext);
actual.executeBatch();
@@ -84,8 +84,8 @@ public final class PostgreSQLBatchedInsertsExecutorTest {
}
@SneakyThrows
- private void setAnyExecutionContext(final PostgreSQLBatchedInsertsExecutor
executor, final ExecutionContext executionContext) {
- Field field =
PostgreSQLBatchedInsertsExecutor.class.getDeclaredField("anyExecutionContext");
+ private void setAnyExecutionContext(final
PostgreSQLBatchedStatementsExecutor executor, final ExecutionContext
executionContext) {
+ Field field =
PostgreSQLBatchedStatementsExecutor.class.getDeclaredField("anyExecutionContext");
field.setAccessible(true);
field.set(executor, executionContext);
}