Oracle parameter array binding from c# executed parallel and serial on different servers
- by redir_dev_nut
I have two Oracle 9i 64 bit servers, dev and prod. Calling a procedure from a c# app with parameter array binding, prod executes the procedure simultaneously for each value in the parameter array, but dev executes for each value serially.
So, if the sproc does:
select count(*) into cnt from mytable where id = 123;
if cnt = 0 then
insert into mytable (id) values (123);
end if;
Assuming the table initially does not have an id = 123 row.
Dev gets cnt = 0 for the first array parameter value, then 1 for each of the subsequent.
Prod gets cnt = 0 for all array parameter values and inserts id 123 for each.
Is this a configuration difference, an illusion due to speed difference, something else?