[ https://issues.apache.org/jira/browse/IGNITE-21020?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Pavel Pereslegin updated IGNITE-21020: -------------------------------------- Description: AI3 doesn't support transaction control statements for non autocommit mode. For example: {code:java} connection.setAutoCommit(false); execute("INSERT INTO TEST VALUES(0, 0);" // tx1 must be started + "COMMIT;" // tx1 must be committed + "START TRANSACTION;" // tx2 must be started + "INSERT INTO TEST VALUES(1, 1);"); execute("INSERT INTO TEST VALUES(2, 2);"); // must be done in tx2 connection.commit(); // tx2 must be committed (this is equal to execute("COMMIT;")) {code} This code currently throws an exception due to current implementation limitation. p.s. additional notes about current limitation is described here https://github.com/apache/ignite-3/pull/2846#discussion_r1400388258 was: AI3 don't support transaction control statements for non autocommit mode. For example: {code:java} connection.setAutoCommit(false); execute("INSERT INTO TEST VALUES(0, 0);" // tx1 must be started + "COMMIT;" // tx1 must be committed + "START TRANSACTION;" // tx2 must be started + "INSERT INTO TEST VALUES(1, 1);"); execute("INSERT INTO TEST VALUES(2, 2);"); // must be done in tx2 connection.commit(); // tx2 must be committed (this is equal to execute("COMMIT;")) {code} This code currently throws an exception due to current implementation limitation. p.s. additional notes about current limitation is described here https://github.com/apache/ignite-3/pull/2846#discussion_r1400388258 > JDBC. Support transaction control statements for non autocommit mode > -------------------------------------------------------------------- > > Key: IGNITE-21020 > URL: https://issues.apache.org/jira/browse/IGNITE-21020 > Project: Ignite > Issue Type: Improvement > Components: jdbc, sql > Reporter: Pavel Pereslegin > Priority: Major > Labels: ignite-3, jdbc > > AI3 doesn't support transaction control statements for non autocommit mode. > For example: > {code:java} > connection.setAutoCommit(false); > execute("INSERT INTO TEST VALUES(0, 0);" // tx1 must be started > + "COMMIT;" // tx1 must be committed > + "START TRANSACTION;" // tx2 must be started > + "INSERT INTO TEST VALUES(1, 1);"); > execute("INSERT INTO TEST VALUES(2, 2);"); // must be done in tx2 > connection.commit(); // tx2 must be committed (this is equal to > execute("COMMIT;")) > {code} > This code currently throws an exception due to current implementation > limitation. > p.s. additional notes about current limitation is described here > https://github.com/apache/ignite-3/pull/2846#discussion_r1400388258 -- This message was sent by Atlassian Jira (v8.20.10#820010)