Details
-
Task
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
-
ghx-label-1
Description
When running the following test with "test-with-docker", I sometimes (but not always) see it fail.
failure.test_failpoints.TestFailpoints.test_failpoints[table_format: hbase/none | exec_option: {'batch_size': 0, 'num_nodes': 0, 'disable_codegen_rows_threshold': 0, 'disable_codegen': False, 'abort_on_error': 1, 'debug_action': None, 'exec_single_node_rows_threshold': 0} | mt_dop: 4 | location: OPEN | action: MEM_LIMIT_EXCEEDED | query: select * from alltypessmall union all select * from alltypessmall]
The error I see is an NPE, and, correlating some logs, I think it's this:
26420:I0524 14:30:14.696190 12271 jni-util.cc:230] java.lang.NullPointerException
26421- at org.apache.impala.catalog.HBaseTable.getRegionSize(HBaseTable.java:652)
26422- at org.apache.impala.catalog.HBaseTable.getEstimatedRowStatsForRegion(HBaseTable.java:520)
26423- at org.apache.impala.catalog.HBaseTable.getEstimatedRowStats(HBaseTable.java:605)
26424- at org.apache.impala.planner.HBaseScanNode.computeStats(HBaseScanNode.java:203)
26425- at org.apache.impala.planner.HBaseScanNode.init(HBaseScanNode.java:127)
26426- at org.apache.impala.planner.SingleNodePlanner.createScanNode(SingleNodePlanner.java:1344)
26427- at org.apache.impala.planner.SingleNodePlanner.createTableRefNode(SingleNodePlanner.java:1514)
26428- at org.apache.impala.planner.SingleNodePlanner.createTableRefsPlan(SingleNodePlanner.java:776)
26429- at org.apache.impala.planner.SingleNodePlanner.createSelectPlan(SingleNodePlanner.java:614)
26430- at org.apache.impala.planner.SingleNodePlanner.createQueryPlan(SingleNodePlanner.java:257)
26431- at org.apache.impala.planner.SingleNodePlanner.createUnionPlan(SingleNodePlanner.java:1563)
26432- at org.apache.impala.planner.SingleNodePlanner.createUnionPlan(SingleNodePlanner.java:1630)
26433- at org.apache.impala.planner.SingleNodePlanner.createQueryPlan(SingleNodePlanner.java:275)
26434- at org.apache.impala.planner.SingleNodePlanner.createSingleNodePlan(SingleNodePlanner.java:147)
26435- at org.apache.impala.planner.Planner.createPlan(Planner.java:101)
26436- at org.apache.impala.planner.Planner.createParallelPlans(Planner.java:230)
26437- at org.apache.impala.service.Frontend.createExecRequest(Frontend.java:938)
26438- at org.apache.impala.service.Frontend.createExecRequest(Frontend.java:1062)
26439- at org.apache.impala.service.JniFrontend.createExecRequest(JniFrontend.java:156)
26440:I0524 14:30:14.796514 12271 status.cc:125] NullPointerException: null
26441- @ 0x1891839 impala::Status::Status()
The test-with-docker stuff starts HBase at run time independently of data load in a way that our other tests don't, and I suspect HBase simply hasn't loaded the tables.
I have a change forthcoming to address this.