You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ambari.apache.org by "Dmytro Grinenko (JIRA)" <ji...@apache.org> on 2017/11/27 11:42:00 UTC

[jira] [Comment Edited] (AMBARI-22465) Post-Upgrade Tasks Use the Wrong Repository and Hooks Folders

    [ https://issues.apache.org/jira/browse/AMBARI-22465?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16266678#comment-16266678 ] 

Dmytro Grinenko edited comment on AMBARI-22465 at 11/27/17 11:41 AM:
---------------------------------------------------------------------

[~Tim Thorpe] mentioned function in the description use effectiveRepositoryVersion, which is an version passed with create upgrade request. That means, we always injecting "TO" version, regardless if it is RU or EU. 

Cant confirm any issue on a test cluster, can i have some STR, which could lead to the issue? 


was (Author: dgrinenko):
[~Tim Thorpe] mentioned function in the description using effectiveRepositoryVersion, which is an version passed with create upgrade request. That means, we always injecting "TO" version, regardless if it is RU or EU. 

Cant confirm any issue on a test cluster, can i have some STR, which could lead to the issue? 

> Post-Upgrade Tasks Use the Wrong Repository and Hooks Folders
> -------------------------------------------------------------
>
>                 Key: AMBARI-22465
>                 URL: https://issues.apache.org/jira/browse/AMBARI-22465
>             Project: Ambari
>          Issue Type: Bug
>    Affects Versions: 2.6.0
>            Reporter: Jonathan Hurley
>            Assignee: Dmytro Grinenko
>            Priority: Critical
>             Fix For: 2.6.1
>
>
> During an express upgrade, when performing an upgrade between stack versions, the wrong repository/stacks/hooks are sent down during the {{post-upgrade}} step:
> {code}
>       <component name="FOO">
>         <pre-upgrade>
>           <task xsi:type="execute" hosts="all">
>             <script>scripts/upgrade.py</script>
>             <function>bar</function>
>           </task>
>         </pre-upgrade>
>         <upgrade>
>           <task xsi:type="restart-task"/>
>         </upgrade>
>         <post-upgrade>
>           <task xsi:type="execute" hosts="any">
>             <script>scripts/upgrade.py</script>
>             <function>baz</function>
>           </task>
>         </post-upgrade>
> {code}
> In both the {{pre-upgrade}} and {{post-upgrade}} commands, the scripts folder location refers to the old stack. The restart/start command, however, is correct.
> It appears as though the problem is found here:
> https://github.com/apache/ambari/blob/branch-2.6/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java#L1052-L1055
> {code:title=makeActionStage()}
>     // the ru_execute_tasks invokes scripts - it needs information about where
>     // the scripts live and for that it should always use the target repository
>     // stack
>     applyRepositoryAssociatedParameters(wrapper, effectiveRepositoryVersion.getStackId(), params);
> {code}
> It uses the effective stack ID which during an express upgrade is the source stack of the upgrade.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)