Updating vCenter fails with the below error:
var/log/vmware/applmgmt/update_microservice.log
2021-12-15 08:39:46,930 - 9844 - update_microservice:: _runEvent: 395 - ERROR - Event callback failed: UnboundLocalError("local variable 'taskFailStatus' referenced before assignment") 'Traceback (most recent call last):\n File "/usr/lib/applmgmt/update/py/vmware/appliance/update/update_b2b.py", line 2600, in install\n MAX_RESUME_THRESHOLD)\n File "/usr/lib/applmgmt/update/py/vmware/appliance/update/update_b2b.py", line 2904, in _is_resume_threshold_reached\n if resume_count and int(resume_count) >= resume_threshold:\nValueError: invalid literal for int() with base 10: \'resume-threshold\'\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n File "/usr/lib/applmgmt/update/py/vmware/appliance/update/update_microservice.py", line 388, in _runEvent\n coroutine.send(1)\n File "/usr/lib/applmgmt/update/py/vmware/appliance/update/update_microservice.py", line 241, in stageAndInstallEventHandler\n coroutine.send(i)\n File "/usr/lib/applmgmt/update/py/vmware/appliance/update/update_b2b.py", line 2695, in install\n task.update(taskFailStatus, task.progress.completed,\nUnboundLocalError: local variable \'taskFailStatus\' referenced before assignment\n'
The value for resume-count in the config table in DB gets updated with the string "resume-threshold" instead of an integer value.
Currently there is no resolution.
To workaround the issue:
Try to unstage and retry stage-install.
OR
service-control --stop applmgmt
rm -rf /storage/core/software-update/updates/*
rm -rf /storage/core/software-update/stage/*
rm -rf /storage/db/patching.db
mv /storage/core/software-packages/staged-configuration.json /storage/core
mv /etc/applmgmt/appliance/software_update_state.conf /storage/core
service-control --start applmgmt