[wix-devs] WIXBUG5750 and RollbackBoundary

Hoover, Jacob Jacob.Hoover at greenheck.com
Tue Jan 23 09:39:29 PST 2018


With a rollback boundary between the perm package and the failing package:

[8ABC:6E58][2018-01-23T11:36:26]i000: Plan action: Install
[8ABC:6E58][2018-01-23T11:36:26]i000:      per-machine: true
[8ABC:6E58][2018-01-23T11:36:26]i000:      keep registration by default: false
[8ABC:6E58][2018-01-23T11:36:26]i000:      estimated size: 274708
[8ABC:6E58][2018-01-23T11:36:26]i000: Plan cache size: 274653
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[0]: CHECKPOINT id: 1
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[1]: PACKAGE_START id: SecondPackage.msi, plan index for skip: 6, payloads to cache: 2, bytes to cache: 32873, skip until retried: No
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[2]: ACQUIRE_PAYLOAD package id: SecondPackage.msi, payload id: SecondPackage.msi, source path: payload\second\SecondPackage.msi, working path: C:\Users\hoover\AppData\Local\Temp\{AFA20745-6B89-4B43-9DE2-C28CF5D311E1}\SecondPackage.msi, skip until retried: No
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[3]: CACHE_PAYLOAD package id: SecondPackage.msi, payload id: SecondPackage.msi, working path: C:\Users\hoover\AppData\Local\Temp\{AFA20745-6B89-4B43-9DE2-C28CF5D311E1}\SecondPackage.msi, operation: move, skip until retried: No, retry action: 2
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[4]: ACQUIRE_PAYLOAD package id: SecondPackage.msi, payload id: cab1C906C19D88FC6AB052BB72B38FC7E56, source path: payload\second\cab1.cab, working path: C:\Users\hoover\AppData\Local\Temp\{AFA20745-6B89-4B43-9DE2-C28CF5D311E1}\cab1C906C19D88FC6AB052BB72B38FC7E56, skip until retried: No
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[5]: CACHE_PAYLOAD package id: SecondPackage.msi, payload id: cab1C906C19D88FC6AB052BB72B38FC7E56, working path: C:\Users\hoover\AppData\Local\Temp\{AFA20745-6B89-4B43-9DE2-C28CF5D311E1}\cab1C906C19D88FC6AB052BB72B38FC7E56, operation: move, skip until retried: No, retry action: 4
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[6]: PACKAGE_STOP id: SecondPackage.msi, skip until retried: No
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[7]: SIGNAL_SYNCPOINT event handle: 0x420, skip until retried: No
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[8]: CHECKPOINT id: 7
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[9]: PACKAGE_START id: FailingPackage.msi, plan index for skip: 14, payloads to cache: 2, bytes to cache: 241780, skip until retried: No
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[10]: ACQUIRE_PAYLOAD package id: FailingPackage.msi, payload id: FailingPackage.msi, source path: payload\failing\FailingPackage.msi, working path: C:\Users\hoover\AppData\Local\Temp\{AFA20745-6B89-4B43-9DE2-C28CF5D311E1}\FailingPackage.msi, skip until retried: No
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[11]: CACHE_PAYLOAD package id: FailingPackage.msi, payload id: FailingPackage.msi, working path: C:\Users\hoover\AppData\Local\Temp\{AFA20745-6B89-4B43-9DE2-C28CF5D311E1}\FailingPackage.msi, operation: move, skip until retried: No, retry action: 10
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[12]: ACQUIRE_PAYLOAD package id: FailingPackage.msi, payload id: cabAF8DAFFA35132BD6767F6D6CBE9566A2, source path: payload\failing\cab1.cab, working path: C:\Users\hoover\AppData\Local\Temp\{AFA20745-6B89-4B43-9DE2-C28CF5D311E1}\cabAF8DAFFA35132BD6767F6D6CBE9566A2, skip until retried: No
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[13]: CACHE_PAYLOAD package id: FailingPackage.msi, payload id: cabAF8DAFFA35132BD6767F6D6CBE9566A2, working path: C:\Users\hoover\AppData\Local\Temp\{AFA20745-6B89-4B43-9DE2-C28CF5D311E1}\cabAF8DAFFA35132BD6767F6D6CBE9566A2, operation: move, skip until retried: No, retry action: 12
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[14]: PACKAGE_STOP id: FailingPackage.msi, skip until retried: No
[8ABC:6E58][2018-01-23T11:36:26]i000:    Cache action[15]: SIGNAL_SYNCPOINT event handle: 0x424, skip until retried: No
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback cache action[0]: CHECKPOINT id: 7
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback cache action[1]: ROLLBACK_PACKAGE id: FailingPackage.msi, skip until retried: No
[8ABC:6E58][2018-01-23T11:36:26]i000: Plan execute package count: 2
[8ABC:6E58][2018-01-23T11:36:26]i000:      overall progress ticks: 4
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[0]: ROLLBACK_BOUNDARY id: WixDefaultBoundary, vital: yes
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[1]: WAIT_SYNCPOINT event handle: 0x420
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[2]: CHECKPOINT id: 2
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[3]: CHECKPOINT id: 3
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[4]: PACKAGE_PROVIDER package id: SecondPackage.msi, action: 1
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[5]: MSI_PACKAGE package id: SecondPackage.msi, action: Install, ui level: 258, log path: C:\Users\hoover\AppData\Local\Temp\Bootstrapper_20180123113624_000_SecondPackage.msi.log, logging attrib: 0
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[6]: CHECKPOINT id: 4
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[7]: PACKAGE_DEPENDENCY package id: SecondPackage.msi, bundle provider key: {a7da6ade-2097-496d-8d35-8e65ed8b4a1c}, action: 1
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[8]: CHECKPOINT id: 5
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[9]: CHECKPOINT id: 6
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[10]: ROLLBACK_BOUNDARY id: rbaC8F4AFF8453D7E1E62E3BBE805309F1F, vital: yes
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[11]: WAIT_SYNCPOINT event handle: 0x424
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[12]: CHECKPOINT id: 8
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[13]: CHECKPOINT id: 9
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[14]: PACKAGE_PROVIDER package id: FailingPackage.msi, action: 1
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[15]: CHECKPOINT id: 10
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[16]: MSI_PACKAGE package id: FailingPackage.msi, action: Install, ui level: 258, log path: C:\Users\hoover\AppData\Local\Temp\Bootstrapper_20180123113624_001_FailingPackage.msi.log, logging attrib: 0
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[17]: CHECKPOINT id: 11
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[18]: REGISTRATION keep: yes
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[19]: PACKAGE_DEPENDENCY package id: FailingPackage.msi, bundle provider key: {a7da6ade-2097-496d-8d35-8e65ed8b4a1c}, action: 1
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[20]: CHECKPOINT id: 12
[8ABC:6E58][2018-01-23T11:36:26]i000:    Execute action[21]: CHECKPOINT id: 13
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[0]: ROLLBACK_BOUNDARY id: WixDefaultBoundary, vital: yes
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[1]: UNCACHE_PACKAGE id: SecondPackage.msi
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[2]: CHECKPOINT id: 2
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[3]: PACKAGE_PROVIDER package id: SecondPackage.msi, action: 2
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[4]: CHECKPOINT id: 3
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[5]: PACKAGE_DEPENDENCY package id: SecondPackage.msi, bundle provider key: {a7da6ade-2097-496d-8d35-8e65ed8b4a1c}, action: 2
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[6]: CHECKPOINT id: 4
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[7]: CHECKPOINT id: 5
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[8]: CHECKPOINT id: 6
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[9]: ROLLBACK_BOUNDARY id: rbaC8F4AFF8453D7E1E62E3BBE805309F1F, vital: yes
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[10]: REGISTRATION keep: no
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[11]: UNCACHE_PACKAGE id: FailingPackage.msi
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[12]: CHECKPOINT id: 8
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[13]: PACKAGE_PROVIDER package id: FailingPackage.msi, action: 2
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[14]: CHECKPOINT id: 9
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[15]: MSI_PACKAGE package id: FailingPackage.msi, action: Uninstall, ui level: 258, log path: C:\Users\hoover\AppData\Local\Temp\Bootstrapper_20180123113624_001_FailingPackage.msi_rollback.log, logging attrib: 0
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[16]: CHECKPOINT id: 10
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[17]: PACKAGE_DEPENDENCY package id: FailingPackage.msi, bundle provider key: {a7da6ade-2097-496d-8d35-8e65ed8b4a1c}, action: 2
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[18]: CHECKPOINT id: 11
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[19]: CHECKPOINT id: 12
[8ABC:6E58][2018-01-23T11:36:26]i000:    Rollback action[20]: CHECKPOINT id: 13
[8ABC:6E58][2018-01-23T11:36:26]i000:    Dependency action[0]: PLANNED_PROVIDER key: {a7da6ade-2097-496d-8d35-8e65ed8b4a1c}, name: (null)
[8ABC:6E58][2018-01-23T11:36:26]i000: --- End plan dump ---

