This is my initial analysis - I don't know how to solve it yet, but either someone else will, or I will get back to it at a later date.


This problem appears to be specific to the combination of an in-memory database and MVCC=true, which is on by default in version 1.4.x

The problem is occurring somewhere in the stacktrace below.
I suspect it has to do with one of
        MultiVersionIndex.add(Session, Row)
        RegularTable.addRow(Session, Row)
both which are attempting to do an insert/remove combination.
I suspect that one of them is incorrectly restoring state when a unique 
constraint violation occurs.

Thread [H2 Console thread] (Suspended (breakpoint at line 103 in BaseIndex))    
        owns: Database  (id=103)        
        owns: Session  (id=104) 
        TreeIndex(BaseIndex).getDuplicateKeyException(String) line: 103 
        TreeIndex.add(Session, Row) line: 69    
        MultiVersionIndex.add(Session, Row) line: 59    
        RegularTable.addRow(Session, Row) line: 120     
        RegularTable(Table).updateRows(Prepared, Session, RowList) line: 467    
        Update.update() line: 146       
        CommandContainer.update() line: 79      
        CommandContainer(Command).executeUpdate() line: 254     
        JdbcStatement.executeInternal(String) line: 186 
        JdbcStatement.execute(String) line: 160 
        WebThread(WebApp).getResult(Connection, int, String, boolean, boolean) 
line: 1391       
        WebThread(WebApp).query(Connection, String, int, int, StringBuilder) 
line: 1064 
        WebApp$1.next() line: 1026      
        WebApp$1.next() line: 1 
        WebThread.process() line: 168   
        WebThread.run() line: 94        
        Thread.run() line: 662  



--
You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/d/optout.

Reply via email to