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]
