[ 
https://issues.apache.org/jira/browse/TRAFODION-179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Suresh Subbiah updated TRAFODION-179:
-------------------------------------
    Fix Version/s:     (was: 2.2.0)

> 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)

Reply via email to