[ https://issues.apache.org/jira/browse/TRAFODION-3092?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sandhya Sundaresan closed TRAFODION-3092. ----------------------------------------- > 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 > Priority: Major > Fix For: 2.3 > > > 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)