package horizon-service-rpm-xx.noarch (which is newer than horizon-service-rpm-xx) already installed

Arun Nukula
Arun Nukula
2 min read

I was working on a patch implementation this morning and encountered an exception almost when we were at the finish line

Exception

2020-11-27T02:43:41.804322+00:00 vra-dev.btfin.com vcac-config: INFO  com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchExecutor.validateCommandStatusForFinishLine:1130 - Command execute-shell output: Executing shell command rpm -Uvh --replacepkgs /usr/lib/vcac/patches/repo/cafe/patchRpms/*.rpm
2020-11-27T02:43:41.805157+00:00 vra-dev.btfin.com vcac-config: ERROR com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchExecutor.validateCommandStatusForFinishLine:1134 - Error in command status for execute-shell: {"35000":"Command execution failed with unexpected error: com.vmware.vcac.configuration.utils.ProcessUtil$ProcessExecutionException: package horizon-service-rpm-3.1.0.0-15448541.noarch (which is newer than horizon-service-rpm-3.1.0.0-15433743.noarch) is already installed.\n\nUse -e option to get more details.\n"}
2020-11-27T02:43:41.813653+00:00 vra-dev.btfin.com vcac-config: ERROR com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchExecutor.run:235 - Patch 5e57bbf6-077b-472d-bf91-e5369efd6dc5 FAILED
2020-11-27T02:43:41.817927+00:00 vra-dev.btfin.com vcac-config: ERROR com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchExecutor.run:236 - Exception : {}
        at com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchExecutor.validateCommandStatusForFinishLine(PatchExecutor.java:1143) ~[vcac-config-cli-7.6.0-SNAPSHOT.jar:?]
        at com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchExecutor.isAllCommandExecuted(PatchExecutor.java:1088) ~[vcac-config-cli-7.6.0-SNAPSHOT.jar:?]
        at com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchExecutor.executeCommands(PatchExecutor.java:1038) ~[vcac-config-cli-7.6.0-SNAPSHOT.jar:?]
        at com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchExecutor.run(PatchExecutor.java:228) [vcac-config-cli-7.6.0-SNAPSHOT.jar:?]
        at com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchDeployCommand.applyPatch(PatchDeployCommand.java:376) [vcac-config-cli-7.6.0-SNAPSHOT.jar:?]
        at com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchDeployCommand.installPatch(PatchDeployCommand.java:205) [vcac-config-cli-7.6.0-SNAPSHOT.jar:?]
        at com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchDeployCommand.execute(PatchDeployCommand.java:143) [vcac-config-cli-7.6.0-SNAPSHOT.jar:?]
        at com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchExecutor.validateCommandStatusForFinishLine(PatchExecutor.java:1143) ~[vcac-config-cli-7.6.0-SNAPSHOT.jar:?]
        at com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchExecutor.isAllCommandExecuted(PatchExecutor.java:1088) ~[vcac-config-cli-7.6.0-SNAPSHOT.jar:?]
        at com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchExecutor.executeCommands(PatchExecutor.java:1038) ~[vcac-config-cli-7.6.0-SNAPSHOT.jar:?]
        at com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchExecutor.run(PatchExecutor.java:228) ~[vcac-config-cli-7.6.0-SNAPSHOT.jar:?]
        at com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchDeployCommand.applyPatch(PatchDeployCommand.java:376) ~[vcac-config-cli-7.6.0-SNAPSHOT.jar:?]
        at com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchDeployCommand.installPatch(PatchDeployCommand.java:205) ~[vcac-config-cli-7.6.0-SNAPSHOT.jar:?]
        at com.vmware.vcac.cli.configurator.commands.cluster.patch.PatchDeployCommand.execute(PatchDeployCommand.java:143) ~[vcac-config-cli-7.6.0-SNAPSHOT.jar:?]

To fix this first we need to find out where all these rpm's were present

find / -iname  horizon-service-rpm*

/opt/vmware/share/htdocs/service/cafe/horizon-service-rpm-2.8.3.0-9188306.noarch.rpm

/storage/db/patches/repo/cafe/patchRpms/horizon-service-rpm-3.1.0.0-15433743.noarch.rpm

/storage/db/patches/repo/contents/vRA-patch/e0e25bfb58257b0099b38fb1bf01f16eb98632773aba60ab30785b8aaf2cf218/patch-vRA-7.5.0-10053539-HF16-Reverse/Update_Repo/package-pool/horizon-service-rpm-3.1.0.0-9963326.noarch.rpm

/storage/db/patches/repo/contents/vRA-patch/18c912aea693292f2759358992952ab9b8118f271c309b6479db9944a95498/patch-vRA-7.4.11855548.12200902-HF10/Update_Repo/package-pool/horizon-service-rpm-2.8.3.0-9188306.noarch.rpm

/storage/db/patches/repo/contents/vRA-patch/6791b6357f409565efa26d0c0de92093d812c3602504428510e93ed6be29bedb/patch-vRA-7.5.0-15998380-HF16/Update_Repo/package-pool/horizon-service-rpm-3.1.0.0-15448541.noarch.rpm

/storage/db/patches/repo/contents/vRA-patch/dae151dc79b61db2f25bf44847a06e3e99f31f2f1f5fd83a3b61f0f852ceee/patch-vRA-7.4.7782662.12200902-HF10-Reverse/Update_Repo/package-pool/horizon-service-rpm-2.8.3.0-7960664.noarch.rpm

/storage/db/patches/repo/contents/vRA-patch/c72d916c118cd455b201624fd8764c1e11f8fc33919f5f1e2b3c601d3f25ee95/patch-vRA-7.6.0-17090490-HF17/Update_Repo/package-pool/horizon-service-rpm-3.1.0.0-15433743.noarch.rpm

/storage/db/patches/repo/contents/vRA-patch/0518ce3a1b5e949621252a3bf9b35ebe5835a7702ba9a18a038261815f6d0bff/patch-vRA-7.6.0-13027280-HF17-Reverse/Update_Repo/package-pool/horizon-service-rpm-3.1.0.0-12694081.noarch.rpm

The rpm we are after is at the path

/storage/db/patches/repo/cafe/patchRpms/horizon-service-rpm-3.1.0.0-15433743.noarch.rpm

To fix the problem we had to execute this command

 rpm -Uvh --replacepkgs --oldpackage /storage/db/patches/repo/cafe/patchRpms/horizon-service-rpm-3.1.0.0-15433743.noarch.rpm

Expected outputs are as below

[master] vra-fqdn:/opt/vmware/var/log/vami # rpm -Uvh --replacepkgs --oldpackage /storage/db/patches/repo/cafe/patchRpms/horizon-service-rpm-3.1.0.0-15433743.noarch.rpm
Preparing...                ########################################### [100%]
saas-frontend upgrade :: pre-install
   1:horizon-service-rpm    ########################################### [100%]
saas-frontend :: upgrade
Create SSL pass through port for connector
Upgrade provisioning adapters
Installed Provisioning Adapter.
  Name=Default
  Id=2
  Installed Adapters:
    com.vmware.horizon.provisioning.adapters.office365.Office365ProvisioningAdapter
    com.vmware.horizon.provisioning.adapters.socialcast.SocialcastProvisioningAdapter
    com.vmware.horizon.provisioning.adapters.googleapps.GoogleAppsProvisioningAdapter
    com.vmware.horizon.provisioning.adapters.vchs.VchsProvisioningAdapter
    com.vmware.horizon.provisioning.adapters.airwatch.AirWatchProvisioningAdapter
    com.vmware.horizon.provisioning.adapters.mozy.MozyProvisioningAdapter
deleting solr index data
saas-frontend upgrade :: pre-uninstall
saas-frontend :: upgrade uninstall
[master] vra-fqdn:/opt/vmware/var/log/vami #

Once this is done go ahead and retry the failed patch installation from VAMI and it works.

horizon build versions are the same across 7.5 and 7.6. So in 7.6, a lower build version might be used

Just make a note that on upgrade this might happen. And when it happens use --oldpackage to replace rpm forcefully

Never miss a post

New guides on VMware Cloud Foundation, Aria Suite, and infrastructure automation. Follow along in your feed reader and new posts show up as soon as they are published.

Subscribe via RSS