ambari-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nate Cole (JIRA)" <>
Subject [jira] [Created] (AMBARI-19527) Downgrade executes <pre-upgrade> section if <pre-downgrade> is not defined
Date Fri, 13 Jan 2017 14:36:26 GMT
Nate Cole created AMBARI-19527:

             Summary: Downgrade executes <pre-upgrade> section if <pre-downgrade>
is not defined
                 Key: AMBARI-19527
             Project: Ambari
          Issue Type: Bug
          Components: ambari-server
            Reporter: Nate Cole
            Assignee: Nate Cole
            Priority: Critical
             Fix For: 2.5.0

When creating the initial upgrade packs, an effort was made to make them as least-verbose
as possible.  In that, we assumed that all tasks that occurred during an Upgrade would also
occur on a Downgrade.  That assumption led to some sneaky bugs that are difficult to troubleshoot.

The real fix is to make the XSD enforce "sibling" elements, such that when PRE-UPGRADE tasks
are defined, you can enforce that a PRE-DOWNGRADE element exist.  Unfortunately, the JDK (even
1.8) doesn't support that version of XSD in JAXB.

The interim solution was to use the afterUnmarshal secret sauce to validate that the elements
exist.  Allow a pre-downgrade or post-downgrade element to indicate that it can reuse the
(pre-post)upgrade element definitions.

Many of the changes here are in upgrade packs to add the new required elements, and the unit
test that parses all upgrade packs passes.

This message was sent by Atlassian JIRA

View raw message