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

Rob Mensching rob at firegiant.com
Thu May 16 12:04:43 PDT 2019

Yeah, the hang didn't have anything to do with the pipe. It was more about the way Burn was launched that exposed the COM issue in wixstdba. My theory was that launching via embedding might trigger the same issue. It was just a theory though.


  Rob Mensching
FireGiant  |  Dedicated support for the WiX toolset  |  http://www.firegiant.com/

From: Heath Stewart <heaths at outlook.com>
Sent: Tuesday, May 14, 2019 4:54 PM
To: Skylar Nam <rorelei at gmail.com>; WiX Toolset Developer Mailing List <wix-devs at lists.wixtoolset.org>; Rob Mensching <rob at firegiant.com>
Subject: RE: [wix-devs] BurnRunner implementation sometimes hangs on pipe.Write()

@Rob<mailto:rob at firegiant.com>, that hang you mentioned the other day caused by COM being uninitialized - would that only cause a hang with there is a burn pipe connected from another process? From your description, it sounded like it would always hang even without a progress listening process.

From: Skylar Nam <rorelei at gmail.com<mailto:rorelei at gmail.com>>
Sent: Thursday, May 2, 2019 3:49:04 PM
To: WiX Toolset Developer Mailing List; Rob Mensching
Cc: Heath Stewart
Subject: Re: [wix-devs] BurnRunner implementation sometimes hangs on pipe.Write()

Just wanted to follow-up on this -- I'd be happy to answer if any further information is needed.

Thank you,
Skylar Nam

On Wed, May 1, 2019 at 10:12 AM Heath Stewart <heaths at outlook.com<mailto:heaths at outlook.com>> wrote:

We also still have bundles using burn 3.7 + my targeted DLL injection fixes that were later ported to 3.9 or 10 way back.

From: wix-devs <wix-devs-bounces at lists.wixtoolset.org<mailto:wix-devs-bounces at lists.wixtoolset.org>> on behalf of Skylar Nam via wix-devs <wix-devs at lists.wixtoolset.org<mailto:wix-devs at lists.wixtoolset.org>>
Sent: Wednesday, May 1, 2019 10:10:56 AM
To: Rob Mensching
Cc: Skylar Nam; WiX Toolset Developer Mailing List
Subject: Re: [wix-devs] BurnRunner implementation sometimes hangs on pipe.Write()

I hate to say this but for the actual run, we use different versions that
we are not in control of. Some are using 3.10, 3.11, many minor versions.
I can give you the versions that I've seen so far though. Some of them
include v3.10.2.2516 and v3.11.1.2318.

On Wed, May 1, 2019 at 9:54 AM Rob Mensching <rob at firegiant.com<mailto:rob at firegiant.com>> wrote:

> Yes. This is a better place to _discuss_ issues.
> What WiX version are you working with? What BA are you using?
> Regards,
>   Rob Mensching
>   CEO
>   FireGiant
> _______________________________________________________________
>  FireGiant  |  Dedicated support for the WiX toolset  |
> https://eur04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.firegiant.com%2F&data=02%7C01%7C%7Cbc1fada3c62b4ae93e2a08d6ce580381%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636923274735216895&sdata=TcMyRzjSYuqn5AlGswWhxIqHTeSYySJcNOy2SmpvGwM%3D&reserved=0<https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.firegiant.com%2F&data=02%7C01%7C%7C6ea1a1c5f6bb40fd6e4f08d6cf506777%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636924341565578955&sdata=kQSodgbNW55FqPucfxfcXUXU%2BSShWzORGZoiAhsiImI%3D&reserved=0>
> -----Original Message-----
> From: wix-devs <wix-devs-bounces at lists.wixtoolset.org<mailto:wix-devs-bounces at lists.wixtoolset.org>> On Behalf Of
> Skylar Nam via wix-devs
> Sent: Wednesday, May 1, 2019 9:45 AM
> To: wix-devs at lists.wixtoolset.org<mailto:wix-devs at lists.wixtoolset.org>
> Cc: Skylar Nam <rorelei at gmail.com<mailto:rorelei at gmail.com>>
> Subject: [wix-devs] BurnRunner implementation sometimes hangs on
> pipe.Write()
> Hi,
> 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.
> From
> https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fwixtoolset%2Fwix3%2Ftree%2Fdevelop%2Fsrc%2Fburn%2FSamples%2FManagedBundleRunner&data=02%7C01%7C%7Cbc1fada3c62b4ae93e2a08d6ce580381%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636923274735216895&sdata=wXgXXWCIN474FtS2PFhB0FDXO1cH%2FAElKF50LwrGnrE%3D&reserved=0<https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fwixtoolset%2Fwix3%2Ftree%2Fdevelop%2Fsrc%2Fburn%2FSamples%2FManagedBundleRunner&data=02%7C01%7C%7C6ea1a1c5f6bb40fd6e4f08d6cf506777%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636924341565588966&sdata=uKwFT%2B0ODhuWR9uwAY1jDAsZ4sz%2BS4wKE1tGIiNZjvY%3D&reserved=0>
> ,
> 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
> Cache\18F0B8570421BB05A395B85246BD665AD97D9253\py.exe.
> [5CF4:59B8][2019-04-30T16:09:17]i304: Verified existing payload:
> compileallO_AllUsers at path: C:\ProgramData\Package
> Cache\18F0B8570421BB05A395B85246BD665AD97D9253\py.exe.
> [5CF4:6490][2019-04-30T16:10:15]i301: Applying execute package:
> compileall_AllUsers, action: Install, path: C:\ProgramData\Package
> Cache\18F0B8570421BB05A395B85246BD665AD97D9253\py.exe, arguments:
> '"C:\ProgramData\Package
> Cache\18F0B8570421BB05A395B85246BD665AD97D9253\py.exe" -3.7 -E -s -Wi
> "C:\Program Files (x86)\Microsoft Visual
> Studio\Shared\Python37_64\\Lib\compileall.py" -f -x
> "bad_coding|badsyntax|site-packages|py2_|lib2to3\\tests|venv\\scripts"
> "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\\Lib"'
> 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
> ____________________________________________________________________
> WiX Toolset Developer Mailing List provided by FireGiant
> https://eur04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.firegiant.com%2F&data=02%7C01%7C%7Cbc1fada3c62b4ae93e2a08d6ce580381%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636923274735226903&sdata=2Jeoydsl%2Fan8rucCOO1sPQRgmH1JUmzpBTQwA7fzvIQ%3D&reserved=0<https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.firegiant.com%2F&data=02%7C01%7C%7C6ea1a1c5f6bb40fd6e4f08d6cf506777%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636924341565598971&sdata=4CZvIaVdeo5CXWz4gvK2VZvQDxWwB%2FWCg%2BafHL6alRE%3D&reserved=0>
WiX Toolset Developer Mailing List provided by FireGiant https://eur04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.firegiant.com%2F&data=02%7C01%7C%7Cbc1fada3c62b4ae93e2a08d6ce580381%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636923274735226903&sdata=2Jeoydsl%2Fan8rucCOO1sPQRgmH1JUmzpBTQwA7fzvIQ%3D&reserved=0<https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.firegiant.com%2F&data=02%7C01%7C%7C6ea1a1c5f6bb40fd6e4f08d6cf506777%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636924341565608982&sdata=W6lLcPfI9cQt%2FZ%2FyQ6OH%2Ftg0HmBp%2BS2iHhdywmxROro%3D&reserved=0>

More information about the wix-devs mailing list