You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zookeeper.apache.org by si...@apache.org on 2012/09/07 07:30:28 UTC
svn commit: r1381882 - in /zookeeper/bookkeeper/branches/branch-4.1:
CHANGES.txt
bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/FileSystemUpgrade.java
bookkeeper-server/src/test/java/org/apache/bookkeeper/bookie/UpgradeTest.java
Author: sijie
Date: Fri Sep 7 05:30:27 2012
New Revision: 1381882
URL: http://svn.apache.org/viewvc?rev=1381882&view=rev
Log:
BOOKKEEPER-387: BookKeeper Upgrade is not working. (surendra via sijie)
Modified:
zookeeper/bookkeeper/branches/branch-4.1/CHANGES.txt
zookeeper/bookkeeper/branches/branch-4.1/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/FileSystemUpgrade.java
zookeeper/bookkeeper/branches/branch-4.1/bookkeeper-server/src/test/java/org/apache/bookkeeper/bookie/UpgradeTest.java
Modified: zookeeper/bookkeeper/branches/branch-4.1/CHANGES.txt
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/branches/branch-4.1/CHANGES.txt?rev=1381882&r1=1381881&r2=1381882&view=diff
==============================================================================
--- zookeeper/bookkeeper/branches/branch-4.1/CHANGES.txt (original)
+++ zookeeper/bookkeeper/branches/branch-4.1/CHANGES.txt Fri Sep 7 05:30:27 2012
@@ -24,6 +24,8 @@ Release 4.1.1 - UNRELEASED
BOOKKEEPER-381: ReadLastConfirmedOp's Logger class name is wrong (surendra via sijie)
+ BOOKKEEPER-387: BookKeeper Upgrade is not working. (surendra via sijie)
+
hedwig-server/
BOOKKEEPER-330: System.currentTimeMillis usage in Hedwig (uma via sijie)
Modified: zookeeper/bookkeeper/branches/branch-4.1/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/FileSystemUpgrade.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/branches/branch-4.1/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/FileSystemUpgrade.java?rev=1381882&r1=1381881&r2=1381882&view=diff
==============================================================================
--- zookeeper/bookkeeper/branches/branch-4.1/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/FileSystemUpgrade.java (original)
+++ zookeeper/bookkeeper/branches/branch-4.1/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/FileSystemUpgrade.java Fri Sep 7 05:30:27 2012
@@ -195,6 +195,7 @@ public class FileSystemUpgrade {
int version = detectPreviousVersion(d);
if (version == Cookie.CURRENT_COOKIE_LAYOUT_VERSION) {
LOG.info("Directory is current, no need to upgrade");
+ continue;
}
try {
File curDir = new File(d, Bookie.CURRENT_DIR);
@@ -230,6 +231,11 @@ public class FileSystemUpgrade {
throw new BookieException.UpgradeException(ioe);
}
}
+
+ if (deferredMoves.isEmpty()) {
+ return;
+ }
+
try {
c.writeToZooKeeper(zk, conf);
} catch (KeeperException ke) {
@@ -376,4 +382,4 @@ public class FileSystemUpgrade {
throw new IllegalArgumentException(err);
}
}
-}
\ No newline at end of file
+}
Modified: zookeeper/bookkeeper/branches/branch-4.1/bookkeeper-server/src/test/java/org/apache/bookkeeper/bookie/UpgradeTest.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/branches/branch-4.1/bookkeeper-server/src/test/java/org/apache/bookkeeper/bookie/UpgradeTest.java?rev=1381882&r1=1381881&r2=1381882&view=diff
==============================================================================
--- zookeeper/bookkeeper/branches/branch-4.1/bookkeeper-server/src/test/java/org/apache/bookkeeper/bookie/UpgradeTest.java (original)
+++ zookeeper/bookkeeper/branches/branch-4.1/bookkeeper-server/src/test/java/org/apache/bookkeeper/bookie/UpgradeTest.java Fri Sep 7 05:30:27 2012
@@ -214,6 +214,23 @@ public class UpgradeTest {
}
@Test
+ public void testUpgradeCurrent() throws Exception {
+ String journalDir = newV2JournalDirectory();
+ String ledgerDir = newV2LedgerDirectory();
+ testUpgradeProceedure(zkutil.getZooKeeperConnectString(), journalDir, ledgerDir);
+ // Upgrade again
+ ServerConfiguration conf = new ServerConfiguration()
+ .setZkServers(zkutil.getZooKeeperConnectString())
+ .setJournalDirName(journalDir)
+ .setLedgerDirNames(new String[] { ledgerDir })
+ .setBookiePort(3181);
+ FileSystemUpgrade.upgrade(conf); // should work fine with current directory
+ Bookie b = new Bookie(conf);
+ b.start();
+ b.shutdown();
+ }
+
+ @Test
public void testCommandLine() throws Exception {
PrintStream origerr = System.err;
PrintStream origout = System.out;