[9F48:7AB8][2018-01-23T11:36:31]e000: Error 0x80070643: Failed to install MSI package.
[9F48:7AB8][2018-01-23T11:36:31]e000: Error 0x80070643: Failed to execute MSI package.
[8ABC:6E58][2018-01-23T11:36:31]e000: Error 0x80070643: Failed to configure per-machine MSI package.
[8ABC:6E58][2018-01-23T11:36:31]i319: Applied execute package: FailingPackage.msi, result: 0x80070643, restart: None
[8ABC:6E58][2018-01-23T11:36:31]e000: Error 0x80070643: Failed to execute MSI package.
[9F48:7AB8][2018-01-23T11:36:31]i318: Skipped rollback of package: FailingPackage.msi, action: Uninstall, already: Absent
[8ABC:6E58][2018-01-23T11:36:31]i000: WIXSTDBA: OnProgress() - progress: 50%, overall progress: 50%
[8ABC:6E58][2018-01-23T11:36:31]i319: Applied rollback package: FailingPackage.msi, result: 0x0, restart: None
[9F48:7AB8][2018-01-23T11:36:31]i329: Removed package dependency provider: {0C426D92-8203-44C1-AFEC-B3F78B62346E}, package: FailingPackage.msi
[9F48:7AB8][2018-01-23T11:36:31]i351: Removing cached package: FailingPackage.msi, from path: C:\ProgramData\Package Cache\{0C426D92-8203-44C1-AFEC-B3F78B62346E}v1.1.0.0\
[9F48:7AB8][2018-01-23T11:36:31]i372: Session end, registration key: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{a7da6ade-2097-496d-8d35-8e65ed8b4a1c}, resume: None, restart: None, disable resume: No
[8ABC:3620][2018-01-23T11:36:31]i000: WIXSTDBA: OnChangeState() - state: 0xf
[9F48:7AB8][2018-01-23T11:36:31]i330: Removed bundle dependency provider: {a7da6ade-2097-496d-8d35-8e65ed8b4a1c}
[9F48:7AB8][2018-01-23T11:36:31]i352: Removing cached bundle: {a7da6ade-2097-496d-8d35-8e65ed8b4a1c}, from path: C:\ProgramData\Package Cache\{a7da6ade-2097-496d-8d35-8e65ed8b4a1c}\
[9F48:7AB8][2018-01-23T11:36:31]i371: Updating session, registration key: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{a7da6ade-2097-496d-8d35-8e65ed8b4a1c}, resume: None, restart initiated: No, disable resume: No
[8ABC:6E58][2018-01-23T11:36:32]i399: Apply complete, result: 0x80070643, restart: None, ba requested restart:  No
[8ABC:3620][2018-01-23T11:36:32]i000: WIXSTDBA: OnChangeState() - state: 0x13
[8ABC:3620][2018-01-23T11:36:32]i000: WIXSTDBA: OnChangeState(ThemeShowPage) - page: 0x8

