Home

lprun error when many instances launched simultaneously.

When I run several instances of lprun at once (via start lprun in a loop) I get the follow errors intermittently. Is this a supported scenario?

c:\gits\twillLaunch\TextServiceV1>c:\bin_drop\lprun.exe tola.linq
error CS0042: Unexpected error creating debug information file 'c:\Users
\igord\AppData\Local\Temp\LINQPad\_myicbruv\query_cqlttm.PDB' --
'c:\Users\igord\AppData\Local\Temp\LINQPad\_myicbruv\query_cqlttm.pdb:
The system cannot find the path specified.

Comments

  • I also ran into this problem (v4.55.03).

    If I run the queries sequentially, it works fine. When I run some of them simultaneously, I run into this error as well as 'source not found' errors. I hope this can be addressed soon.
  • I am also caught in this. My guess is that LPRun cleanup (after running a query) is in danger of deleting files that other running instances of LPRun depend on. I hope this can be adressed.
  • I've found the bug - will fix for next build.
  • Awesome. Thanks for looking into this.
  • Excellent! This will greatly speed things up.
  • Is there any quick way of finding out whether a new beta is available? Is there a version history table on the web site or a place where the datetime of the most recent beta is displayed?
  • I feel a bit stupid here. Since the beta information does not contain a date or history, I don't see how I can know that this fix is part of the current beta. If it is a nightly build, then of course the point is moot. But even though I've been with LINQPad a long time, I do not know the beta release cadence.
  • Launched multiple LPRuns from two different instances of LINQPad.

    Message = error CS0042: Unexpected error creating debug information file 'c:\Users\tormods\AppData\Local\Temp\LINQPad\_uzrgjcfy\query_xeswak.PDB' -- 'c:\Users\tormods\AppData\Local\Temp\LINQPad\_uzrgjcfy\query_xeswak.pdb: The system cannot find the path specified.

    This was with LINQPad version:
    V4.57.02

    Do you have trouble reproducing it? Should I try to set something up?
  • No, I can reproduce it. The problem is fixed in LINQPad 5, but not LINQPad 4.

    I can do a LINQPad 4 beta build with that fix if you require.
  • Oh, I misunderstood when you said "latest build" since it was reported on LINQPad4. Hence my confusion. I thought it now was part of LINQPad4 "proper" since a release has been published in the meantime.
    I will attempt upgrade to LINQPad5. I do think many people are using LPRun, so it would be good to queue it up for LINQPad4.
  • Hi,

    I am running LinqPad 5.22.02 (and I tried with the Beta 5.22.03) and I get a similar problem that seems linked to parallel executions.

    Here is my use case:
    - I run 1 instance of a script X with connection A.
    - I run 4 instances of another script Y with connection B.
    - I run 1 instance of another script Z with connection B.

    When I run all those in parallel any of those scripts could get me the following error: 'A' is not a valid connection name. To rename a connection, right-click a connection in LINQPad's Schema Explorer and choose 'Rename'. Cx data is stored in %appdata%\LINQPad\ConnectionsV2.xml. (You can move this file to alongside LINQPad.exe to simplify deployment.)


    Now if I run each script serially, it's works. At first I was running those scripts from another linqpad script using Tasks but I was able to repro with a simple batch file that does this:

    start /b cmd.exe /C D:\downloads\LINQPad5-AnyCPU\lprun.exe -cxname=A -format=Html X.linq 1> "X.html" 2>&1
    start /b cmd.exe /C D:\downloads\LINQPad5-AnyCPU\lprun.exe -cxname=B -format=Html Y.linq 1> "Y.html" 2>&1
    start /b cmd.exe /C D:\downloads\LINQPad5-AnyCPU\lprun.exe -cxname=B -format=Html Y.linq 1> "Y.html" 2>&1
    start /b cmd.exe /C D:\downloads\LINQPad5-AnyCPU\lprun.exe -cxname=B -format=Html Y.linq 1> "Y.html" 2>&1
    start /b cmd.exe /C D:\downloads\LINQPad5-AnyCPU\lprun.exe -cxname=B -format=Html Y.linq 1> "Y.html" 2>&1
    start /b cmd.exe /C D:\downloads\LINQPad5-AnyCPU\lprun.exe -cxname=B -format=Html Y.linq 1> "Y.html" 2>&1
    start /b cmd.exe /C D:\downloads\LINQPad5-AnyCPU\lprun.exe -cxname=B -format=Html Y.linq 1> "Y.html" 2>&1
    start /b cmd.exe /C D:\downloads\LINQPad5-AnyCPU\lprun.exe -cxname=B -format=Html Z.linq 1> "Z.html" 2>&1

    Any idea what could be wrong?

    Also, a few related questions:
    - Is there a way to specify a different context using Util.Run? It seems to only reuse the context from the calling script.
    - Is there a way to avoid the exception thrown by Util.Cmd when the script does not complete successfully? The problem that happens is that I get no output so I can't dump to file. The workaround I found was to either launch my own process and redirect stdoutput and stderror to a file or use Util.Cmd to run "Cmd.exe /C lprun ...."

    Thanks in advance!

    Ouamer
Sign In or Register to comment.