Interface UpgradeFinalizationManager

    • Method Detail

      • finalizeIfNeeded

        void finalizeIfNeeded()
                       throws UpgradeException
        Perform pending finalizeUpgradeTasks on the current node (no-op if none pending) if it is required, i.e. when ZDU is disabled. If executed concurrently in multiple nodes in a cluster, only one node will exclusively perform databaseUpgrade tasks.
        Throws:
        UpgradeException
      • isPendingDatabaseFinalization

        boolean isPendingDatabaseFinalization()
        Returns:
        true if the database has not been finalized.
      • isPendingLocalFinalization

        boolean isPendingLocalFinalization()
        Returns:
        true if the local node has not been finalization tasks on this node.
      • getLastRun

        Optional<UpgradeFinalizationManager.Run> getLastRun()
        Obtains the the most recent finalization run. Each finalization run will invalidate the previous result.
        Returns:
        finalization result or empty
      • markAsFullyFinalized

        void markAsFullyFinalized​(boolean updateBuildNumber)
                           throws com.atlassian.config.ConfigurationException
        Once installation is complete, we'll need to set the finalized build number in the database and home directory with the product build number.
        Parameters:
        updateBuildNumber - whether the database and home directory build numbers should be updated
        Throws:
        com.atlassian.config.ConfigurationException