Stepan Pilschikov created IGNITE-10014:
------------------------------------------

             Summary: MVCC usability: Improve description for concurrent 
operation exceptions
                 Key: IGNITE-10014
                 URL: https://issues.apache.org/jira/browse/IGNITE-10014
             Project: Ignite
          Issue Type: Improvement
          Components: mvcc
    Affects Versions: 2.7
            Reporter: Stepan Pilschikov
             Fix For: 2.8


autocommit=false

{code}
create table test(id int primary key, field_int int,  field_var varchar(50)) 
with "template=partitioned, ATOMICITY=TRANSACTIONAL_SNAPSHOT";
insert into test(id, field_int, field_var) values (1, 1, 'test_1');

first user:   `select * from test`
second user:  `update test set field_var = 'updated by second user' where id = 
1`
second user:  `commit`
second user:  `select * from test`
first user:   `update test set field_var = 'updated by first user' where id = 
1` -> java.sql.SQLException: Cannot serialize transaction due to write 
conflict...
first user:   `select * from test` -> java.sql.SQLException: Transaction is 
already completed.
first user:   `commit` -> java.sql.SQLException: Failed to execute DDL statement
first user:   `select * from test`
second user:  `select * from test`
second user:  `commit`
second user:  `select * from test`
{code}

Now unclear to get that i should use rollback instead of commit after 
"Transaction is already completed" exception



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

Reply via email to