I am using BODS 3.1 and MS SQL Server 2005.
I created a batch job which updates a table. The table contains the data for different customers. Normally this job takes 20 minutes to complete.
My requirement is to run this job in parallel for different customers.
Here is the scenario:
I executed this job with a runtime parameter CustomerID with a value "A". which means this job updates Customer "A" data in that table. When this job is running for Customer "A", I executed the same job with run time parameter CustomerID with a value "B". which means this job updates Customer "B" data in that same table.
When I am doing this I got the below error:
[Microsoft][ODBC SQL Server Driver][SQL Server]Transaction (Process ID 209) was deadlocked on lock | communication buffer resources with another process and has been chosen as the deadlock victim. Rerun the transaction.
Then I created a stored procedure to update that table with a parameter CustomerID. I can able to execute this stored procedure in parallel for two different customers.
My question is why DI is creating a lock on that table, where as from database the stored procedure is running fine.
Shouldn't we execute the same job again when the job is already running ?
Please help me in this regard. This is a major problem. It would be a great help.