diff --git a/app/server/appsmith-plugins/mysqlPlugin/src/main/java/com/external/plugins/MySqlPlugin.java b/app/server/appsmith-plugins/mysqlPlugin/src/main/java/com/external/plugins/MySqlPlugin.java index dfb8bb0d02..0c00898f2b 100644 --- a/app/server/appsmith-plugins/mysqlPlugin/src/main/java/com/external/plugins/MySqlPlugin.java +++ b/app/server/appsmith-plugins/mysqlPlugin/src/main/java/com/external/plugins/MySqlPlugin.java @@ -346,7 +346,6 @@ public class MySqlPlugin extends BasePlugin { }, Connection::close ) - .timeout(Duration.ofSeconds(VALIDATION_CHECK_TIMEOUT)) .onErrorMap(TimeoutException.class, error -> new StaleConnectionException()) .onErrorMap(PoolShutdownException.class, error -> new StaleConnectionException()) .onErrorMap(R2dbcNonTransientResourceException.class, error -> new StaleConnectionException()) @@ -628,7 +627,6 @@ public class MySqlPlugin extends BasePlugin { }, Connection::close ) - .timeout(Duration.ofSeconds(VALIDATION_CHECK_TIMEOUT)) .onErrorMap(TimeoutException.class, error -> new StaleConnectionException()) .onErrorMap(PoolShutdownException.class, error -> new StaleConnectionException()) .subscribeOn(scheduler); diff --git a/app/server/appsmith-plugins/mysqlPlugin/src/test/java/com/external/plugins/MySqlPluginTest.java b/app/server/appsmith-plugins/mysqlPlugin/src/test/java/com/external/plugins/MySqlPluginTest.java index d5e032545b..16f491c2e1 100755 --- a/app/server/appsmith-plugins/mysqlPlugin/src/test/java/com/external/plugins/MySqlPluginTest.java +++ b/app/server/appsmith-plugins/mysqlPlugin/src/test/java/com/external/plugins/MySqlPluginTest.java @@ -422,6 +422,25 @@ public class MySqlPluginTest { .verifyComplete(); } + @Test + public void testExecuteWithLongRunningQuery() { + Mono dsConnectionMono = pluginExecutor.datasourceCreate(dsConfig); + + ActionConfiguration actionConfiguration = new ActionConfiguration(); + actionConfiguration.setBody("SELECT SLEEP(20);"); + + Mono executeMono = dsConnectionMono.flatMap(conn -> pluginExecutor.executeParameterized(conn, + new ExecuteActionDTO(), dsConfig, actionConfiguration)); + StepVerifier.create(executeMono) + .assertNext(obj -> { + ActionExecutionResult result = (ActionExecutionResult) obj; + assertNotNull(result); + assertTrue(result.getIsExecutionSuccess()); + assertNotNull(result.getBody()); + }) + .verifyComplete(); + } + @Test public void testStaleConnectionCheck() { ActionConfiguration actionConfiguration = new ActionConfiguration();