This is a very peculiar case.

We had the same setup on a different machine (same config.) where the concurrent runs of APIs used to update these seperate batches of approx. 500 records each.

Now, with same machine setup and same oracle instance params I am not able to run these in parallel.

Is there any possibility of any parameter in API getting set which is not allowing a parallel run?
or its not dependent on whether I call an API or I call any other package proc?


Some information on my tables which may be useful...

1) I have 3 Bitmap indexes on the table and these were present in the previous setup also, which allowed concurrent runs.

2) The COMMIT is at the end of a custom package procedure call after the batch of 500 records is completed. But, the concurrent runs deal with different records in each batch. I have checked that the batches do not have any overlaps on records a/c batches.

3) I have checked all the tables which the API locks during the run and there is no table level lock on any table found.

4) I have an autonomous procedure which updates each record on the temporary table, from which the source data for API call is coming in. This procedure basically updates the intermediate status on the record which is getting loaded using API.

Thanks & Regards,