You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@phoenix.apache.org by st...@apache.org on 2021/09/14 16:44:46 UTC
[phoenix] branch 4.x updated: PHOENIX-6543 de-flake AuditLoggingIT
This is an automated email from the ASF dual-hosted git repository.
stoty pushed a commit to branch 4.x
in repository https://gitbox.apache.org/repos/asf/phoenix.git
The following commit(s) were added to refs/heads/4.x by this push:
new 1bafe9b PHOENIX-6543 de-flake AuditLoggingIT
1bafe9b is described below
commit 1bafe9b2807f91d6c48a8bf5dbb91fdf1494a43a
Author: Istvan Toth <st...@apache.org>
AuthorDate: Tue Sep 14 10:56:37 2021 +0200
PHOENIX-6543 de-flake AuditLoggingIT
---
.../org/apache/phoenix/end2end/AuditLoggingIT.java | 169 ++++++++++++---------
1 file changed, 101 insertions(+), 68 deletions(-)
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/AuditLoggingIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/AuditLoggingIT.java
index e83ff90..4458306 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/AuditLoggingIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/AuditLoggingIT.java
@@ -49,6 +49,7 @@ public class AuditLoggingIT extends ParallelStatsDisabledIT {
stmt.executeQuery(selectQuery);
conn.commit();
+ Thread.sleep(4000);
ResultSet rs = stmt.executeQuery(getLogsQuery);
assertFalse(rs.next());
} finally {
@@ -65,27 +66,37 @@ public class AuditLoggingIT extends ParallelStatsDisabledIT {
String getLogsQuery = "select * from SYSTEM.LOG WHERE TABLE_NAME='TEST2' order by start_time";
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
props.setProperty(QueryServices.LOG_LEVEL, LogLevel.TRACE.name());
- Connection conn = DriverManager.getConnection(getUrl(), props);
- conn.setAutoCommit(true);
- try {
- conn.createStatement().execute(createqQery);
- conn.createStatement().execute(upsertQuery);
- ResultSet rs = conn.createStatement().executeQuery(selectQuery);
+ try (Connection conn = DriverManager.getConnection(getUrl(), props);
+ Statement stmt = conn.createStatement();
+ ){
+ conn.setAutoCommit(true);
+ stmt.execute(createqQery);
+ stmt.execute(upsertQuery);
+ ResultSet rs = stmt.executeQuery(selectQuery);
assertTrue(rs.next());
assertFalse(rs.next());
rs.close();
- ResultSet rs2 = conn.createStatement().executeQuery(getLogsQuery);
- assertTrue(rs2.next());
- assertEquals(rs2.getString(7), selectQuery);
- assertFalse(rs2.next());
- } finally {
- conn.close();
+ int retryCount=10;
+ while (true) {
+ try {
+ ResultSet rs2 = stmt.executeQuery(getLogsQuery);
+ assertTrue(rs2.next());
+ assertEquals(rs2.getString(7), selectQuery);
+ assertFalse(rs2.next());
+ break;
+ } catch (AssertionError e) {
+ if(retryCount-- <= 0) {
+ throw e;
+ }
+ Thread.sleep(4000);
+ }
+ }
}
}
@Test
- public void testLoggingDMLAandDDL() throws Exception {
+ public void testLoggingDMLAndDDL() throws Exception {
String createqQery = "create table test3 (mykey integer not null primary key," +
" mycolumn varchar)";
String upsertQuery = "upsert into test3 values (1,'Hello')";
@@ -93,31 +104,41 @@ public class AuditLoggingIT extends ParallelStatsDisabledIT {
String getLogsQuery = "select * from SYSTEM.LOG WHERE TABLE_NAME='TEST3' order by start_time";
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
props.setProperty(QueryServices.AUDIT_LOG_LEVEL, LogLevel.INFO.name());
- Connection conn = DriverManager.getConnection(getUrl(), props);
- conn.setAutoCommit(true);
- try {
- conn.createStatement().execute(createqQery);
- conn.createStatement().execute(upsertQuery);
+ try (Connection conn = DriverManager.getConnection(getUrl(), props);
+ Statement stmt = conn.createStatement();
+ ){
+ conn.setAutoCommit(true);
+
+ stmt.execute(createqQery);
+ stmt.execute(upsertQuery);
ResultSet rs = conn.createStatement().executeQuery(selectQuery);
assertTrue(rs.next());
assertFalse(rs.next());
rs.close();
- ResultSet rs2 = conn.createStatement().executeQuery(getLogsQuery);
- assertTrue(rs2.next());
- assertEquals(rs2.getString(7), createqQery);
- assertTrue(rs2.next());
- assertEquals(rs2.getString(7), upsertQuery);
-
- assertFalse(rs2.next());
- } finally {
- conn.close();
+ int retryCount=10;
+ while (true) {
+ try {
+ ResultSet rs2 = stmt.executeQuery(getLogsQuery);
+ assertTrue(rs2.next());
+ assertEquals(rs2.getString(7), createqQery);
+ assertTrue(rs2.next());
+ assertEquals(rs2.getString(7), upsertQuery);
+ assertFalse(rs2.next());
+ break;
+ } catch (AssertionError e) {
+ if(retryCount-- <= 0) {
+ throw e;
+ }
+ Thread.sleep(4000);
+ }
+ }
}
}
@Test
public void testLoggingDMLAandDDLandSelect() throws Exception {
- String createqQery = "create table test4 (mykey integer not null primary key," +
+ String createqQuery = "create table test4 (mykey integer not null primary key," +
" mycolumn varchar)";
String upsertQuery = "upsert into test4 values (1,'Hello')";
String selectQuery = "select * from test4";
@@ -125,29 +146,36 @@ public class AuditLoggingIT extends ParallelStatsDisabledIT {
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
props.setProperty(QueryServices.AUDIT_LOG_LEVEL, LogLevel.INFO.name());
props.setProperty(QueryServices.LOG_LEVEL, LogLevel.TRACE.name());
- Connection conn = DriverManager.getConnection(getUrl(), props);
- conn.setAutoCommit(true);
- try {
- Statement stat = conn.createStatement();
- stat.execute(createqQery);
- stat.execute(upsertQuery);
- ResultSet rs = stat.executeQuery(selectQuery);
+ try (Connection conn = DriverManager.getConnection(getUrl(), props);
+ Statement stmt = conn.createStatement();
+ ){
+ conn.setAutoCommit(true);
+ stmt.execute(createqQuery);
+ stmt.execute(upsertQuery);
+ ResultSet rs = stmt.executeQuery(selectQuery);
assertTrue(rs.next());
assertFalse(rs.next());
rs.close();
- ResultSet rs2 = conn.createStatement().executeQuery(getLogsQuery);
- assertTrue(rs2.next());
- assertEquals(rs2.getString(7), createqQery);
- assertTrue(rs2.next());
- assertEquals(rs2.getString(7), upsertQuery);
- assertTrue(rs2.next());
- assertEquals(rs2.getString(7), selectQuery);
-
- assertFalse(rs2.next());
-
- } finally {
- conn.close();
+ int retryCount=10;
+ while (true) {
+ try {
+ ResultSet rs2 = conn.createStatement().executeQuery(getLogsQuery);
+ assertTrue(rs2.next());
+ assertEquals(rs2.getString(7), createqQuery);
+ assertTrue(rs2.next());
+ assertEquals(rs2.getString(7), upsertQuery);
+ assertTrue(rs2.next());
+ assertEquals(rs2.getString(7), selectQuery);
+ assertFalse(rs2.next());
+ break;
+ } catch (AssertionError e) {
+ if(retryCount-- <= 0) {
+ throw e;
+ }
+ Thread.sleep(4000);
+ }
+ }
}
}
@@ -161,41 +189,46 @@ public class AuditLoggingIT extends ParallelStatsDisabledIT {
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
props.setProperty(QueryServices.AUDIT_LOG_LEVEL, LogLevel.INFO.name());
props.setProperty(QueryServices.LOG_LEVEL, LogLevel.TRACE.name());
- Connection conn = DriverManager.getConnection(getUrl(), props);
- conn.setAutoCommit(true);
- try {
- Statement stat = conn.createStatement();
- stat.execute(createqQery);
-
+ try (Connection conn = DriverManager.getConnection(getUrl(), props);
+ Statement stmt = conn.createStatement();
+ PreparedStatement p = conn.prepareStatement(upsertQuery);
+ ){
+ conn.setAutoCommit(true);
+ stmt.execute(createqQery);
- PreparedStatement p = conn.prepareStatement(upsertQuery);
p.setInt(1, 1);
p.setString(2, "foo");
-
p.execute();
p.setInt(1, 2);
p.setString(2, "bar");
-
p.execute();
- ResultSet rs = stat.executeQuery(selectQuery);
+ ResultSet rs = stmt.executeQuery(selectQuery);
assertTrue(rs.next());
assertTrue(rs.next());
assertFalse(rs.next());
rs.close();
- ResultSet rs2 = conn.createStatement().executeQuery(getLogsQuery);
- assertTrue(rs2.next());
- assertTrue(rs2.next());
- assertEquals("1,foo", rs2.getString(13));
- assertTrue(rs2.next());
- assertEquals( "2,bar", rs2.getString(13));
- assertTrue(rs2.next());
- assertFalse(rs2.next());
-
- } finally {
- conn.close();
+ int retryCount=10;
+ while (true) {
+ try {
+ ResultSet rs2 = conn.createStatement().executeQuery(getLogsQuery);
+ assertTrue(rs2.next());
+ assertTrue(rs2.next());
+ assertEquals("1,foo", rs2.getString(13));
+ assertTrue(rs2.next());
+ assertEquals( "2,bar", rs2.getString(13));
+ assertTrue(rs2.next());
+ assertFalse(rs2.next());
+ break;
+ } catch (AssertionError e) {
+ if(retryCount-- <= 0) {
+ throw e;
+ }
+ Thread.sleep(4000);
+ }
+ }
}
}