GreenArrow Email Software Documentation

GreenArrow Downgrades

If you encounter trouble with a GreenArrow update, you can downgrade to GreenArrow 4.222.0 or later using the instructions on this page.

We do not support downgrading to pre-4.222.0 GreenArrow versions.

Please feel free to contact GreenArrow Technical Support if you’d like assistance downgrading. Please also contact us if you perform the downgrade on your own in response to an issue you encountered with a GreenArrow Update. We want to resolve the issue that prompted the downgrade.

Downgrade Procedure

Follow these steps to downgrade GreenArrow:

  1. Identify what version of GreenArrow to downgrade to. If the GreenArrow Changelog indicates when the change you’re having issues with was made, you can downgrade to the last GreenArrow release before the change.

    For RedHat-family distributions

    View the available GreenArrow versions by running:

    yum --enablerepo=greenarrow --showduplicates list greenarrow
    

    For Debian-family distributions

    View the available GreenArrow versions by running:

    sed -e '/greenarrow main/ s/^#*//' -i /etc/apt/sources.list.d/greenarrow.list
    apt-get update
    apt-cache madison greenarrow
    sed -e '/greenarrow main/ s/^#*/#/' -i /etc/apt/sources.list.d/greenarrow.list
    

  2. If you plan to downgrade to GreenArrow 4.222.0 (the oldest version that we support downgrading to), then you’ll need to first convert to the old disk-queue format.

    If you’re downgrading to anything newer than GreenArrow 4.222.0, then you should skip this step.

    1. Stop the MTA and suspend all delivery attempts. While the MTA is stopped, new delivery attempts will not start. Click and open tracking will be processed normally:

      hvmail_init stop
      

    2. Convert the messages in the new disk-queue into the old disk-queue’s format. This needs to be done before downgrading packages since the downgrade utility is only included in newer releases.

      greenarrow_downgrade_disk_queue
      

      After this command runs successfully, you’ll see output that looks like this:

      172 message batches converted to the old queue format
      0 message batches failed to convert to the old queue format
      

  3. Review the GreenArrow changelog for any greenarrow.conf configuration directives that were added after the GreenArrow release you wish to downgrade to. Remove them from your greenarrow.conf configuration file.

  4. Downgrade the GreenArrow package.

    For RedHat-family distributions

    Downgrade to the desired GreenArrow version with this command, replacing VERSION with the desired GreenArrow version, such as 4.222.0:

    yum downgrade --enablerepo=greenarrow greenarrow-VERSION
    

    If you receive an error about a greenarrow-support version incompatibility, then also downgrade to the greenarrow-support version that the error indicates is required. For example:

    yum downgrade --enablerepo=greenarrow greenarrow-4.222.0 greenarrow-support-2021.03.05
    

    For Debian-family distributions

    Enable GreenArrow’s package repository:

    sed -e '/greenarrow main/ s/^#*//' -i /etc/apt/sources.list.d/greenarrow.list
    apt-get update
    

    Downgrade to the desired GreenArrow version with this command, replacing VERSION with the desired GreenArrow version, such as 4.222.0-0:

    apt-get install greenarrow greenarrow=VERSION
    

    If you receive an error about a greenarrow-support version incompatibility, then also downgrade to the greenarrow-support version that the error indicates is required. For example:

    apt-get install greenarrow=4.222.0-0 greenarrow-support=2021.03.05-0
    

    Disable GreenArrow’s package repository to prevent accidental updates in the future:

    sed -e '/greenarrow main/ s/^#*/#/' -i /etc/apt/sources.list.d/greenarrow.list
    

  5. Run the greenarrow_config validate command to check for invalid configuration directives and correct any issues that it reports.

    If you make any edits in this step, then run greenarrow_config reload to apply them.

  6. Run migrations to undo anything added by the newer version of GreenArrow.

    greenarrow update
    

  7. If you stopped the GreenArrow MTA as part of a downgrade to GreenArrow 4.222.0-0, then start it back up now.

    hvmail_init start
    

  8. Verify that some common misconfigurations are not present. Each test gets a simple pass/fail result:

    hvmail_check_config
    

  9. Verify that all services are running normally. Any services with an abnormal state appear in red:

    hvmail_init status
    

  10. Send yourself a test email (replacing [email protected] with your actual email address):

    date | /var/hvmail/bin/mailsubj "GreenArrow Test Message" [email protected]
    


Copyright © 2012–2024 GreenArrow Email