From 9009d11c80e73bc757f7439602fbd0837d64c28c Mon Sep 17 00:00:00 2001 From: Rahul Barigidad Date: Tue, 24 Sep 2024 17:27:48 +0000 Subject: [PATCH] [#23837] YSQL: Temporarily disable some tests with Connection Manager enabled Summary: This diff (temporarily) disables the following tests when run with Connection Manager: TestPgAuthorization.testAttributes- Role OID-based pool design is needed in addition to waiting for connection count-related statistics to pass (recreate user operations, connection limit per user checks). Note that conn limit per user support has been added - D33469, but the test was left to be modified as a TODO because of the need for ROLE OID pool support TestPgAuthorization.testLongPasswords - Long passwords cause I/O errors with Connection Manager (this support is needed), this test further needs ROLE OID pooling support in order to pass Jira: DB-12741 Test Plan: Jenkins: enable connection manager, test regex: .*testAttributes.*|.*LongPasswords.* Reviewers: skumar Reviewed By: skumar Differential Revision: https://phorge.dev.yugabyte.com/D38379 --- .../src/test/java/org/yb/pgsql/BasePgSQLTest.java | 9 +++++++++ .../test/java/org/yb/pgsql/TestPgAuthorization.java | 13 +++++++++++++ 2 files changed, 22 insertions(+) diff --git a/java/yb-pgsql/src/test/java/org/yb/pgsql/BasePgSQLTest.java b/java/yb-pgsql/src/test/java/org/yb/pgsql/BasePgSQLTest.java index 751483152d5f..65bdf769b112 100644 --- a/java/yb-pgsql/src/test/java/org/yb/pgsql/BasePgSQLTest.java +++ b/java/yb-pgsql/src/test/java/org/yb/pgsql/BasePgSQLTest.java @@ -188,6 +188,15 @@ public class BasePgSQLTest extends BaseMiniClusterTest { "ability to configure debug logs for connection manager to be at the same levels as " + "tserver log levels."; + protected static final String LONG_PASSWORD_SUPPORT_NEEDED = + "(DB-10387) This test leads to certain I/O errors due to the usage of long passwords when " + + "Connection Manager is enabled. Skipping this test with Connection Manager enabled."; + + protected static final String RECREATE_USER_SUPPORT_NEEDED = + "(DB-10760) This test needs stricter statistic updates for when roles are recreated when " + + "Connection Manager is enabled. Skipping this test with Connection Manager enabled " + + "until the relevant code is pushed to master."; + // Warmup modes for Connection Manager during test runs. protected static enum ConnectionManagerWarmupMode { NONE, diff --git a/java/yb-pgsql/src/test/java/org/yb/pgsql/TestPgAuthorization.java b/java/yb-pgsql/src/test/java/org/yb/pgsql/TestPgAuthorization.java index dc78ec6621d8..90221d4260e1 100644 --- a/java/yb-pgsql/src/test/java/org/yb/pgsql/TestPgAuthorization.java +++ b/java/yb-pgsql/src/test/java/org/yb/pgsql/TestPgAuthorization.java @@ -356,6 +356,11 @@ public void testRoleChanging() throws Exception { @Test public void testAttributes() throws Exception { + // (DB-10760) Role OID-based pool design is needed in addition to waiting + // for connection count-related statistics for this test to pass when + // Connection Manager is enabled. Skipping this test temporarily. + assumeFalse(BasePgSQLTest.RECREATE_USER_SUPPORT_NEEDED, isTestRunningWithConnectionManager()); + // NOTE: The INHERIT attribute is tested separately in testMembershipInheritance. try (Statement statement = connection.createStatement()) { statement.execute("CREATE ROLE unprivileged"); @@ -3225,6 +3230,14 @@ public void testMultiNodeOwnershipChanges() throws Exception { @Test public void testLongPasswords() throws Exception { + // (DB-10387) (DB-10760) Using long passwords with Connection Manager + // causes I/O errors during test execution. Skip this test temporarily + // until support for the same can be provided with Connection Manager. + // This test will further need the support of role OID-based pooling + // to help support recreate role operations (DROP ROLE followed by + // CREATE ROLE). + assumeFalse(BasePgSQLTest.LONG_PASSWORD_SUPPORT_NEEDED, isTestRunningWithConnectionManager()); + try (Statement statement = connection.createStatement()) { statement.execute("CREATE ROLE unprivileged");