Skip to main content

Complete the Release

This document describes the follow-up wrap-up steps to perform after the release vote in the dev@doris mailing list has been completed and passed.

Release Completion Checklist

StepActionPerformed by
1. Upload the package to ReleaseMove the source package, signature, and checksum files from dev to releasePMC member
2. Publish the Maven Staging repositoryClick Release in Apache NexusRelease Manager
3. Prepare the release notesUpdate the GitHub Release and the official website download pageRelease Manager
4. Clean up old versions in SVNKeep only the latest version, and replace old version links with archive URLsRelease Manager
5. Send the announce emailAnnounce the new release on dev@dorisRelease Manager

1. Upload the Package to Release

After the formal release vote passes, send the [Result] email first, then prepare the Release Package. Copy the source package, signature files, and hash files from the corresponding folder previously published under dev into a new directory (for example, 1.1.0). Notes:

  • The file name must not include the rcxx suffix (you may rename the file, but do not recompute the signature).
  • Hashes may be recomputed; the result is the same.

Only PMC members have permission to perform this step.

Source SVN path:

https://dist.apache.org/repos/dist/dev/doris/

Target SVN path:

https://dist.apache.org/repos/dist/release/doris/

Example command:

svn mv -m "move doris 1.1.0-rc05 to release" \
https://dist.apache.org/repos/dist/dev/doris/1.1 \
https://dist.apache.org/repos/dist/release/doris/1.1

For a first-time release, the KEYS file also needs to be copied over and added under the SVN release directory. After it is added successfully, the published files are visible at:

https://dist.apache.org/repos/dist/release/doris/1.xx/

After a short wait, they are also visible on the Apache official site:

http://www.apache.org/dist/doris/1.xx/

This section uses Doris Core as an example. For other components, replace the corresponding names accordingly.

Link typeURL
Download linkhttp://www.apache.org/dyn/closer.cgi?filename=doris/1.xx/apache-doris-1.xx-src.tar.gz&action=download
wget downloadhttps://www.apache.org/dyn/mirrors/mirrors.cgi?action=download&filename=doris/1.xx/apache-doris-1.xx-src.tar.gz
Original locationhttps://www.apache.org/dist/doris/1.xx/
Closer entryhttp://www.apache.org/dyn/closer.cgi/doris/1.xx/apache-doris-1.xx-src.tar.gz
Source packagehttp://www.apache.org/dyn/closer.cgi/doris/1.xx/apache-doris-1.xx-src.tar.gz
ASC signaturehttp://archive.apache.org/dist/doris/1.xx/apache-doris-1.xx-src.tar.gz.asc
sha512 checksumhttp://archive.apache.org/dist/doris/1.xx/apache-doris-1.xx-src.tar.gz.sha512
KEYShttp://archive.apache.org/dist/doris/KEYS

Example wget command:

wget --trust-server-names "https://www.apache.org/dyn/mirrors/mirrors.cgi?action=download&filename=doris/1.xx/apache-doris-1.xx-src.tar.gz"

For detailed rules, see the Apache download page guidelines.

2.2 Maven

In the Apache Maven Staging Repositories, find the corresponding Staging Repo:

  1. If it has not been closed yet, click close first.
  2. Click Release to perform the formal release.

If the close step reports No public key: Key with id: (xxx) was not able to be located on, run the following command to sync the public key to a public keyserver, then close again:

gpg --keyserver hkp://keyserver.ubuntu.com --send-keys xxx

The value xxx can be obtained from gpg -k.

2.3 Prepare the Release Notes

Two places need to be updated:

2.3.1 GitHub Release Page

https://github.com/apache/doris/releases/tag/0.9.0-rc01

2.3.2 Doris Website Download Page

The download page is a Markdown file at the following paths:

docs/zh-CN/downloads/downloads.md
docs/en/downloads/downloads.md

Two changes are needed:

  1. Change the download URLs of the previous version to the Apache archive URLs (see the next section).
  2. Add download information for the new version.

2.4 Clean Up Old Versions in SVN

2.4.1 Delete Old Versions from SVN

SVN only needs to keep the packages of the latest version. After a new release, clean up the old versions so that only the latest version's packages remain at the following two paths:

https://dist.apache.org/repos/dist/release/doris/
https://dist.apache.org/repos/dist/dev/doris/

2.4.2 Replace with the Archive URL

Change the download URLs of old versions on the Doris website download page to the archive page URL:

TypeURL
Download pagehttp://doris.apache.org/downloads.html
Archive pagehttp://archive.apache.org/dist/doris

Apache has a sync mechanism that archives historical released versions. For the procedure, see How to Archive. Even after the old packages are removed from SVN, they remain available on the archive page.

3. Announce Email

Email subject:

[ANNOUNCE] Apache Doris 1.xx release

Send to the mailing list:

dev@doris.apache.org

Email body:

Hi All,

We are pleased to announce the release of Apache Doris 1.xx.

Apache Doris is an MPP-based interactive SQL data warehousing for reporting and analysis.

The release is available at:
http://doris.apache.org/master/zh-CN/downloads/downloads.html

Thanks to everyone who has contributed to this release, and the release note can be found here:
https://github.com/apache/doris/releases

Best Regards,

On behalf of the Doris team,
xxx

FAQ

Q1: svn mv reports a permission error?

Only PMC members have write permission on the release SVN directory. Regular Committers need to contact a PMC member to perform the operation on their behalf.

Q2: Maven reports No public key after clicking Release?

The GPG public key has not been uploaded to a public keyserver. Run the following command to sync the public key to a public keyserver, then retry:

gpg --keyserver hkp://keyserver.ubuntu.com --send-keys <KEY_ID>

<KEY_ID> can be obtained from gpg -k.

Possible causes:

  • The files were just committed to the SVN release directory; CDN propagation takes 10 to 30 minutes.
  • Old versions have been cleaned up, but the download page has not been updated to use the archive URLs.

Q4: Users cannot find an old version when downloading?

Old versions are automatically archived by Apache. The download page needs to update the old version links to the path http://archive.apache.org/dist/doris/<version>/.