Sandhya Sundaresan created TRAFODION-3092:
---------------------------------------------

             Summary: Incorrect rowcount reported after commit conflict error
                 Key: TRAFODION-3092
                 URL: https://issues.apache.org/jira/browse/TRAFODION-3092
             Project: Apache Trafodion
          Issue Type: Bug
          Components: sql-exe
            Reporter: Sandhya Sundaresan
            Assignee: Sandhya Sundaresan


When there are 2 sessions doing concurrent SQL IUD operations like update or 
insert, a commit conflict can occur. When this error occurs, the rowcount 
reposrted by the SQL diagnostics is incorrect. Even though 0 rows got inserted, 
it reports 2 rows. Same for updates. 

 

>>insert into tl values (5,5),(6,6);
..

Breakpoint 3, BEGINTX (pp_tag=0x7ffff7e75c58, pv_timeout=-1, pv_type_flags=1)
 at tmlib.cpp:923
923 TM_Transaction *lp_trans = NULL;
(gdb) c
Continuing.

Breakpoint 5, ExTransaction::commitTransaction (this=0x7ffff7e75b80, waited=0)
 at ../executor/ex_transaction.cpp:645
645 dp2Xns_ = FALSE;
(gdb) c
Continuing.

Breakpoint 6, ComDiagsArea::insertNewError (this=0x7ffff7e98048)
 at ../export/ComDiags.cpp:2756
2756 errors_.insert(newCondition_);
(gdb) c
Continuing.

Breakpoint 6, ComDiagsArea::insertNewError (this=0x7ffff7ef4408)
 at ../export/ComDiags.cpp:2756
2756 errors_.insert(newCondition_);
(gdb) c
Continuing.

*** ERROR[8616] A conflict was detected during commit processing. Transaction 
has been aborted. Detail :org.trafodion.dtm.TransactionManagerException: 
org.apache.hadoop.hbase.coprocessor.transactional.CommitConflictException: 
java.io.IOException: This Transaction [[transactionId: 257 regionTX: false 
status: PENDING neverReadOnly: false scan Size: 4 write Size: 2 startSQ: 9 
prepareEditSize: 0 endEditSize: 0 editSize: 2]] has a scan, scanRange[startRow: 
\x80\x00\x00\x05, endRow: \x80\x00\x00\x05] that conflicts with a committed 
Transaction [[transactionId: 258 regionTX: false status: COMMITED 
neverReadOnly: false scan Size: 4 write Size: 2 startSQ: 9 prepareEditSize: 2 
endEditSize: 1 editSize: 2 commitedSQ:9]] which , inserted a row with 
key[\x80\x00\x00\x05], in the region 
[TRAFODION.SEABASE.TL,,1527701720547.2d9b1459c2f326be937f14e414cc68ad.]
org.trafodion.dtm.HBaseTxClient.prepareCommit(HBaseTxClient.java:525)

--- 2 row(s) inserted.
>>



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to