| |
| |
| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="utf-8"> |
| <meta http-equiv="X-UA-Compatible" content="IE=edge"> |
| <meta name="viewport" content="width=device-width, initial-scale=1"> |
| |
| <meta name="description" content=""> |
| <meta name="author" content=""> |
| <link rel="icon" href="/favicon.ico"> |
| <base href="https://hadoop.apache.org"> |
| <title>Apache Hadoop</title> |
| |
| |
| <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> |
| |
| |
| <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous"> |
| <link rel="stylesheet" href="/css/hadoop.css"> |
| |
| |
| |
| </head> |
| |
| <body> |
| |
| <nav class="navbar navbar-inverse navbar-fixed-top"> |
| <div class="container"> |
| <div class="navbar-header"> |
| <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar"> |
| <span class="sr-only">Toggle navigation</span> |
| <span class="icon-bar"></span> |
| <span class="icon-bar"></span> |
| <span class="icon-bar"></span> |
| </button> |
| <img class="navbar-logo" src="/elephant.png"> |
| <a class="navbar-brand" href="/"> Apache Hadoop</a> |
| </div> |
| |
| <div id="navbar" class="navbar-collapse collapse"> |
| <ul class="nav navbar-nav"> |
| |
| |
| |
| <li class=""><a href="releases.html">Download</a></li> |
| |
| |
| |
| <li class="dropdown "> |
| <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Documentation <span class="caret"></span></a> |
| <ul class="dropdown-menu"> |
| |
| <li ><a href="https://hadoop.apache.org/docs/current/">Latest</a></li> |
| |
| <li ><a href="https://hadoop.apache.org/docs/stable/">Stable</a></li> |
| |
| |
| <li role="separator" class="divider"></li> |
| |
| <li><a href="https://hadoop.apache.org/docs/r3.3.1/">3.3.1</a></li> |
| |
| <li><a href="https://hadoop.apache.org/docs/r3.2.2/">3.2.2</a></li> |
| |
| <li><a href="https://hadoop.apache.org/docs/r2.10.1/">2.10.1</a></li> |
| |
| <li><a href="https://hadoop.apache.org/docs/r3.1.4/">3.1.4</a></li> |
| |
| <li role="separator" class="divider"></li> |
| <li><a href="https://wiki.apache.org/hadoop">Wiki</a></li> |
| |
| </ul> |
| </li> |
| |
| |
| |
| <li class="dropdown "> |
| <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a> |
| <ul class="dropdown-menu"> |
| |
| <li ><a href="/bylaws.html">Bylaws</a></li> |
| |
| <li ><a href="/committer_criteria.html">Criteria for Committership</a></li> |
| |
| <li ><a href="/mailing_lists.html">Mailing lists</a></li> |
| |
| <li ><a href="/cve_list.html">Published CVEs</a></li> |
| |
| <li ><a href="/who.html">Who We are</a></li> |
| |
| |
| </ul> |
| </li> |
| |
| |
| |
| <li class="dropdown active"> |
| <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Development <span class="caret"></span></a> |
| <ul class="dropdown-menu"> |
| |
| <li ><a href="https://cwiki.apache.org/confluence/display/HADOOP/How+To+Contribute">How to Contribute</a></li> |
| |
| <li ><a href="/issue_tracking.html">Issue Tracking</a></li> |
| |
| <li ><a href="/version_control.html">Version Control</a></li> |
| |
| <li ><a href="/versioning.html">Versioning</a></li> |
| |
| |
| </ul> |
| </li> |
| |
| |
| |
| <li class="dropdown "> |
| <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Help <span class="caret"></span></a> |
| <ul class="dropdown-menu"> |
| |
| <li ><a href="https://www.cafepress.com/hadoop">Buy Stuff</a></li> |
| |
| <li ><a href="https://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li> |
| |
| <li ><a href="https://www.apache.org/foundation/thanks.html">Thanks</a></li> |
| |
| |
| </ul> |
| </li> |
| |
| |
| </ul> |
| <ul class="nav navbar-nav navbar-right"> |
| <li> |
| <a href="https://www.apache.org/">Apache Software Foundation <span class="glyphicon glyphicon-new-window" aria-hidden="true"></span></a> |
| </li> |
| |
| |
| </ul> |
| </div> |
| |
| </div> |
| </nav> |
| |
| <div class="container"> |
| <h1>Apache Hadoop Release Versioning</h1> |
| <!--- |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. See accompanying LICENSE file. |
| --> |
| <h2 id="background">Background</h2> |
| <p>Apache Hadoop uses a version format of |
| <strong><major>.<minor>.<maintenance></strong>, where each version |
| component is a numeric value. Versions can also have additional suffixes |
| like <em>"-alpha2"</em> or <em>"-beta1"</em>, which denote the API compatibility |
| guarantees and quality of the release. We use <em>“a.b.c”</em> and <em>“x.y.z”</em> to |
| denote a dotted version triplet.</p> |
| <p>Major versions are used to introduce substantial, potentially |
| incompatible, changes. Examples of this include the replacement of |
| MapReduce 1 with YARN and MapReduce 2 in Hadoop 2, and the required Java |
| runtime version from JDK7 to JDK8 in Hadoop 3.</p> |
| <p>Minor versions are used to introduce new compatible features within a |
| major release line.</p> |
| <p>Maintenance releases include bug fixes or low-risk supportability |
| changes.</p> |
| <p>Hadoop’s versioning scheme has evolved over the years. The early days of |
| 0.20.2 leading up to the 1.y releases saw a <a href="http://blog.cloudera.com/blog/2012/01/an-update-on-apache-hadoop-1-0/">plethora of parallel |
| releases</a> |
| with different featuresets. Release activities coalesced in the early |
| 2.y release era, with a mostly linear progression of releases from 2.0.0 |
| through 2.7.0.</p> |
| <p>However, the ongoing maintenance of the 2.6.z and 2.7.z re-introduced |
| parallel active release lines to Hadoop. Additional plans for 2.8.z and |
| 3.0.z releases mean potentially four active release lines, necessitating |
| clarification on Hadoop versioning and how it affects these parallel |
| release branches.</p> |
| <h2 id="versioning-rules">Versioning rules</h2> |
| <p>To establish a common foundation of knowledge, we require the following |
| in terms of release versions.</p> |
| <ul> |
| <li>For <strong>a.b.c</strong> (maintenance) releases, the “c"s need to be released |
| in order.</li> |
| <li>For <strong>a.b.0</strong> (minor) releases, the “b"s need to be released in |
| order.</li> |
| <li>For <strong>a.0.0</strong> (major) releases, it comes after a specific x.y.0 |
| minor release.</li> |
| </ul> |
| <p>This means that new major releases need to be coordinated with the |
| previous minor release. New minor and maintenance releases only require |
| coordination within their release line.</p> |
| <p><em>"-alphaX”</em> and <em>"-betaX”</em> suffixed version can be treated as a.b.c |
| versions, with the first (e.g. <em>"-alpha1"</em>) being the a.b.0 release.</p> |
| <p>When it comes to setting fix versions, this policy is encoded by the |
| following set of rules:</p> |
| <ol> |
| <li>For each <strong>minor</strong> release line, set the <strong>lowest unreleased a.b.c |
| version, where c ≥ 0</strong>.</li> |
| <li>For each <strong>major</strong> release line, set the <strong>lowest unreleased a.b.0 |
| version</strong>.</li> |
| </ol> |
| <h2 id="example">Example</h2> |
| <p>As an example, as of August 3rd, 2016, the latest releases in the 2.6.x |
| and 2.7.x lines are 2.6.4 and 2.7.2. We have also cut the following |
| branches for planned future releases: branch-2.7.3, branch-2.8, and |
| branch-3.0.0-alpha1.</p> |
| <p>If we are committing a bugfix that is intended for the 2.6.5 release, we |
| would commit to:</p> |
| <ol> |
| <li>trunk (3.0.0-alpha2)</li> |
| <li>branch-3.0.0-alpha1 (3.0.0-alpha1)</li> |
| <li>branch-2 (2.9.0)</li> |
| <li>branch-2.8 (2.8.0)</li> |
| <li>branch-2.7 (2.7.4)</li> |
| <li>branch-2.7.3 (2.7.3)</li> |
| <li>branch-2.6 (2.6.5)</li> |
| </ol> |
| <p>Applying the above rules for setting fix versions:</p> |
| <ol> |
| <li>Rule 1: 2.6.z and 2.7.z are both minor release lines, so set |
| <strong>2.6.5</strong> and <strong>2.7.3</strong></li> |
| <li>Rule 2: 2.y.z and 3.y.z the major release lines, so set <strong>2.8.0</strong> |
| and <strong>3.0.0-alpha1</strong></li> |
| </ol> |
| <p>Note that when backporting changes, we always make sure to backport to |
| the next higher release in a release line. For instance, we make sure to |
| backport to branch-2.7 (2.7.4) when backporting to branch-2.7.3 (2.7.3), |
| and to branch-2 (2.9.0) when backporting to branch-2.8 (2.8.0). This |
| preserves the monotonicity of releases.</p> |
| |
| </div> |
| |
| <div class="container"> |
| <footer class="footer container"> |
| <div class="col-md-6"> |
| <p>Apache Hadoop, Hadoop, Apache, the Apache feather logo, |
| and the Apache Hadoop project logo are either registered trademarks or trademarks of the Apache Software Foundation |
| in the United States and other countries</p> |
| <p>Copyright © 2006-2021 The Apache Software Foundation</p> |
| <p><a href="/privacy_policy.html">Privacy policy</a></p> |
| </div> |
| <div class="col-md-6"> |
| <img class="img-responsive" src="/asf_logo_wide.png"/> |
| </div> |
| </footer> |
| </div> |
| |
| |
| <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> |
| <script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script> |
| <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> |
| <script> |
| $(function() { $('table').addClass('table table-striped'); }) |
| </script> |
| |
| <script type="application/javascript"> |
| var doNotTrack = false; |
| if (!doNotTrack) { |
| (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ |
| (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), |
| m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) |
| })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); |
| ga('create', 'UA-7453027-1', 'auto'); |
| |
| ga('send', 'pageview'); |
| } |
| </script> |
| </body> |
| </html> |
| |