-----Original Message-----
From: wix-devs [mailto:wix-devs-bounces at lists.wixtoolset.org] On Behalf Of Sean Hall via wix-devs
Sent: Tuesday, January 23, 2018 11:31 AM
To: WiX Toolset Developer Mailing List <wix-devs at lists.wixtoolset.org>
Cc: Sean Hall <r.sean.hall at gmail.com>
Subject: Re: [wix-devs] WIXBUG5750 and RollbackBoundary

I don't know how to reconcile what you're seeing with https://github.com/wixtoolset/issues/issues/4822/ (one of the few issues where Rob, Bob, and I have all commented)

On Tue, Jan 23, 2018 at 11:18 AM, Hoover, Jacob <Jacob.Hoover at greenheck.com>
wrote:

> Strange one here...
>
>                 <Chain ParallelCache="no">
>                         <MsiPackage SourceFile="..\SecondPackage\bin\Debug\SecondPackage.msi"
> Name="payload\second\SecondPackage.msi" Compressed="no" Permanent="yes"
> Visible="yes" />
>                         <RollbackBoundary />
>                         <MsiPackage SourceFile="..\FailingPackage\bin\Debug\FailingPackage.msi"
> Name="payload\failing\FailingPackage.msi" Compressed="no" />
>                 </Chain>
>
> This I think is what Rob was speaking of.  When this chain is ran, the 
> permanent package gets installed, then the failure happens, and we do 
> indeed remove ARP. However, I see nothing different if I remove the 
> rollback boundary, that is until I add my logic for cleaning the cache 
> on rollback.
>
> Do we do some magic to the chain to do all permanent packages first?
>
> -----Original Message-----
> From: wix-devs [mailto:wix-devs-bounces at lists.wixtoolset.org] On 
> Behalf Of Sean Hall via wix-devs
> Sent: Tuesday, January 23, 2018 11:00 AM
> To: WiX Toolset Developer Mailing List <wix-devs at lists.wixtoolset.org>
> Cc: Sean Hall <r.sean.hall at gmail.com>
> Subject: Re: [wix-devs] WIXBUG5750 and RollbackBoundary
>
> That's not the default behavior, though. If you set Permanent to yes 
> and your stuff fails, then the bundle stays registered in ARP. I know 
> I've seen multiple people complain about this on Stack Overflow and/or wix-users.
>
> On Tue, Jan 23, 2018 at 10:55 AM, Rob Mensching <rob at firegiant.com> wrote:
>
> > There is (should be) code in there (unless my memory is totally 
> > wrong) that flips the "retain ARP entry" bit after all permanent 
> > packages are installed. Actually, writing that makes me think maybe 
> > that doesn't require a rollback boundary and we just made it the 
> > default behavior (since RollbackBoundaries weren't really discoverable).
> >
> > Regards,
> >
> >   Rob Mensching
> >   CEO
> >   FireGiant
> > _______________________________________________________________
> >  FireGiant  |  Dedicated support for the WiX toolset  | 
> > http://www.firegiant.com/
> >
> > -----Original Message-----
> > From: wix-devs [mailto:wix-devs-bounces at lists.wixtoolset.org] On 
> > Behalf Of Sean Hall via wix-devs
> > Sent: Tuesday, January 23, 2018 8:53 AM
> > To: WiX Toolset Developer Mailing List 
> > <wix-devs at lists.wixtoolset.org>
> > Cc: Sean Hall <r.sean.hall at gmail.com>
> > Subject: Re: [wix-devs] WIXBUG5750 and RollbackBoundary
> >
> > Interesting. I think I've only tried the Permanent=yes for .NET. I 
> > didn't realize that putting a RollbackBoundary between it and "all 
> > my stuff" would allow the bundle to unregister itself if "all my stuff"
> failed.
> >
> > On Tue, Jan 23, 2018 at 10:47 AM, Hoover, Jacob via wix-devs < 
> > wix-devs at lists.wixtoolset.org> wrote:
> >
> > > As for 1), this is not the case for any way I've tried to author it.
> > > As soon as the RollbackBounday is hit it stops rolling back. So 
> > > your bundle stays in ARP, and just .Net remains installed. If you 
> > > wanted to accomplish this, one would have to add @Permanent=yes 
> > > (this is what our .Net packages do), though that then means an 
> > > uninstall won't touch
> > it.
> > >
> > > -----Original Message-----
> > > From: wix-devs [mailto:wix-devs-bounces at lists.wixtoolset.org] On 
> > > Behalf Of Rob Mensching via wix-devs
> > > Sent: Tuesday, January 23, 2018 10:38 AM
> > > To: WiX Toolset Developer Mailing List 
> > > <wix-devs at lists.wixtoolset.org>
> > > Cc: Rob Mensching <rob at firegiant.com>
> > > Subject: Re: [wix-devs] WIXBUG5750 and RollbackBoundary
> > >
> > > Bob's recollection is correct. These are the scenarios to think about:
> > >
> > > 1. .NET Framework + Boundary + All your stuff == this boundary 
> > > prevents the experience of installing then on failure removing 
> > > .NET Framework. No one wants to go through that. The Bundle ARP 
> > > entry is (should be) gone so the cached "All your stuff" packages 
> > > should be removed. This
> > > (unfortunately) was a late scenario (particularly the ARP 
> > > behavior) that made things ugly (as per Sean).
> > >
> > > 2. Your Vital Stuff + Boundary + Your Optional Stuff == this 
> > > boundary is to help get the user to get a working product and not 
> > > have some non-important package force everything back. In this 
> > > case, ARP stays and stuff can stay in the cache. Idea is the user 
> > > wants that stuff and will probably try again. If the user doesn't 
> > > want any of it, well they need to uninstall anyway.
> > >
> > >
> > > Regards,
> > >
> > >   Rob Mensching
> > >   CEO
> > >   FireGiant
> > > _______________________________________________________________
> > >  FireGiant  |  Dedicated support for the WiX toolset  | 
> > > http://www.firegiant.com/
> > >
> > > -----Original Message-----
> > > From: wix-devs [mailto:wix-devs-bounces at lists.wixtoolset.org] On 
> > > Behalf Of Sean Hall via wix-devs
> > > Sent: Tuesday, January 23, 2018 8:28 AM
> > > To: WiX Toolset Developer Mailing List 
> > > <wix-devs at lists.wixtoolset.org>
> > > Cc: Sean Hall <r.sean.hall at gmail.com>
> > > Subject: Re: [wix-devs] WIXBUG5750 and RollbackBoundary
> > >
> > > I think it's easier right now to just say that the behavior is 
> > > undefined for whether a package will still be cached in those 
> > > scenarios. Like Rob has said, at some point we need to redo how 
> > > Burn handles caching and this is one thing that could be addressed.
> > >
> > > On Tue, Jan 23, 2018 at 10:05 AM, Hoover, Jacob < 
> > > Jacob.Hoover at greenheck.com>
> > > wrote:
> > >
> > > > I'm liking the simplification of if it's in ARP, then the cache 
> > > > can stay, however the current plan executes a rollback of a 
> > > > cached package if it fails. Are you saying this behavior should 
> > > > change, or just the concept of cleaning the cache should only 
> > > > happen if ARP =
> > False?
> > ____________________________________________________________________
> > WiX Toolset Developer Mailing List provided by FireGiant 
> > http://www.firegiant.com/
> >
> ____________________________________________________________________
> WiX Toolset Developer Mailing List provided by FireGiant 
> http://www.firegiant.com/
>
____________________________________________________________________
WiX Toolset Developer Mailing List provided by FireGiant http://www.firegiant.com/



More information about the wix-devs mailing list