[wix-users] Multiple msps in a burn bundle doesn't patch correctly

Patterson, Brent bcpatterson at xactware.com
Fri Dec 2 08:05:46 PST 2016


I'm not sure what you mean.  Are you saying I should create an exe that launches the MSPs as different processes and test it?  Or launch them from command line?  The problem is that patches work fine outside Burn bundle.  Is there a way of forcing it to not install multiple patches as a single transaction, but instead install each one individually?  Granted, it'd be slower, but that seems to be the only way it'd work correctly.

-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Bob Arnson
Sent: Thursday, December 1, 2016 8:18 PM
To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Subject: Re: [wix-users] Multiple msps in a burn bundle doesn't patch correctly

Burn installs multiple patches to the same product in a single transaction as an optimization. Try the same command line outside Burn. As long as your patches are sound, it's the same as installing them one at a time.

-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Patterson, Brent
Sent: Thursday, 1 December, 2016 18:16
To: wix-users at lists.wixtoolset.org
Subject: [wix-users] Multiple msps in a burn bundle doesn't patch correctly

Here's the situation:
We have a burn bundle that includes MspPackage for each MSP that the burn needs to run.  However, if there's more than 1 MSP file, for some reason some files doesn't get updated correctly or there's some kind of error.

For example:
0 to 1, then 1 to 2, then 2 to 3, it all works fine.
0 to 3, with MSPs for 1, 2, and 3 all listed in the burn bundle, it doesn't work correctly.  Most files gets patched, but some doesn't, and there's no errors.  Some cases, it even throws an error about some file not being found in the cab file.

Here's the planned packages part of log:
[6B00:68F8][2016-12-01T16:02:03]i201: Planned package: Patch1.msp, state: Absent, default requested: Present, ba requested: Present, execute: Install, rollback: Uninstall, cache: Yes, uncache: Yes, dependency: Register
[6B00:68F8][2016-12-01T16:02:03]i201: Planned package: Patch2.msp, state: Absent, default requested: Present, ba requested: Present, execute: Install, rollback: Uninstall, cache: Yes, uncache: Yes, dependency: Register
[6B00:68F8][2016-12-01T16:02:03]i201: Planned package: Patch3.msp, state: Absent, default requested: Present, ba requested: Present, execute: Install, rollback: Uninstall, cache: Yes, uncache: Yes, dependency: Register

Here's the applying part of log:
[8478:4CF4][2016-12-01T16:02:05]i306: Applying package: Patch1.msp, target: {945774F5-9F8E-46F7-9F91-FEDD93FE9B93}, action: Install, path: C:\ProgramData\Package Cache\{E5C600F2-F965-4130-BD18-724910E49FBA}\Patch1.msp;C:\ProgramData\Package Cache\{1E44C902-7D06-467D-B770-54BCA1A5B69B}\Patch2.msp;C:\ProgramData\Package Cache\{614389E9-C477-429F-AF01-39028B26D1B6}\Patch3.msp, arguments: '(null)'
[6B00:68F8][2016-12-01T16:02:13]i319: Applied execute package: Patch1.msp, result: 0x0, restart: None

The patches are sequential minor updates (i.e. 2 requires 1 to be installed before 2 can be installed).  If I run the bundle with only one msp at a time, it works fine.

This is what the chain element looks like in the patch bundle:

              <Chain>
                     <MspPackage SourceFile="{PATH_TO_PATCH_MSP}" Compressed="no" Cache="no" Vital="yes" />
              </Chain>

The MspPackage element is automatically added for each MSP by our internal build utility.  So if there's 3 MSPs, it would look like this:

              <Chain>
                     <MspPackage SourceFile="Patch1.msp" Compressed="no" Cache="no" Vital="yes" />
                     <MspPackage SourceFile="Patch2.msp" Compressed="no" Cache="no" Vital="yes" />
                     <MspPackage SourceFile="Patch3.msp" Compressed="no" Cache="no" Vital="yes" />
              </Chain>

Is there something that I'm doing wrong?  Is it slipstreaming or compressing or something when it shouldn't be?  Note that the MSP files are external, and not embedded into the burn bundle exe.

________________________________

Xactware's opt-in mailing list allows you to receive Xactware News that is of interest to you. Visit my.xactware.com today to join or to update your email preferences!

________________________________

This email is intended solely for the recipient. It may contain privileged, proprietary or confidential information or material. If you are not the intended recipient, please delete this email and any attachments and notify the sender of the error.

____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/

____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/



More information about the wix-users mailing list