Issue Details (XML | Word | Printable)

Key: HADOOP-2797
Type: New Feature New Feature
Status: Closed Closed
Resolution: Fixed
Priority: Critical Critical
Assignee: Raghu Angadi
Reporter: Robert Chansler
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Hadoop Common

Withdraw CRC upgrade from HDFS

Created: 07/Feb/08 09:48 PM   Updated: 08/Jul/09 04:42 PM
Return to search
Component/s: None
Affects Version/s: 0.13.0
Fix Version/s: 0.18.0

Time Tracking:
Not Specified

File Attachments:
  Size
File Licensed for inclusion in ASF works hadoop-14-dfs-dir.tgz 2008-04-30 01:17 AM Raghu Angadi 149 kB
Text File Licensed for inclusion in ASF works HADOOP-2797.patch 2008-04-30 01:06 AM Raghu Angadi 106 kB
Text File Licensed for inclusion in ASF works HADOOP-2797.patch 2008-04-28 11:48 PM Raghu Angadi 99 kB
Text File Licensed for inclusion in ASF works HADOOP-2797.patch 2008-04-28 06:21 PM Raghu Angadi 94 kB
Text File Licensed for inclusion in ASF works HADOOP-2797.patch 2008-02-21 08:27 PM Raghu Angadi 95 kB
Issue Links:
Dependants
 
Reference
 

Hadoop Flags: Incompatible change
Release Note:
Withdrew the upgrade-to-CRC facility. HDFS will no longer support upgrades from versions without CRCs for block data. Users upgrading from version 0.13 or earlier must first upgrade to an intermediate (0.14, 0.15, 0.16, 0.17) version before doing upgrade to version 0.18 or later.
Resolution Date: 30/Apr/08 01:32 AM


 Description  « Hide
HDFS will no longer support upgrades from versions without CRCs for block data. Users upgrading from version 0.13 or earlier must first upgrade to an intermediate (0.14, 0.15, 0.16, 0.17) version before upgrade to 0.18 or later.

 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Raghu Angadi added a comment - 21/Feb/08 06:35 PM

This is more than just removing BlockLevelCrcs. Hadoop needs a 'LAST_UPGRADABLE_LAYOUT_VERSION' which is considered early during "version upgrade" (as opposed to distributed upgrade) because when user tries to upgrade from very old version, NameNode and DataNode should exit before making any changes to the existing diretories.


Raghu Angadi added a comment - 21/Feb/08 08:27 PM

Suggested patch is attached. Note that that this is the first time Hadoop has a notion of versions that are not supported for upgraded. So there are a few non-trivial changes in "version upgrade" layer..

This does everything except changing hadoop-12-dfs-dir.tgz. This image will be upgraded to hadoop-14-dfs-dir.tgz. So TestDFSUpgradeFromImage fails.


Raghu Angadi added a comment - 28/Apr/08 06:21 PM
Updated patch for trunk.

dhruba borthakur added a comment - 28/Apr/08 08:50 PM
+1. Code looks good.

One option would be to keep the existing test and ensure that it fails. This will test that if anybody tries to upgrade an old version, then the upgrade will fail.


Tsz Wo (Nicholas), SZE added a comment - 28/Apr/08 09:29 PM
Is it true that some codes in FSImage.loadFSImage(File) can also be removed?

Raghu Angadi added a comment - 28/Apr/08 09:39 PM
Yes. It is true.. probably 2-3 checks.

Raghu Angadi added a comment - 28/Apr/08 11:48 PM
Updated patch for Hudson. This has all the changes except for the changes to hadoop-12-dfs-dir.txt and hadoop-12-dfs-dir.tgz required by TestDFSUpgradeFromImage. All the Hudson tests except TestDFSUpgradeFromImage should pass.

> One option would be to keep the existing test and ensure that it fails. This will test that if anybody tries to upgrade an old version, then the upgrade will fail.

In stead a new test case is added to TestDFSUpgrade.java that tests upgrade from older version.

Once Hudson passes (except one test), the following extra steps are required to commit :

  • rename hadoop-12-dfs-dir.txt to hadoop-dfs-dir.txt
  • delete hadoop-12-dfs-dir.tgz and add hadoop-dfs-dir.tgz (to be attached).
  • apply the updated patch.

Raghu Angadi added a comment - 28/Apr/08 11:58 PM
> All the Hudson tests except TestDFSUpgradeFromImage should pass.
One more test 'TestDistributedUpgrade' will fail too since it depends on the same DFS image.

Hadoop QA added a comment - 29/Apr/08 08:01 PM
-1 overall. Here are the results of testing the latest attachment
http://issues.apache.org/jira/secure/attachment/12381061/HADOOP-2797.patch
against trunk revision 645773.

@author +1. The patch does not contain any @author tags.

tests included +1. The patch appears to include 10 new or modified tests.

javadoc +1. The javadoc tool did not generate any warning messages.

javac +1. The applied patch does not generate any new javac compiler warnings.

release audit +1. The applied patch does not generate any new release audit warnings.

findbugs -1. The patch appears to introduce 1 new Findbugs warnings.

core tests -1. The patch failed core unit tests.

contrib tests +1. The patch passed contrib unit tests.

Test results: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/2338/testReport/
Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/2338/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
Checkstyle results: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/2338/artifact/trunk/build/test/checkstyle-errors.html
Console output: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/2338/console

This message is automatically generated.


Raghu Angadi added a comment - 30/Apr/08 01:06 AM
More complete patch (but won't work with hudson). FindBugs warning is also fixed. I will commit this with required svn changes.

Raghu Angadi added a comment - 30/Apr/08 01:17 AM
hadoop-14-dfs-dir.tgz will replace hadoop-12-dfs-dir.tgz in the trunk.

Raghu Angadi added a comment - 30/Apr/08 01:28 AM
I just committed this.

Hudson added a comment - 30/Apr/08 01:24 PM