Details
-
Bug
-
Status: Resolved
-
Blocker
-
Resolution: Fixed
-
2.5.2
-
None
Description
When attempting to finalize an upgrade between stack vendors, the finalization will fail because the service components are stuck in the IN_PROGRESS upgrade state. The problem seems to step from the distribution of the new stack. When the stack is distributed, there's no existing stack of that kind on the system, therefore the stack-select program is able to link them. This fools stack-select status into thinking that the component is reporting that version.
ambari=> select stack.stack_name, stack_version, hcs.component_name, hcs.version, hcs.upgrade_state FROM stack, hostcomponentstate hcs WHERE hcs.current_stack_id = stack.stack_id; stack_name | stack_version | component_name | version | upgrade_state -------------+---------------+------------------+------------+--------------- BigInsights | 4.2.5 | ZOOKEEPER_SERVER | 2.6.2.0-45 | IN_PROGRESS BigInsights | 4.2.5 | ZOOKEEPER_SERVER | 2.6.2.0-45 | IN_PROGRESS BigInsights | 4.2.5 | ZOOKEEPER_SERVER | 2.6.2.0-45 | IN_PROGRESS BigInsights | 4.2.5 | ZOOKEEPER_CLIENT | 2.6.2.0-45 | IN_PROGRESS BigInsights | 4.2.5 | ZOOKEEPER_CLIENT | 2.6.2.0-45 | IN_PROGRESS BigInsights | 4.2.5 | ZOOKEEPER_CLIENT | 2.6.2.0-45 | IN_PROGRESS
Because the version has already changed to 2.6.2.0-45, when components are restarted during the upgrade, the StackVersionListener will never change the upgrade state to COMPLETE.
STR:
- Install Ambari 2.4.2 with the BigInsights 4.2.5.0 stack
- Upgrade to Ambari 2.5.2
- Register HDP 2.6 - at this point, you'll see the problem
- Perform and upgrade and try to finalize