On May 28, 2010, at 8:52 AM, Martin Bowes wrote:
Quote:
...
And now for the delete…
sql bowtest << SQL_END
select count(*) from x where a='one'; -- I get 4 rows
delete from x where a='one'; -- I get 1 row!
select count(*) from x where a='one'; -- I get 3 rows.
...I was using II 9.2.0 (a64.lnx/143)NPTL + p13767
BTW. Change the rule to an after trigger and all is OK. |
I think this is fixed in main (10.0). Main change 497731
brought over a bunch of stuff I did at Datallegro, including
this qeadelete.c fix. I doubt that the entire change can be
crossed to 9.2, but the relevant fix could be, if you asks
nicely. :-) (The bug is that the dmr_cb->dmr_tid is being
zeroed upon entry, which is incorrect if it's a re-entry
after a before trigger; the dmr_tid doesn't get set.)
Karl