APAR status
Closed as fixed if next.
Error description
DB21034E The command was processed as an SQL statement because it was not a valid Command Line Processor command. During SQL processing it returned: SQL5105N The statement failed because a Big SQL component encountered an error. Component receiving the error: "". Component returning the error: "HIVE". Log entry identifier: "[BSL-0-15e8ce4c3]". SQLSTATE=58040 In the bigsql.log, you will see an error similar to: 2019-03-08 18:24:45,763 WARN com.ibm.biginsights.catalog.translator.hive.Hi veExceptionTranslator [Thread-277] : [BSL-0-15e8ce4c3]: null java.lang.NumberFormatException at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstanc e(NativeConstructorAccessorImpl.java:88) at sun.reflect.Delegat ingConstructorAccessorImpl.newInstance(DelegatingConstructorAcce ssorImpl.java:57) at java.lang.reflect.Constructor.newInstance(Constructor.java:437) at java.util.concurrent.ForkJoinTask.getThrowableException(ForkJ oinTask.java:609) at java.util.concurrent.ForkJoinTask.reportEx ception(ForkJoinTask.java:688) at java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:731) at java.util.concurrent.ForkJoinPool.invoke(ForkJoinPool.java:26 27) at com.ibm.biginsights.bigsql.stats.ColumnReader.aggColumnS tats(ColumnReader.java:42) at com.ibm.biginsights.biga.udf.stat s.StatsUpdater.aggColumnStats(StatsUpdater.java:249) at com.ibm .biginsights.biga.udf.stats.StatsUpdater.etlStatistics(StatsUpda ter.java:172) at com.ibm.biginsights.biga.udf.stats.StatsUpdate r.doETL(StatsUpdater.java:114) at com.ibm.biginsights.biga.udf. stats.AnalyzeTool.analyze(AnalyzeTool.java:142) at com.ibm.biginsights.biga.udf.stats.AnalyzeTool.analyze (nalyzeTool.java:69) at com.ibm.biginsights.biga.udf.BIGSQL_DDL.performAnalyze(BIGSQL _DDL.java:1410) at com.ibm.biginsights.biga.udf.BIGSQL_DDL.doAn alyzeStatement(BIGSQL_DDL.java:1321) at com.ibm.biginsights.big a.udf.BIGSQL_DDL.processDDL(BIGSQL_DDL.java:234) Caused by: java.lang.NumberFormatException (...) Caused by: java.lang.NumberFormatException: 1340359454812772127 at com.goo gle.common.primitives.UnsignedLongs.parseUnsignedLong(UnsignedLo ngs.java:307) at com.google.common.primitives.UnsignedLong.valu eOf(UnsignedLong.java:137) at com.google.common.primitives.Unsi gnedLong.valueOf(UnsignedLong.java:125) at com.ibm.biginsights. bigsql.stats.PartitionReader.read(PartitionReader.java:116) at com.ibm.biginsights.bigsql.stats.PartitionReader.access$100(Part itionReader.java:30) at com.ibm.biginsights.bigsql.stats.Partit ionReader$ReadPartition.computeDirectly(PartitionReader.java:172 ) at com.ibm.biginsights.bigsql.stats.PartitionReader$ReadParti tion.compute(PartitionReader.java:158) ... 6 more SELECT statements run against this table will succeed. An ANALYZE statement that does not collect column statistics (such as "analyze table <sch>.<tablename> COMPUTE STATISTICS") will succeed. The value triggering the exception has a hidden character at the end. Using a text editor to display hidden characters shows that the last digit of is a null character (0x00). This is causing the number exception. Caused by: java.lang.NumberFormatException: 933061816423488757^@ at com.go ogle.common.primitives.UnsignedLongs.parseUnsignedLong(UnsignedL ongs.java:307) at com.google.common.primitives.UnsignedLong.val ueOf(UnsignedLong.java:137) at com.google.common.primitives.Uns ignedLong.valueOf(UnsignedLong.java:125) at com.ibm.biginsights .bigsql.stats.PartitionReader.read(PartitionReader.java:116) at com.ibm.biginsights.bigsql.stats.PartitionReader.access$100(P artitionReader.java:30) at com.ibm.biginsights.bigsql.stats.Par titionReader$ReadPartition.computeDirectly(PartitionReader.java: 172) at com.ibm.biginsights.bigsql.stats.PartitionReader$ReadPa rtition.compute(PartitionReader.java:158) ... 6 more The root cause appears to be an issue in the Guava library causing the last digit of some negative long values to be written incorrectly (as a null character). . Note that the fix for this issue prevents future occurrences but cannot clean up pre-existing incorrect statistics. The error comes from reading the synopsis data from disk; one or more of the values in the *.akmv files is essentially corrupted. Incremental Analyze (the default for partitioned tables) involves storing data for each partition long-term on disk, which is read each time an Analyze is performed, along with the new data being scanned (if any). The corrupted data could be present in this persisted synopsis data. The steps in the local fix (removing the ._biginsights_stats directories for any affected tables) must be followed to clean up any occurrences of this issue, even after applying this fix.
Local fix
In some instances, removing the ._biginsights_stats directory and re-running ANALYZE worked. If this does not work, recreate the table.
Problem summary
Please see problem description.
Problem conclusion
Temporary fix
Comments
APAR Information
APAR number
PH19970
Reported component name
IBM BIG SQL
Reported component ID
5737E7400
Reported release
502
Status
CLOSED FIN
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2019-12-05
Closed date
2020-09-09
Last modified date
2020-09-09
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Applicable component levels
[{"Line of Business":{"code":"LOB10","label":"Data and AI"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSCRJT","label":"IBM Db2 Big SQL"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"502"}]
Document Information
Modified date:
10 September 2020