[wix-devs] BurnRunner implementation sometimes hangs on pipe.Write()

Skylar Nam rorelei at gmail.com
Wed May 1 09:44:39 PDT 2019


I wasn't sure where to send this at first so I posted a new issue on
Github. Seems like this mailing list is more appropriate.

I implemented a BurnRunner pipe that uses the exact same classes and
methods. With that, I have been trying to install a package, but during the
PumpMessages pipe.Write() would hang when writing completion messages in
BurnRunner.cs line 170-172.

private void CompleteMessage(NamedPipeServerStream pipe, BurnResult result)
    var complete = 0xF0000002;
    WriteNumberToPipe(pipe, complete);
    WriteNumberToPipe(pipe, 4); // size of message data
    WriteNumberToPipe(pipe, (uint)result);

[7598:6DD8][2019-04-30T16:07:35]i299: Plan complete, result: 0x0
[7598:6DD8][2019-04-30T16:07:35]i300: Apply begin
[7598:6DD8][2019-04-30T16:07:35]i010: Launching elevated engine process.
[7598:6DD8][2019-04-30T16:07:40]i011: Launched elevated engine process.
[7598:6DD8][2019-04-30T16:07:40]i012: Connected to elevated engine.
[5CF4:6490][2019-04-30T16:07:40]i358: Pausing automatic updates.
[5CF4:6490][2019-04-30T16:07:40]i359: Paused automatic updates.
[7598:6DD8][2019-04-30T16:07:40]i371: Updating session, registration key:
[5CF4:59B8][2019-04-30T16:07:40]i304: Verified existing payload:
compileall_AllUsers at path: C:\ProgramData\Package
[5CF4:59B8][2019-04-30T16:09:17]i304: Verified existing payload:
compileallO_AllUsers at path: C:\ProgramData\Package
[5CF4:6490][2019-04-30T16:10:15]i301: Applying execute package:
compileall_AllUsers, action: Install, path: C:\ProgramData\Package
Cache\18F0B8570421BB05A395B85246BD665AD97D9253\py.exe, arguments:
Cache\18F0B8570421BB05A395B85246BD665AD97D9253\py.exe" -3.7 -E -s -Wi
"C:\Program Files (x86)\Microsoft Visual
Studio\Shared\Python37_64\\Lib\compileall.py" -f -x
"C:\Program Files (x86)\Microsoft Visual

This is the end of the log -- I would expect to see the end session
message, but I do not see anything more. I checked that the process is
still running. The last time this code was run it hung for more than 6
hours. The thing is this happens rather sporadically. Sometimes it does,
sometimes it doesn't. Would there be any reason why this might be
happening/was there a similar topic discussed in the past? I would
appreciate it very much if I could get any insights.

If it worked, I would see the session end message and logs like:

162C:22C4][2019-04-29T19:11:37]i372: Session end, registration key: ..
[162C:22C4][2019-04-29T19:11:37]i371: Updating session, registration
key: ..., resume: ARP, restart initiated: No, disable resume: Yes
[0258:2734][2019-04-29T19:11:37]i399: Apply complete, result: 0x0,
restart: None, ba requested restart:  No
[0258:2734][2019-04-29T19:11:37]i500: Shutting down, exit code: 0x0

and the process and the pipe should have exited and closed.

Thank you,
Skylar Nam

More information about the wix-devs mailing list