Details
-
Bug
-
Status: Resolved
-
Critical
-
Resolution: Fixed
-
Impala 3.1.0
-
None
-
ghx-label-1
Description
This is a Catalog V2 only bug
NPE is thrown when trying to getPartialInfo() from an IncompleteTable (result of ivalidate) and cause_ is null.
@Override public TGetPartialCatalogObjectResponse getPartialInfo( TGetPartialCatalogObjectRequest req) throws TableLoadingException { Throwables.propagateIfPossible(cause_, TableLoadingException.class); throw new TableLoadingException(cause_.getMessage()); <----- }
I1004 16:51:28.845305 85380 jni-util.cc:308] java.lang.NullPointerException at org.apache.impala.catalog.IncompleteTable.getPartialInfo(IncompleteTable.java:140) at org.apache.impala.catalog.CatalogServiceCatalog.getPartialCatalogObject(CatalogServiceCatalog.java:2171) at org.apache.impala.service.JniCatalog.getPartialCatalogObject(JniCatalog.java:236)
Actual caller stack trace is this.
I1004 16:51:21.666422 67179 Frontend.java:1086] Analyzing query: compute stats ads I1004 16:51:28.850023 67179 jni-util.cc:308] org.apache.impala.catalog.local.LocalCatalogException: Could not load table parnal.ads from metastore at org.apache.impala.catalog.local.LocalTable.loadTableMetadata(LocalTable.java:128) at org.apache.impala.catalog.local.LocalTable.load(LocalTable.java:89) at org.apache.impala.catalog.local.LocalDb.getTable(LocalDb.java:119) at org.apache.impala.analysis.StmtMetadataLoader.getMissingTables(StmtMetadataLoader.java:251) at org.apache.impala.analysis.StmtMetadataLoader.loadTables(StmtMetadataLoader.java:140) at org.apache.impala.analysis.StmtMetadataLoader.loadTables(StmtMetadataLoader.java:116) at org.apache.impala.service.Frontend.doCreateExecRequest(Frontend.java:1118) at org.apache.impala.service.Frontend.getTExecRequest(Frontend.java:1092) at org.apache.impala.service.Frontend.createExecRequest(Frontend.java:1064) at org.apache.impala.service.JniFrontend.createExecRequest(JniFrontend.java:158) Caused by: org.apache.thrift.TException: TGetPartialCatalogObjectResponse(status:TStatus(status_code:GENERAL, error_msgs:[NullPointerException: null]), lookup_status:OK) at org.apache.impala.catalog.local.CatalogdMetaProvider.sendRequest(CatalogdMetaProvider.java:354) at org.apache.impala.catalog.local.CatalogdMetaProvider.access$100(CatalogdMetaProvider.java:163) at org.apache.impala.catalog.local.CatalogdMetaProvider$5.call(CatalogdMetaProvider.java:565) at org.apache.impala.catalog.local.CatalogdMetaProvider$5.call(CatalogdMetaProvider.java:560) at org.apache.impala.catalog.local.CatalogdMetaProvider$1.call(CatalogdMetaProvider.java:411) at com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4767) at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3568) at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2350) at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2313) at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2228) at com.google.common.cache.LocalCache.get(LocalCache.java:3965) at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4764) at org.apache.impala.catalog.local.CatalogdMetaProvider.loadWithCaching(CatalogdMetaProvider.java:407) at org.apache.impala.catalog.local.CatalogdMetaProvider.loadTable(CatalogdMetaProvider.java:556) at org.apache.impala.catalog.local.LocalTable.loadTableMetadata(LocalTable.java:126) ... 9 more