How to - RUN MORE than 1 SSIS package at the same time on the SQL Server, using DTExec.exe

  • Our SSIS packages are automated to run in production via JOBS which use the DTExec.exe line to invoke the individual packages

    We have a total of 25 jobs like this. These Jobs are INDEPENDENT of each other. So the OUTPUT of one Job , does not affect any other jobs.

    Some of the jobs are jobs are scheduled to RUN , at the same-time .(Since they dont depend on one another ) and the business wants data at the same time .

    Now in this scenario, we get the following error

    "The process cannot access the file because it is being used by another process " and then the job fails . This is because DTExec.exe Process is being accessed by many jobs

    Is there a way , wherein , 3 jobs can be scheduled to RUN at the same time , without getting the above error. Is there some settings that needs to be done on the Server , where this job runs.

    Pls help

  • ms-techie (2/23/2014)


    These Jobs are INDEPENDENT of each other.

    Are you sure about that?

    "The process cannot access the file because it is being used by another process " and then the job fails . This is because DTExec.exe Process is being accessed by many jobs

    Pls help

    I think it unlikely that this is the reason for the error. It's more likely that more than one of your packages are trying to access the same Source or Destination file.

    Also, you may get more reponse to your post if you submit it to the correct forum; you have posted in the SSRS forum.

    Regards

    Lempster

  • ms-techie (2/23/2014)


    Now in this scenario, we get the following error

    "The process cannot access the file because it is being used by another process " and then the job fails . This is because DTExec.exe Process is being accessed by many jobs

    Pls help

    It looks like they are trying to access the same file simultaneous. It might not be dtexec. Or does the error explicitly mentions that ? Could you post the whole error ..

    --

    SQLBuddy

  • ms-techie (2/23/2014)


    Our SSIS packages are automated to run in production via JOBS which use the DTExec.exe line to invoke the individual packages

    We have a total of 25 jobs like this. These Jobs are INDEPENDENT of each other. So the OUTPUT of one Job , does not affect any other jobs.

    Some of the jobs are jobs are scheduled to RUN , at the same-time .(Since they dont depend on one another ) and the business wants data at the same time .

    Now in this scenario, we get the following error

    "The process cannot access the file because it is being used by another process " and then the job fails . This is because DTExec.exe Process is being accessed by many jobs

    Is there a way , wherein , 3 jobs can be scheduled to RUN at the same time , without getting the above error. Is there some settings that needs to be done on the Server , where this job runs.

    Pls help

    You can run a lot of packages at the same time (depends a bit on the number of processors). You don't have to do anything to enable that. Just make sure there are no conflicts at the source/destination, where your error is probably happening.

    Need an answer? No, you need a question
    My blog at https://sqlkover.com.
    MCSE Business Intelligence - Microsoft Data Platform MVP

  • It works and sometimes fails , without any change in the code .

    The error message is as below

    We inoke the SSIS package via the DTExec.exe

    DTExec /File "\\Server1\SSISPackage1.dtsx"

    /ConfigFile "\\Server1\MyConfig.dtsConfig" 1>output2.log

    The process cannot access the file because it is being used by another process.

    When I checked via process explorer if the SSISPackage1.dtsx and MyConfig.dtsConfig , it shows 0 handles , which means to say these files are not used.

    When I Kill the DTExec process from the windows task manager on the server1 , it starts working again . What could have gone wrong in this case

  • ms-techie (3/12/2014)


    It works and sometimes fails , without any change in the code .

    The error message is as below

    We inoke the SSIS package via the DTExec.exe

    DTExec /File "\\Server1\SSISPackage1.dtsx"

    /ConfigFile "\\Server1\MyConfig.dtsConfig" 1>output2.log

    The process cannot access the file because it is being used by another process.

    When I checked via process explorer if the SSISPackage1.dtsx and MyConfig.dtsConfig , it shows 0 handles , which means to say these files are not used.

    When I Kill the DTExec process from the windows task manager on the server1 , it starts working again . What could have gone wrong in this case

    If it works sometimes it means, the solution is correct. Only the timing might be a problem.

    Check if there is any input\output file (flatfile, log file ..) that's being shared at the same time ? Or may be someone is opening the file and not closing it which makes the package to fail ..

    --

    SQLBuddy

Viewing 6 posts - 1 through 5 (of 5 total)

You must be logged in to reply to this topic. Login to reply