This relates to comments in #7350
Test case:
isql-1:
recreate table test(id int primary key, f01 int);
set term !;
create or alter procedure select_proc returns (o integer)
as
begin
for select id from test rows 2 with lock skip locked into o do suspend;
end!
set term ;!
commit;
insert into test(id, f01) select row_number()over(), 0 from rdb$types rows 10;
commit;
update test set f01 = 1 where id in (1,5,9);
SQL>
isql-2:
SQL> -- first time it works
SQL> rollback; set transaction read committed record_version NO wait; select * from select_proc;
SQL> -- second time it do not work
SQL> rollback; set transaction read committed record_version NO wait; select * from select_proc;
Statement failed, SQLSTATE = 40001
deadlock
-read conflicts with concurrent update
-concurrent transaction number is 107
-- Why error here ?
This relates to comments in #7350
Test case:
isql-1:
isql-2: