Author: cutting Date: Wed Aug 15 13:27:30 2007 New Revision: 566326 URL: http://svn.apache.org/viewvc?view=rev&rev=566326 Log: HADOOP-1717. Fix TestDFSUpgradeFromImage to work on Solaris. Contributed by Nigel.
Modified: lucene/hadoop/trunk/CHANGES.txt lucene/hadoop/trunk/src/test/org/apache/hadoop/dfs/TestDFSUpgradeFromImage.java Modified: lucene/hadoop/trunk/CHANGES.txt URL: http://svn.apache.org/viewvc/lucene/hadoop/trunk/CHANGES.txt?view=diff&rev=566326&r1=566325&r2=566326 ============================================================================== --- lucene/hadoop/trunk/CHANGES.txt (original) +++ lucene/hadoop/trunk/CHANGES.txt Wed Aug 15 13:27:30 2007 @@ -535,6 +535,9 @@ 157. HADOOP-1712. Fix an unhandled exception on datanode during block CRC upgrade. (Raghu Angadi via cutting) +158. HADOOP-1717. Fix TestDFSUpgradeFromImage to work on Solaris. + (nigel via cutting) + Release 0.13.0 - 2007-06-08 Modified: lucene/hadoop/trunk/src/test/org/apache/hadoop/dfs/TestDFSUpgradeFromImage.java URL: http://svn.apache.org/viewvc/lucene/hadoop/trunk/src/test/org/apache/hadoop/dfs/TestDFSUpgradeFromImage.java?view=diff&rev=566326&r1=566325&r2=566326 ============================================================================== --- lucene/hadoop/trunk/src/test/org/apache/hadoop/dfs/TestDFSUpgradeFromImage.java (original) +++ lucene/hadoop/trunk/src/test/org/apache/hadoop/dfs/TestDFSUpgradeFromImage.java Wed Aug 15 13:27:30 2007 @@ -68,11 +68,11 @@ if ( dfsDir.exists() && !FileUtil.fullyDelete(dfsDir) ) { throw new IOException("Could not delete dfs directory '" + dfsDir + "'"); } - - LOG.info("Unpacking the tar file " + tarFile); - String[] cmd = { "tar", "-zxf", FileUtil.makeShellPath(tarFile), - "-C", FileUtil.makeShellPath(dataDir) }; - Command.execCommand(cmd); + String cmd = "bash -c \"gzip -dc '" + FileUtil.makeShellPath(tarFile) + "' | (cd '" + + FileUtil.makeShellPath(dataDir) + "' ; tar -xf -)\""; + LOG.info("Unpacking the tar file. Cmd : " + cmd); + String[] shellCmd = { "sh", "-c", cmd }; + Command.execCommand(shellCmd); //Now read the reference info