Uploaded image for project: 'Ambari (Retired)'
  1. Ambari (Retired)
  2. AMBARI-22469

Ambari upgrade failed

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • 2.6.0
    • 2.6.1
    • ambari-server
    • None

    Description

      Ambari upgrade would fail for all Ambari view servers.
      Steps to reproduce:
      1. Install Ambari 2.5.2 and setup it as view server. (it you don't set up it up as view server also it fails)
      2. now install 2.6.0
      3. run ambari-server upgrade
      it fails out with below exception.

      ERROR: Error executing schema upgrade, please check the server logs.
      ERROR: Error output from schema upgrade command:
      ERROR: Exception in thread "main" org.apache.ambari.server.AmbariException: Unable to find any CURRENT repositories.
      	at org.apache.ambari.server.upgrade.SchemaUpgradeHelper.executeUpgrade(SchemaUpgradeHelper.java:203)
      	at org.apache.ambari.server.upgrade.SchemaUpgradeHelper.main(SchemaUpgradeHelper.java:418)
      Caused by: org.apache.ambari.server.AmbariException: Unable to find any CURRENT repositories.
      	at org.apache.ambari.server.upgrade.UpgradeCatalog260.getCurrentVersionID(UpgradeCatalog260.java:510)
      	at org.apache.ambari.server.upgrade.UpgradeCatalog260.executeDDLUpdates(UpgradeCatalog260.java:194)
      	at org.apache.ambari.server.upgrade.AbstractUpgradeCatalog.upgradeSchema(AbstractUpgradeCatalog.java:923)
      	at org.apache.ambari.server.upgrade.SchemaUpgradeHelper.executeUpgrade(SchemaUpgradeHelper.java:200)
      	... 1 more
      
      
      ERROR: Ambari server upgrade failed. Please look at /var/log/ambari-server/ambari-server.log, for more details.
      ERROR: Exiting with exit code 11.
      REASON: Schema upgrade failed.
      

      For some reason we are checking cluster_version table entries and throwing up above exception.

      In UpgradeCatalog260.java
      public int getCurrentVersionID() throws AmbariException, SQLException {
          List<Integer> currentVersionList = dbAccessor.getIntColumnValues(CLUSTER_VERSION_TABLE, REPO_VERSION_ID_COLUMN,
              new String[]{STATE_COLUMN}, new String[]{CURRENT}, false);
          if (currentVersionList.isEmpty()) {
            throw new AmbariException("Unable to find any CURRENT repositories.");
          } else if (currentVersionList.size() != 1) {
            throw new AmbariException("The following repositories were found to be CURRENT: ".concat(StringUtils.join(currentVersionList, ",")));
          }
          return currentVersionList.get(0);
        }
      

      Attachments

        1. AMBARI-22469.patch
          2 kB
          Dmitry Lysnichenko

        Issue Links

          Activity

            People

              dmitriusan Dmitry Lysnichenko
              apappu@hortonworks.com amarnath reddy pappu
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: