Armin Haaf wrote :
>
>I'm not sure, if this is a detection problem in maxdb:
>
>Two Tables:
>
>create table Father ( id FIXED(19,0) not null, primary key (id))
>create table Son ( id FIXED(19,0) not null, primary key (id))
>
>A Constraint between them:
>
>alter table Son foreign key SonFatherFK (id) references Father
>
>Some Data:
>
>insert into Father (id) values (0)
>insert into Father (id) values (1)
>insert into Son (id) values (0)
>insert into Son (id) values (1)
>
>
>
>Two Transactions
>
>t1:  delete from Son where id=0 
>t2:  delete from Son where id=1 
>t2:  delete from Father where id=1
>t1:  delete from Father where id=0  
>
>This leads to a deadlock! 
>
>Background:
>
>Father Son is a object hierarchy modelled with Hibernate (Java).
>A multi thread app deletes Son1 and Son2. The delete is split 
>into delete of the
>son row and the father row, and the scheduler preempts 
>sometimes the first
>thread after deleting the son only.
>
>So the question is, is this a deadlock and should be detected 
>by maxdb. Or is
>this a behaviour which I must cope with?
>
>Thanks Armin
>

It seems that deadlock detection does not consider temporary
table locks, which are requested by dml statements combined with
referential constraints.
Today I'm not able to decide whether this is a bug or not, because
all experts for that topic are out of office.

Best Regards
Thomas 

-- 
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to