Oracle JDBC catalog queries log IllegalStateException after upgrading to 4.1.4
Steps to reproduce the behavior (Required)
After upgrading from 4.1.1 to 4.1.4, queries against an Oracle JDBC catalog started producing warnings in the FE log.
Create a JDBC catalog pointing to Oracle :
CREATE EXTERNAL CATALOG oracle_repro PROPERTIES ( "type" = "jdbc", "user" = "", "password" = "", "jdbc_uri" = "jdbc:oracle:thin:@:1521/", "driver_url" = "file:///opt/jdbc/ojdbc10-19.18.0.0.jar", "driver_class" = "oracle.jdbc.driver.OracleDriver" );
Query an Oracle table
SELECT * FROM oracle_repro.table.tables;
Expected behavior (Required)
The query returns the correct result without statistics lookup exceptions.
Real behavior (Required)
The query returns the correct result, but the FE logs this warning:
[CachedStatisticStorage.lambda$getConnectorTableStatistics$7():228] Get connector table column statistics filed, exception: java.util.concurrent.CompletionException: java.lang.IllegalStateException at com.starrocks.connector.statistics.ConnectorColumnStatsCacheLoader.lambda$asyncLoadAll$1(ConnectorColumnStatsCacheLoader.java:113) Caused by: java.lang.IllegalStateException at com.google.common.base.Preconditions.checkState(Preconditions.java:496) at com.starrocks.connector.statistics.StatisticsUtils.getTableByUUID(StatisticsUtils.java:43) at com.starrocks.connector.statistics.ConnectorColumnStatsCacheLoader.queryStatisticsData(ConnectorColumnStatsCacheLoader.java:134) at com.starrocks.connector.statistics.ConnectorColumnStatsCacheLoader.lambda$asyncLoadAll$1(ConnectorColumnStatsCacheLoader.java:103)
StarRocks version (Required)
Reproduced on 4.1.4. The same queries on 4.1.1 returned correct results without this warning.
Source: StarRocks/starrocks