diff --git a/src/main/java/org/mariadb/jdbc/client/impl/ConnectionHelper.java b/src/main/java/org/mariadb/jdbc/client/impl/ConnectionHelper.java index b1a58fecf..fb42ff9fa 100644 --- a/src/main/java/org/mariadb/jdbc/client/impl/ConnectionHelper.java +++ b/src/main/java/org/mariadb/jdbc/client/impl/ConnectionHelper.java @@ -157,7 +157,8 @@ public static long initializeClientCapabilities( } // remains for compatibility - if (Boolean.parseBoolean(configuration.nonMappedOptions().getProperty("interactiveClient", "false"))) { + if (Boolean.parseBoolean( + configuration.nonMappedOptions().getProperty("interactiveClient", "false"))) { capabilities |= Capabilities.CLIENT_INTERACTIVE; } diff --git a/src/main/java/org/mariadb/jdbc/client/impl/StandardClient.java b/src/main/java/org/mariadb/jdbc/client/impl/StandardClient.java index aa1b3f886..0bfd02182 100644 --- a/src/main/java/org/mariadb/jdbc/client/impl/StandardClient.java +++ b/src/main/java/org/mariadb/jdbc/client/impl/StandardClient.java @@ -295,8 +295,7 @@ private void postConnectionQueries() throws SQLException { commands.add("show status like 'wsrep_local_state'"); } - if (!hostAddress.primary - && context.getVersion().versionGreaterOrEqual(5, 6, 5)) { + if (!hostAddress.primary && context.getVersion().versionGreaterOrEqual(5, 6, 5)) { commands.add("SET SESSION TRANSACTION READ ONLY"); } diff --git a/src/test/java/org/mariadb/jdbc/integration/LoggingTest.java b/src/test/java/org/mariadb/jdbc/integration/LoggingTest.java index 507b8c925..a2a093098 100644 --- a/src/test/java/org/mariadb/jdbc/integration/LoggingTest.java +++ b/src/test/java/org/mariadb/jdbc/integration/LoggingTest.java @@ -81,20 +81,6 @@ void basicLogging() throws Exception { ds.close(); try { String contents = new String(Files.readAllBytes(Paths.get(tempFile.getPath()))); - String defaultRequest = - "+--------------------------------------------------+\n" - + "| 0 1 2 3 4 5 6 7 8 9 a b c d e f |\n" - + "+--------------------------------------------------+------------------+\n" - + "| 23 00 00 00 03 53 45 54 20 53 45 53 53 49 4F 4E | #....SET SESSION |\n" - + "| 20 54 52 41 4E 53 41 43 54 49 4F 4E 20 52 45 41 | TRANSACTION REA |\n" - + "| 44 20 57 52 49 54 45 | D WRITE |\n" - + "+--------------------------------------------------+------------------+"; - if (!"maxscale".equals(System.getenv("srv")) && !"skysql-ha".equals(System.getenv("srv"))) { - Assertions.assertTrue( - contents.contains(defaultRequest) - || contents.contains(defaultRequest.replace("\r\n", "\n")), - contents); - } String selectOne = "+--------------------------------------------------+\n" + "| 0 1 2 3 4 5 6 7 8 9 a b c d e f |\n" diff --git a/src/test/java/org/mariadb/jdbc/integration/MultiHostTest.java b/src/test/java/org/mariadb/jdbc/integration/MultiHostTest.java index ef30b921f..e83eecc4e 100644 --- a/src/test/java/org/mariadb/jdbc/integration/MultiHostTest.java +++ b/src/test/java/org/mariadb/jdbc/integration/MultiHostTest.java @@ -241,25 +241,31 @@ public void masterFailover() throws Exception { url + "waitReconnectTimeout=300&deniedListTimeout=300&retriesAllDown=4&connectTimeout=500&deniedListTimeout=20")) { Statement stmt = con.createStatement(); + con.setAutoCommit(false); stmt.execute("START TRANSACTION"); stmt.execute("SET @con=1"); proxy.restart(50); - ResultSet rs = stmt.executeQuery("SELECT @con"); - rs.next(); - assertEquals(1, rs.getInt(1)); + try { + ResultSet rs = stmt.executeQuery("SELECT @con"); + rs.next(); + assertEquals(1, rs.getInt(1)); + } catch (SQLException e) { + assertTrue(e.getMessage().contains("In progress transaction was lost")); + } } - + Thread.sleep(50); // with transaction replay try (Connection con = (Connection) DriverManager.getConnection( url - + "transactionReplay=true&waitReconnectTimeout=300&deniedListTimeout=300&retriesAllDown=4&connectTimeout=500")) { + + "transactionReplay=true&waitReconnectTimeout=300&deniedListTimeout=300&retriesAllDown=4&connectTimeout=20")) { Statement stmt = con.createStatement(); stmt.execute("DROP TABLE IF EXISTS testReplay"); stmt.execute("CREATE TABLE testReplay(id INT)"); stmt.execute("INSERT INTO testReplay VALUE (1)"); + con.setAutoCommit(false); stmt.execute("START TRANSACTION"); stmt.execute("INSERT INTO testReplay VALUE (2)"); try (PreparedStatement prep = con.prepareStatement("INSERT INTO testReplay VALUE (?)")) {