This is an automated email from the ASF dual-hosted git repository. totalo 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 8bfd8c4d0dd Use the Java 8 Date and Time API instead (#25799) 8bfd8c4d0dd is described below commit 8bfd8c4d0dd6333798a4b6c602ef949d5c83e901 Author: Liang Zhang <zhangli...@apache.org> AuthorDate: Sat May 20 01:14:05 2023 +0800 Use the Java 8 Date and Time API instead (#25799) --- .../protocol/MySQLDateBinaryProtocolValue.java | 34 +++++++-------- .../protocol/MySQLTimeBinaryProtocolValue.java | 25 ++++++----- .../protocol/MySQLDateBinaryProtocolValueTest.java | 48 +++++++++++----------- .../keygen/SnowflakeKeyGenerateAlgorithm.java | 12 ++---- .../keygen/CosIdSnowflakeKeyGenerateAlgorithm.java | 12 ++---- .../proxy/frontend/ssl/SSLUtils.java | 15 ++++--- .../proxy/frontend/ssl/SSLUtilsTest.java | 12 +++--- .../cases/autocommit/MySQLAutoCommitTestCase.java | 3 +- .../autocommit/PostgreSQLAutoCommitTestCase.java | 3 +- 9 files changed, 71 insertions(+), 93 deletions(-) diff --git a/db-protocol/mysql/src/main/java/org/apache/shardingsphere/db/protocol/mysql/packet/command/query/binary/execute/protocol/MySQLDateBinaryProtocolValue.java b/db-protocol/mysql/src/main/java/org/apache/shardingsphere/db/protocol/mysql/packet/command/query/binary/execute/protocol/MySQLDateBinaryProtocolValue.java index 8dc112aadde..3e5304ea700 100644 --- a/db-protocol/mysql/src/main/java/org/apache/shardingsphere/db/protocol/mysql/packet/command/query/binary/execute/protocol/MySQLDateBinaryProtocolValue.java +++ b/db-protocol/mysql/src/main/java/org/apache/shardingsphere/db/protocol/mysql/packet/command/query/binary/execute/protocol/MySQLDateBinaryProtocolValue.java @@ -22,7 +22,8 @@ import org.apache.shardingsphere.db.protocol.mysql.payload.MySQLPacketPayload; import java.sql.SQLException; import java.sql.SQLFeatureNotSupportedException; import java.sql.Timestamp; -import java.util.Calendar; +import java.time.LocalDate; +import java.time.LocalDateTime; import java.util.Date; /** @@ -49,33 +50,26 @@ public final class MySQLDateBinaryProtocolValue implements MySQLBinaryProtocolVa } } - @SuppressWarnings("MagicConstant") private Timestamp getTimestampForDate(final MySQLPacketPayload payload) { - Calendar result = Calendar.getInstance(); - result.set(payload.readInt2(), payload.readInt1() - 1, payload.readInt1()); - return new Timestamp(result.getTimeInMillis()); + return Timestamp.valueOf(LocalDate.of(payload.readInt2(), payload.readInt1(), payload.readInt1()).atStartOfDay()); } - @SuppressWarnings("MagicConstant") private Timestamp getTimestampForDatetime(final MySQLPacketPayload payload) { - Calendar result = Calendar.getInstance(); - result.set(payload.readInt2(), payload.readInt1() - 1, payload.readInt1(), payload.readInt1(), payload.readInt1(), payload.readInt1()); - return new Timestamp(result.getTimeInMillis()); + return Timestamp.valueOf(LocalDateTime.of(payload.readInt2(), payload.readInt1(), payload.readInt1(), payload.readInt1(), payload.readInt1(), payload.readInt1())); } @Override public void write(final MySQLPacketPayload payload, final Object value) { Timestamp timestamp = new Timestamp(((Date) value).getTime()); - Calendar calendar = Calendar.getInstance(); - calendar.setTime(timestamp); - int year = calendar.get(Calendar.YEAR); - int month = calendar.get(Calendar.MONTH) + 1; - int dayOfMonth = calendar.get(Calendar.DAY_OF_MONTH); - int hourOfDay = calendar.get(Calendar.HOUR_OF_DAY); - int minutes = calendar.get(Calendar.MINUTE); - int seconds = calendar.get(Calendar.SECOND); + LocalDateTime dateTime = timestamp.toLocalDateTime(); + int year = dateTime.getYear(); + int month = dateTime.getMonthValue(); + int dayOfMonth = dateTime.getDayOfMonth(); + int hours = dateTime.getHour(); + int minutes = dateTime.getMinute(); + int seconds = dateTime.getSecond(); int nanos = timestamp.getNanos(); - boolean isTimeAbsent = 0 == hourOfDay && 0 == minutes && 0 == seconds; + boolean isTimeAbsent = 0 == hours && 0 == minutes && 0 == seconds; boolean isNanosAbsent = 0 == nanos; if (isTimeAbsent && isNanosAbsent) { payload.writeInt1(4); @@ -85,12 +79,12 @@ public final class MySQLDateBinaryProtocolValue implements MySQLBinaryProtocolVa if (isNanosAbsent) { payload.writeInt1(7); writeDate(payload, year, month, dayOfMonth); - writeTime(payload, hourOfDay, minutes, seconds); + writeTime(payload, hours, minutes, seconds); return; } payload.writeInt1(11); writeDate(payload, year, month, dayOfMonth); - writeTime(payload, hourOfDay, minutes, seconds); + writeTime(payload, hours, minutes, seconds); writeNanos(payload, nanos); } diff --git a/db-protocol/mysql/src/main/java/org/apache/shardingsphere/db/protocol/mysql/packet/command/query/binary/execute/protocol/MySQLTimeBinaryProtocolValue.java b/db-protocol/mysql/src/main/java/org/apache/shardingsphere/db/protocol/mysql/packet/command/query/binary/execute/protocol/MySQLTimeBinaryProtocolValue.java index 8137aaa5925..1ea24d575fd 100644 --- a/db-protocol/mysql/src/main/java/org/apache/shardingsphere/db/protocol/mysql/packet/command/query/binary/execute/protocol/MySQLTimeBinaryProtocolValue.java +++ b/db-protocol/mysql/src/main/java/org/apache/shardingsphere/db/protocol/mysql/packet/command/query/binary/execute/protocol/MySQLTimeBinaryProtocolValue.java @@ -23,7 +23,9 @@ import java.sql.SQLException; import java.sql.SQLFeatureNotSupportedException; import java.sql.Time; import java.sql.Timestamp; -import java.util.Calendar; +import java.time.Instant; +import java.time.LocalDateTime; +import java.time.ZoneId; /** * Binary protocol value for time for MySQL. @@ -50,22 +52,19 @@ public final class MySQLTimeBinaryProtocolValue implements MySQLBinaryProtocolVa } private Timestamp getTimestamp(final MySQLPacketPayload payload) { - Calendar calendar = Calendar.getInstance(); - calendar.set(0, Calendar.JANUARY, 0, payload.readInt1(), payload.readInt1(), payload.readInt1()); - Timestamp result = new Timestamp(calendar.getTimeInMillis()); + Timestamp result = Timestamp.valueOf(LocalDateTime.of(0, 1, 1, payload.readInt1(), payload.readInt1(), payload.readInt1())); result.setNanos(0); return result; } @Override public void write(final MySQLPacketPayload payload, final Object value) { - Calendar calendar = Calendar.getInstance(); - calendar.setTimeInMillis(((Time) value).getTime()); - int hourOfDay = calendar.get(Calendar.HOUR_OF_DAY); - int minutes = calendar.get(Calendar.MINUTE); - int seconds = calendar.get(Calendar.SECOND); - int nanos = new Timestamp(calendar.getTimeInMillis()).getNanos(); - boolean isTimeAbsent = 0 == hourOfDay && 0 == minutes && 0 == seconds; + LocalDateTime localDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(((Time) value).getTime()), ZoneId.systemDefault()); + int hours = localDateTime.getHour(); + int minutes = localDateTime.getMinute(); + int seconds = localDateTime.getSecond(); + int nanos = localDateTime.getNano(); + boolean isTimeAbsent = 0 == hours && 0 == minutes && 0 == seconds; boolean isNanosAbsent = 0 == nanos; if (isTimeAbsent && isNanosAbsent) { payload.writeInt1(0); @@ -73,11 +72,11 @@ public final class MySQLTimeBinaryProtocolValue implements MySQLBinaryProtocolVa } if (isNanosAbsent) { payload.writeInt1(8); - writeTime(payload, hourOfDay, minutes, seconds); + writeTime(payload, hours, minutes, seconds); return; } payload.writeInt1(12); - writeTime(payload, hourOfDay, minutes, seconds); + writeTime(payload, hours, minutes, seconds); writeNanos(payload, nanos); } diff --git a/db-protocol/mysql/src/test/java/org/apache/shardingsphere/db/protocol/mysql/packet/command/query/binary/execute/protocol/MySQLDateBinaryProtocolValueTest.java b/db-protocol/mysql/src/test/java/org/apache/shardingsphere/db/protocol/mysql/packet/command/query/binary/execute/protocol/MySQLDateBinaryProtocolValueTest.java index 30464372498..7e7769d5df4 100644 --- a/db-protocol/mysql/src/test/java/org/apache/shardingsphere/db/protocol/mysql/packet/command/query/binary/execute/protocol/MySQLDateBinaryProtocolValueTest.java +++ b/db-protocol/mysql/src/test/java/org/apache/shardingsphere/db/protocol/mysql/packet/command/query/binary/execute/protocol/MySQLDateBinaryProtocolValueTest.java @@ -26,7 +26,9 @@ import org.mockito.junit.jupiter.MockitoExtension; import java.sql.SQLException; import java.sql.SQLFeatureNotSupportedException; import java.sql.Timestamp; -import java.util.Calendar; +import java.time.Instant; +import java.time.LocalDateTime; +import java.time.ZoneId; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.MatcherAssert.assertThat; @@ -49,42 +51,38 @@ class MySQLDateBinaryProtocolValueTest { void assertReadWithFourBytes() throws SQLException { when(payload.readInt1()).thenReturn(4, 12, 31); when(payload.readInt2()).thenReturn(2018); - Calendar actual = Calendar.getInstance(); - actual.setTimeInMillis(((Timestamp) new MySQLDateBinaryProtocolValue().read(payload, false)).getTime()); - assertThat(actual.get(Calendar.YEAR), is(2018)); - assertThat(actual.get(Calendar.MONTH), is(Calendar.DECEMBER)); - assertThat(actual.get(Calendar.DAY_OF_MONTH), is(31)); + LocalDateTime actual = LocalDateTime.ofInstant(Instant.ofEpochMilli(((Timestamp) new MySQLDateBinaryProtocolValue().read(payload, false)).getTime()), ZoneId.systemDefault()); + assertThat(actual.getYear(), is(2018)); + assertThat(actual.getMonthValue(), is(12)); + assertThat(actual.getDayOfMonth(), is(31)); } @Test void assertReadWithSevenBytes() throws SQLException { when(payload.readInt1()).thenReturn(7, 12, 31, 10, 59, 0); when(payload.readInt2()).thenReturn(2018); - Calendar actual = Calendar.getInstance(); - actual.setTimeInMillis(((Timestamp) new MySQLDateBinaryProtocolValue().read(payload, false)).getTime()); - assertThat(actual.get(Calendar.YEAR), is(2018)); - assertThat(actual.get(Calendar.MONTH), is(Calendar.DECEMBER)); - assertThat(actual.get(Calendar.DAY_OF_MONTH), is(31)); - assertThat(actual.get(Calendar.HOUR_OF_DAY), is(10)); - assertThat(actual.get(Calendar.MINUTE), is(59)); - assertThat(actual.get(Calendar.SECOND), is(0)); + LocalDateTime actual = LocalDateTime.ofInstant(Instant.ofEpochMilli(((Timestamp) new MySQLDateBinaryProtocolValue().read(payload, false)).getTime()), ZoneId.systemDefault()); + assertThat(actual.getYear(), is(2018)); + assertThat(actual.getMonthValue(), is(12)); + assertThat(actual.getDayOfMonth(), is(31)); + assertThat(actual.getHour(), is(10)); + assertThat(actual.getMinute(), is(59)); + assertThat(actual.getSecond(), is(0)); } @Test void assertReadWithElevenBytes() throws SQLException { when(payload.readInt1()).thenReturn(11, 12, 31, 10, 59, 0); when(payload.readInt2()).thenReturn(2018); - when(payload.readInt4()).thenReturn(232323); - Calendar actual = Calendar.getInstance(); - Timestamp actualTimestamp = (Timestamp) new MySQLDateBinaryProtocolValue().read(payload, false); - actual.setTimeInMillis(actualTimestamp.getTime()); - assertThat(actual.get(Calendar.YEAR), is(2018)); - assertThat(actual.get(Calendar.MONTH), is(Calendar.DECEMBER)); - assertThat(actual.get(Calendar.DAY_OF_MONTH), is(31)); - assertThat(actual.get(Calendar.HOUR_OF_DAY), is(10)); - assertThat(actual.get(Calendar.MINUTE), is(59)); - assertThat(actual.get(Calendar.SECOND), is(0)); - assertThat(actualTimestamp.getNanos(), is(232323000)); + when(payload.readInt4()).thenReturn(230000); + LocalDateTime actual = LocalDateTime.ofInstant(Instant.ofEpochMilli(((Timestamp) new MySQLDateBinaryProtocolValue().read(payload, false)).getTime()), ZoneId.systemDefault()); + assertThat(actual.getYear(), is(2018)); + assertThat(actual.getMonthValue(), is(12)); + assertThat(actual.getDayOfMonth(), is(31)); + assertThat(actual.getHour(), is(10)); + assertThat(actual.getMinute(), is(59)); + assertThat(actual.getSecond(), is(0)); + assertThat(actual.getNano(), is(230000000)); } @Test diff --git a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/algorithm/keygen/SnowflakeKeyGenerateAlgorithm.java b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/algorithm/keygen/SnowflakeKeyGenerateAlgorithm.java index abd453950e2..1b24020036f 100644 --- a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/algorithm/keygen/SnowflakeKeyGenerateAlgorithm.java +++ b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/algorithm/keygen/SnowflakeKeyGenerateAlgorithm.java @@ -26,7 +26,9 @@ import org.apache.shardingsphere.sharding.exception.algorithm.keygen.KeyGenerate import org.apache.shardingsphere.sharding.exception.algorithm.keygen.SnowflakeClockMoveBackException; import org.apache.shardingsphere.sharding.spi.KeyGenerateAlgorithm; -import java.util.Calendar; +import java.time.Instant; +import java.time.LocalDateTime; +import java.time.ZoneOffset; import java.util.Properties; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; @@ -85,13 +87,7 @@ public final class SnowflakeKeyGenerateAlgorithm implements KeyGenerateAlgorithm private int maxTolerateTimeDifferenceMillis; static { - Calendar calendar = Calendar.getInstance(); - calendar.set(2016, Calendar.NOVEMBER, 1); - calendar.set(Calendar.HOUR_OF_DAY, 0); - calendar.set(Calendar.MINUTE, 0); - calendar.set(Calendar.SECOND, 0); - calendar.set(Calendar.MILLISECOND, 0); - EPOCH = calendar.getTimeInMillis(); + EPOCH = LocalDateTime.of(2016, 11, 1, 0, 0, 0).toInstant(ZoneOffset.systemDefault().getRules().getOffset(Instant.now())).toEpochMilli(); } @Override diff --git a/features/sharding/plugin/cosid/src/main/java/org/apache/shardingsphere/sharding/cosid/algorithm/keygen/CosIdSnowflakeKeyGenerateAlgorithm.java b/features/sharding/plugin/cosid/src/main/java/org/apache/shardingsphere/sharding/cosid/algorithm/keygen/CosIdSnowflakeKeyGenerateAlgorithm.java index 9d772d3e7ae..5ba8f7cb701 100644 --- a/features/sharding/plugin/cosid/src/main/java/org/apache/shardingsphere/sharding/cosid/algorithm/keygen/CosIdSnowflakeKeyGenerateAlgorithm.java +++ b/features/sharding/plugin/cosid/src/main/java/org/apache/shardingsphere/sharding/cosid/algorithm/keygen/CosIdSnowflakeKeyGenerateAlgorithm.java @@ -29,7 +29,9 @@ import org.apache.shardingsphere.sharding.cosid.algorithm.CosIdAlgorithmConstant import org.apache.shardingsphere.sharding.exception.ShardingPluginException; import org.apache.shardingsphere.sharding.spi.KeyGenerateAlgorithm; -import java.util.Calendar; +import java.time.Instant; +import java.time.LocalDateTime; +import java.time.ZoneOffset; import java.util.Properties; /** @@ -52,13 +54,7 @@ public final class CosIdSnowflakeKeyGenerateAlgorithm implements KeyGenerateAlgo private long epoch; static { - Calendar calendar = Calendar.getInstance(); - calendar.set(2016, Calendar.NOVEMBER, 1); - calendar.set(Calendar.HOUR_OF_DAY, 0); - calendar.set(Calendar.MINUTE, 0); - calendar.set(Calendar.SECOND, 0); - calendar.set(Calendar.MILLISECOND, 0); - DEFAULT_EPOCH = calendar.getTimeInMillis(); + DEFAULT_EPOCH = LocalDateTime.of(2016, 11, 1, 0, 0, 0).toInstant(ZoneOffset.systemDefault().getRules().getOffset(Instant.now())).toEpochMilli(); } @Override diff --git a/proxy/frontend/core/src/main/java/org/apache/shardingsphere/proxy/frontend/ssl/SSLUtils.java b/proxy/frontend/core/src/main/java/org/apache/shardingsphere/proxy/frontend/ssl/SSLUtils.java index 2750ee14abf..b2c67fc4c7d 100644 --- a/proxy/frontend/core/src/main/java/org/apache/shardingsphere/proxy/frontend/ssl/SSLUtils.java +++ b/proxy/frontend/core/src/main/java/org/apache/shardingsphere/proxy/frontend/ssl/SSLUtils.java @@ -23,7 +23,6 @@ import lombok.SneakyThrows; import org.bouncycastle.asn1.x500.X500Name; import org.bouncycastle.asn1.x500.X500NameBuilder; import org.bouncycastle.asn1.x500.style.BCStyle; -import org.bouncycastle.cert.X509v3CertificateBuilder; import org.bouncycastle.cert.jcajce.JcaX509CertificateConverter; import org.bouncycastle.cert.jcajce.JcaX509v3CertificateBuilder; import org.bouncycastle.jce.provider.BouncyCastleProvider; @@ -40,7 +39,9 @@ import java.security.SecureRandom; import java.security.Security; import java.security.cert.CertificateException; import java.security.cert.X509Certificate; -import java.util.Calendar; +import java.time.Instant; +import java.time.LocalDateTime; +import java.time.ZoneId; import java.util.Date; import java.util.concurrent.TimeUnit; @@ -75,15 +76,13 @@ public final class SSLUtils { @SneakyThrows({OperatorCreationException.class, CertificateException.class}) public static X509Certificate generateSelfSignedX509Certificate(final KeyPair keyPair) { long now = System.currentTimeMillis(); - Date startDate = new Date(now - TimeUnit.DAYS.toMillis(1)); + Date startDate = Date.from(LocalDateTime.ofInstant(Instant.ofEpochMilli(now - TimeUnit.DAYS.toMillis(1)), ZoneId.systemDefault()).atZone(ZoneId.systemDefault()).toInstant()); X500Name dnName = new X500NameBuilder(BCStyle.INSTANCE) .addRDN(BCStyle.CN, "").addRDN(BCStyle.OU, "").addRDN(BCStyle.O, "").addRDN(BCStyle.L, "").addRDN(BCStyle.ST, "").addRDN(BCStyle.C, "").addRDN(BCStyle.E, "").build(); BigInteger certSerialNumber = new BigInteger(Long.toString(now)); - Calendar endCalendar = Calendar.getInstance(); - endCalendar.setTime(startDate); - endCalendar.add(Calendar.YEAR, 100); + Date endDate = Date.from( + LocalDateTime.ofInstant(Instant.ofEpochMilli(startDate.getTime() + TimeUnit.DAYS.toMillis(365 * 100)), ZoneId.systemDefault()).atZone(ZoneId.systemDefault()).toInstant()); ContentSigner contentSigner = new JcaContentSignerBuilder("SHA256WithRSA").build(keyPair.getPrivate()); - X509v3CertificateBuilder builder = new JcaX509v3CertificateBuilder(dnName, certSerialNumber, startDate, endCalendar.getTime(), dnName, keyPair.getPublic()); - return new JcaX509CertificateConverter().getCertificate(builder.build(contentSigner)); + return new JcaX509CertificateConverter().getCertificate(new JcaX509v3CertificateBuilder(dnName, certSerialNumber, startDate, endDate, dnName, keyPair.getPublic()).build(contentSigner)); } } diff --git a/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/ssl/SSLUtilsTest.java b/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/ssl/SSLUtilsTest.java index b2bf071db98..9d057ff03cd 100644 --- a/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/ssl/SSLUtilsTest.java +++ b/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/ssl/SSLUtilsTest.java @@ -28,8 +28,9 @@ import java.security.cert.CertificateException; import java.security.cert.CertificateExpiredException; import java.security.cert.CertificateNotYetValidException; import java.security.cert.X509Certificate; -import java.util.Calendar; +import java.time.Instant; import java.util.Date; +import java.util.concurrent.TimeUnit; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.MatcherAssert.assertThat; @@ -51,18 +52,15 @@ class SSLUtilsTest { void assertGenerateSelfSignedX509Certificate() { KeyPair keyPair = SSLUtils.generateRSAKeyPair(); X509Certificate actual = SSLUtils.generateSelfSignedX509Certificate(keyPair); - Calendar calendar = Calendar.getInstance(); - calendar.setTime(new Date()); - calendar.add(Calendar.YEAR, 99); try { actual.checkValidity(new Date()); - actual.checkValidity(calendar.getTime()); - } catch (CertificateExpiredException | CertificateNotYetValidException ex) { + actual.checkValidity(Date.from(Instant.ofEpochMilli(System.currentTimeMillis() + TimeUnit.DAYS.toMillis(365 * 99)))); + } catch (final CertificateExpiredException | CertificateNotYetValidException ex) { fail(ex); } try { actual.verify(keyPair.getPublic()); - } catch (CertificateException | NoSuchAlgorithmException | InvalidKeyException | NoSuchProviderException | SignatureException ex) { + } catch (final CertificateException | NoSuchAlgorithmException | InvalidKeyException | NoSuchProviderException | SignatureException ex) { fail(ex); } assertThrows(SignatureException.class, () -> actual.verify(SSLUtils.generateRSAKeyPair().getPublic())); diff --git a/test/e2e/operation/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/MySQLAutoCommitTestCase.java b/test/e2e/operation/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/MySQLAutoCommitTestCase.java index 2c725b4d7e3..c83052b3493 100644 --- a/test/e2e/operation/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/MySQLAutoCommitTestCase.java +++ b/test/e2e/operation/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/MySQLAutoCommitTestCase.java @@ -59,8 +59,7 @@ public final class MySQLAutoCommitTestCase extends BaseTransactionTestCase { assertFalse(executeQueryWithLog(connection2, "select * from account;").next()); connection1.commit(); Awaitility.await().atMost(1L, TimeUnit.SECONDS).pollDelay(200L, TimeUnit.MILLISECONDS).until( - () -> executeQueryWithLog(connection2, "select * from account;").next() - ); + () -> executeQueryWithLog(connection2, "select * from account;").next()); assertTrue(executeQueryWithLog(connection2, "select * from account;").next()); } } diff --git a/test/e2e/operation/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/PostgreSQLAutoCommitTestCase.java b/test/e2e/operation/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/PostgreSQLAutoCommitTestCase.java index 1e4debc7788..09b53eecaea 100644 --- a/test/e2e/operation/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/PostgreSQLAutoCommitTestCase.java +++ b/test/e2e/operation/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/autocommit/PostgreSQLAutoCommitTestCase.java @@ -58,8 +58,7 @@ public final class PostgreSQLAutoCommitTestCase extends BaseTransactionTestCase assertFalse(executeQueryWithLog(connection2, "select * from account;").next()); connection1.commit(); Awaitility.await().atMost(1L, TimeUnit.SECONDS).pollDelay(200L, TimeUnit.MILLISECONDS).until( - () -> executeQueryWithLog(connection2, "select * from account;").next() - ); + () -> executeQueryWithLog(connection2, "select * from account;").next()); assertTrue(executeQueryWithLog(connection2, "select * from account;").next()); } }