cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Matthias1967
Level 5

Major Upgrade fails with chained package

Hello,

I am puzzled about the following behaviour of Windows Installer:

Starting with version 2, my package main.msi has a chained package chained.msi, which is not streamed into main.msi, but located in a subfolder named Chained.

main.msi, version 2, has a different product code than version 1 (major upgrade)

I can install main.msi, version 2 without problems, the chained package is also installed.

But if I have installed main.msi, version 1 before and start the major upgrade to v2, the main.msi installation runs until after InstallFinalize and then starts a rollback.

Comparing the log files shows that installation runs until the moment where the installation of the chained package should have been started.

I have read in other threads that major upgrades with chained packages do work.

So what can have gone wrong here?

Best regards

Matthias
Labels (1)
0 Kudos
(5) Replies
Matthias1967
Level 5

In addition to the following:

In my current setups, I have put RemoveExistingProducts between InstallExecute and InstallFinalize. Is the issue I have explained somehow related to the positioning of RemoveExistingProducts? I am now experimenting with this, but still no clue :confused:
0 Kudos
Matthias1967
Level 5

Now I have tried the major upgrade with several positions of RemoveExistingProducts.

If RemoveExistingProducts is positioned before InstallInitialize, the major upgrade works.

For the other three possible positions (immediately after InstallInitialize, after InstallExecute, or after InstallFinalize), major upgrade silently starts a rollback at the end of the Execute sequence (at the moment when the chained setup should be started).

I have set the UI level of the chained package to /qr, although with RemoveExistingProducts after InstallInitialize, the rollback also occurs with /qb (I have not tried the other combinations).

The install condition for the chained package is set to
REMOVE <> "ALL" AND NOT ISCHAINER


Thje uninstall condition for the chained package is set to
REMOVE="ALL" AND NOT UPGRADINGPRODUCTCODE


Any ideas would be appreciated.

Best regards

Matthias
0 Kudos
Branedal
Level 3

I have the exact same problem. Tested your findings to move uninstall first (before InstallInitialize) and it works as a workaround, but is not a permanent solution.

I created an incident SIOC-000117301.
Have you found or got any more info? (quiet in this thread)

And what is the root cause of it not working??
0 Kudos
Matthias1967
Level 5

Hej Branedal,

no, I have not found any more info yet, as with some other issues concerning chaining. So I still have positioned RemoveExistingProducts before InstallInitialize, which is ugly, but seems to be necessary for the install to work at all.:mad:

Best regards

Matthias
0 Kudos
shokkas
Level 3

Hi,

I've the same issue only with IS2009, and 6 chained MSI packages called from one parent (serves only as wrapper).

I've tried the setting you've suggested (moving the RemoveExistingProducts, setting the conditions to all chained packages and also setting them all to /qr).
I've also, of course, changed the Product Code, Version and added a Major Upgrade Item in Upgrades (was not one).

Clean installation seems to work seamlessly, however major upgrade doesn't work (in the log I can see that rollback actions were performed). I've tried several settings and conditions, yet nothing. :confused:

I know IS2009 is NOT supported any more, however this is currently the version we use, and it will take time to change.

Please - do you have any idea?

Thanks!
Shai Gilboa
0 Kudos