[ https://forge.continuent.org/jira/browse/SEQUOIA-1014?page=all ]
     
Stephane Giron resolved SEQUOIA-1014:
-------------------------------------

      Assign To: Robert Hodges  (was: Stephane Giron)
     Resolution: Fixed
    Fix Version: sequoia 2.10.10

Fixed in CVS

> If 2 controllers are too asynchronous, then a backend may be disabled because 
> of a request failing on one controller and not the other one
> ------------------------------------------------------------------------------------------------------------------------------------------
>
>          Key: SEQUOIA-1014
>          URL: https://forge.continuent.org/jira/browse/SEQUOIA-1014
>      Project: Sequoia
>         Type: Bug

>   Components: Core
>     Versions: Sequoia 2.10.9
>     Reporter: Stephane Giron
>     Assignee: Robert Hodges
>      Fix For: sequoia 2.10.10

>
>
> This issue can be observed using mysql as backend (other database backends 
> may show the same issue as well).
> It is related to the way the locks are taken into the backend and also to the 
> effect of a statement failing inside a transaction.
> As an example,
> create table table1 (i integer) 
> create table table2 (i integer) 
> Then with 3 threads (C1, C2 and C3) :
> C1 : begin 
> C1 : delete from table1 
> C2 : begin 
> C2 : delete from table2 
> C2 : insert into table1 values(1)
> C3 : begin 
> C3 : insert into table2 values(1)
> ...
> If one controller is about one minute late on the other, then the problem 
> will show up :
> C2 : insert into table1 values(1) will fail because it can not get lock in 
> mysql.
> => when failing, the request C3 : insert into table2 values(1) will be able 
> to execute
> On the controller that is late, the first query will fail, causing the 
> transaction to be aborted on the cluster.
> When the transaction will abort, the locks in mysql will be released.
> If the second request already failed on the first controller (the quicker), 
> this same request will be able to succeed on the second one => the first 
> backend will the be disabled (because a request failed whereas it succeeded 
> on the other controller)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   https://forge.continuent.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia

Reply via email to