[ https://issues.apache.org/jira/browse/TRAFODION-179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16388672#comment-16388672 ]
Sandhya Sundaresan commented on TRAFODION-179: ---------------------------------------------- JDBC regression tests which test batch udate and batch insert don't show this as an issue anymore . Several fixes have gone in. So resolving this as "Fixed". > LP Bug: 1274962 - EXECUTE.BATCH update creates core-file > -------------------------------------------------------- > > Key: TRAFODION-179 > URL: https://issues.apache.org/jira/browse/TRAFODION-179 > Project: Apache Trafodion > Issue Type: Bug > Components: sql-cmp > Reporter: Guy Groulx > Assignee: Sandhya Sundaresan > Priority: Critical > > Using atomics suite. > Test 10 is an update test using JDBC batch feature. > Test 12 is a delete test using JDBC batch feature. > Test is configured to batch 500 rows and then does execute batch. See code > for update. Similar code for delete. > /* Prepare the insert statement. */ > String sqlStmtCmd = "UPDATE " + dbTableName + " SET COL1=?, COL2=? WHERE > CNT = ?"; > try { > sqlStmt = dbConnection.prepareStatement(sqlStmtCmd); > } catch (SQLException e) { > log_error("Exception in update_with_rowsets\n"); > return(e.getErrorCode()); > } > ... > for (i = 0; i < (int)numbtmf; i++) { <== numbtmf is a passed parameter, > set to 500 in my tests. > try { > sqlStmt.setLong(1, up_col1); > sqlStmt.setLong(2, up_col2); > sqlStmt.setLong(3, hv_cnt); > sqlStmt.addBatch(); > hv_cnt++; > if (hv_cnt >= hv_cnt2) hv_cnt = hv_cnt1; /* Need to restart. */ > } catch (SQLException e) { > log_error("Exception in update_with_rowsets\n"); > SQLException nextException; > nextException = e; > retcode = e.getErrorCode(); > do { > log_error(nextException.getMessage() + " State: " + > nextException.getSQLState() + "\n"); > } while ((nextException = nextException.getNextException()) != null); > } > } > beginTXN(); > try { > resultCountL = sqlStmt.executeBatch(); <== This is where is hangs > for a very long time. > rowCnt+=resultCountL.length; > if (resultCountL.length != numbtmf) { > log_error("Error UPDATING!! resultCount: " + resultCountL.length + > "\n"); > retcode = 1; > } else { > for (i = 0; i < resultCountL.length; i++) { > if ((resultCountL[i] != 1) && (resultCountL[i] != > Statement.SUCCESS_NO_INFO)) { > log_error("Error UPDATING!! resultCount: " + resultCountL[i] + > "\n"); > retcode = resultCountL[i]; > break; > } > } > } > sqlStmt.clearBatch(); > } catch (SQLException e) { > log_error("Exception in update_with_rowsets\n"); > SQLException nextException; > nextException = e; > retcode = e.getErrorCode(); > do { > log_error(nextException.getMessage() + " State: " + > nextException.getSQLState() + "\n"); > } while ((nextException = nextException.getNextException()) != null); > } > commitTXN(); > return retcode; > Eventually, get: > Exception in update_with_rowsets > Exception in update_with_rowsets > Batch Update Failed, See next exception for details State: HY000 > Batch Update Failed, See next exception for details State: HY000 > *** ERROR[8448] Unable to access Hbase interface. Call to > ExpHbaseInterface::insertRows returned error HBASE_ACCESS_ERROR(-705). Cause: > org.apache.hadoop.hbase.client.RetriesExhaustedException: Failed after > attempts=10, exceptions: > Fri Jan 31 14:38:42 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:38:43 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:38:44 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:38:45 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:38:47 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:38:49 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:38:53 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:38:57 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:39:05 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:39:21 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > org.apache.hadoop.hbase.client.ServerCallable.withRetries(ServerCallable.java:183) > org.apache.hadoop.hbase.client.transactional.TransactionalTable.put(TransactionalTable.java:306) > org.apache.hadoop.hbase.client.transactional.RMInterface.put(RMInterface.java:155) > org.trafodion.sql.HBaseAccess.HTableClient.insertRows(HTableClient.java:500) > . [2014-01-31 14:39:21] State: X08CG > *** ERROR[8448] Unable to access Hbase interface. Call to > ExpHbaseInterface::insertRows returned error HBASE_ACCESS_ERROR(-705). Cause: > org.apache.hadoop.hbase.client.RetriesExhaustedException: Failed after > attempts=10, exceptions: > Fri Jan 31 14:38:42 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:38:43 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:38:44 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:38:45 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:38:47 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:38:49 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:38:53 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:38:57 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:39:05 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > Fri Jan 31 14:39:21 UTC 2014, > org.apache.hadoop.hbase.client.transactional.TransactionalTable$7@1c36686e, > java.lang.NullPointerException > org.apache.hadoop.hbase.client.ServerCallable.withRetries(ServerCallable.java:183) > org.apache.hadoop.hbase.client.transactional.TransactionalTable.put(TransactionalTable.java:306) > org.apache.hadoop.hbase.client.transactional.RMInterface.put(RMInterface.java:155) > org.trafodion.sql.HBaseAccess.HTableClient.insertRows(HTableClient.java:500) > . [2014-01-31 14:39:21] State: X08CG > Test TSUR0500: 0 loops from 31 Jan 14 14:32:29.970 to 14:44:57.120 for 747 > secs > Get similar result when doing batch deletes. -- This message was sent by Atlassian JIRA (v7.6.3#76005)