You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zookeeper.apache.org by fp...@apache.org on 2011/09/05 19:39:03 UTC

svn commit: r1165369 [3/9] - in /zookeeper/bookkeeper/trunk: ./ bookkeeper-benchmark/src/main/java/org/apache/bookkeeper/benchmark/ bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/ bookkeeper-server/src/main/java/org/apache/bookkeeper/clie...

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerOpenOp.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerOpenOp.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerOpenOp.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerOpenOp.java Mon Sep  5 17:38:57 2011
@@ -1,5 +1,5 @@
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -7,16 +7,16 @@
  * to you 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.
- * 
+ *
  */
 
 package org.apache.bookkeeper.client;
@@ -34,11 +34,11 @@ import org.apache.zookeeper.data.Stat;
 
 /**
  * Encapsulates the ledger open operation
- * 
+ *
  */
 class LedgerOpenOp implements DataCallback {
     static final Logger LOG = Logger.getLogger(LedgerOpenOp.class);
-    
+
     final BookKeeper bk;
     final long ledgerId;
     final OpenCallback cb;
@@ -47,10 +47,10 @@ class LedgerOpenOp implements DataCallba
     final byte[] passwd;
     final DigestType digestType;
     final boolean unsafe;
-    
+
     /**
      * Constructor.
-     * 
+     *
      * @param bk
      * @param ledgerId
      * @param digestType
@@ -58,7 +58,7 @@ class LedgerOpenOp implements DataCallba
      * @param cb
      * @param ctx
      */
-    
+
     public LedgerOpenOp(BookKeeper bk, long ledgerId, DigestType digestType, byte[] passwd, boolean unsafe, OpenCallback cb, Object ctx) {
         this.bk = bk;
         this.ledgerId = ledgerId;
@@ -96,7 +96,7 @@ class LedgerOpenOp implements DataCallba
         }
         if (rc != KeeperException.Code.OK.intValue()) {
             LOG.error("Could not read metadata for ledger: " + ledgerId, KeeperException.create(KeeperException.Code
-                    .get(rc), path));
+                      .get(rc), path));
             cb.openComplete(BKException.Code.ZKException, null, this.ctx);
             return;
         }
@@ -130,14 +130,14 @@ class LedgerOpenOp implements DataCallba
 
         if(!unsafe)
             lh.recover(new GenericCallback<Void>() {
-                @Override
-                public void operationComplete(int rc, Void result) {
-                    if (rc != BKException.Code.OK) {
-                        cb.openComplete(BKException.Code.LedgerRecoveryException, null, LedgerOpenOp.this.ctx);
-                    } else {
+            @Override
+            public void operationComplete(int rc, Void result) {
+                if (rc != BKException.Code.OK) {
+                    cb.openComplete(BKException.Code.LedgerRecoveryException, null, LedgerOpenOp.this.ctx);
+                } else {
                     cb.openComplete(BKException.Code.OK, lh, LedgerOpenOp.this.ctx);
-                    }
                 }
-            });
+            }
+        });
     }
 }

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerRecoveryOp.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerRecoveryOp.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerRecoveryOp.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerRecoveryOp.java Mon Sep  5 17:38:57 2011
@@ -32,11 +32,11 @@ import org.jboss.netty.buffer.ChannelBuf
 
 /**
  * This class encapsulated the ledger recovery operation. It first does a read
- * with entry-id of -1 (LedgerHandle.LAST_ADD_CONFIRMED) to all bookies. Then 
- * starting from the last confirmed entry (from hints in the ledger entries), 
+ * with entry-id of -1 (LedgerHandle.LAST_ADD_CONFIRMED) to all bookies. Then
+ * starting from the last confirmed entry (from hints in the ledger entries),
  * it reads forward until it is not able to find a particular entry. It closes
  * the ledger at that entry.
- * 
+ *
  */
 class LedgerRecoveryOp implements ReadEntryCallback, ReadCallback, AddCallback {
     static final Logger LOG = Logger.getLogger(LedgerRecoveryOp.class);
@@ -85,7 +85,7 @@ class LedgerRecoveryOp implements ReadEn
                 // Too bad, this bookie didnt give us a valid answer, we
                 // still might be able to recover though so continue
                 LOG.error("Mac mismatch while reading last entry from bookie: "
-                        + lh.metadata.currentEnsemble.get(bookieIndex));
+                          + lh.metadata.currentEnsemble.get(bookieIndex));
             }
         }
 
@@ -128,9 +128,9 @@ class LedgerRecoveryOp implements ReadEn
         // get back to prev value
         lh.lastAddConfirmed--;
         if (rc == BKException.Code.OK) {
-            LedgerEntry entry = seq.nextElement(); 
+            LedgerEntry entry = seq.nextElement();
             byte[] data = entry.getEntry();
-            
+
             /*
              * We will add this entry again to make sure it is written to enough
              * replicas. We subtract the length of the data itself, since it will
@@ -138,7 +138,7 @@ class LedgerRecoveryOp implements ReadEn
              */
             lh.length = entry.getLength() - (long) data.length;
             lh.asyncAddEntry(data, this, null);
-            
+
             return;
         }
 
@@ -156,7 +156,7 @@ class LedgerRecoveryOp implements ReadEn
 
         // otherwise, some other error, we can't handle
         LOG.error("Failure " + BKException.getMessage(rc) + " while reading entry: " + lh.lastAddConfirmed + 1
-                + " ledger: " + lh.ledgerId + " while recovering ledger");
+                  + " ledger: " + lh.ledgerId + " while recovering ledger");
         cb.operationComplete(rc, null);
         return;
     }
@@ -167,7 +167,7 @@ class LedgerRecoveryOp implements ReadEn
             // Give up, we can't recover from this error
 
             LOG.error("Failure " + BKException.getMessage(rc) + " while writing entry: " + lh.lastAddConfirmed + 1
-                    + " ledger: " + lh.ledgerId + " while recovering ledger");
+                      + " ledger: " + lh.ledgerId + " while recovering ledger");
             cb.operationComplete(rc, null);
             return;
         }

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/MacDigestManager.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/MacDigestManager.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/MacDigestManager.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/MacDigestManager.java Mon Sep  5 17:38:57 2011
@@ -36,15 +36,15 @@ public class MacDigestManager extends Di
         SecretKeySpec keySpec = new SecretKeySpec(macKey, KEY_ALGORITHM);
         mac = Mac.getInstance(KEY_ALGORITHM);
         mac.init(keySpec);
-        
-        
+
+
     }
 
     static byte[] genDigest(String pad, byte[] passwd) throws NoSuchAlgorithmException {
         MessageDigest digest = MessageDigest.getInstance(DIGEST_ALGORITHM);
         digest.update(pad.getBytes());
         digest.update(passwd);
-                return digest.digest();
+        return digest.digest();
     }
 
     @Override
@@ -52,16 +52,16 @@ public class MacDigestManager extends Di
         return 20;
     }
 
-    
+
     @Override
     byte[] getValueAndReset() {
         return mac.doFinal();
     }
-    
+
     @Override
     void update(byte[] data, int offset, int length) {
         mac.update(data, offset, length);
     }
-    
-    
+
+
 }

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingAddOp.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingAddOp.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingAddOp.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingAddOp.java Mon Sep  5 17:38:57 2011
@@ -30,8 +30,8 @@ import org.jboss.netty.buffer.ChannelBuf
  * sends ack back to the application. If a bookie fails, a replacement is made
  * and placed at the same position in the ensemble. The pending adds are then
  * rereplicated.
- * 
- * 
+ *
+ *
  */
 class PendingAddOp implements WriteCallback {
     final static Logger LOG = Logger.getLogger(PendingAddOp.class);
@@ -55,7 +55,7 @@ class PendingAddOp implements WriteCallb
 
     void sendWriteRequest(int bookieIndex, int arrayIndex) {
         lh.bk.bookieClient.addEntry(lh.metadata.currentEnsemble.get(bookieIndex), lh.ledgerId, lh.ledgerKey, entryId, toSend,
-                this, arrayIndex);
+                                    this, arrayIndex);
     }
 
     void unsetSuccessAndSendWriteRequest(int bookieIndex) {
@@ -70,14 +70,14 @@ class PendingAddOp implements WriteCallb
         if (replicaIndex < 0) {
             if (LOG.isDebugEnabled()) {
                 LOG.debug("Leaving unchanged, ledger: " + lh.ledgerId + " entry: " + entryId + " bookie index: "
-                        + bookieIndex);
+                          + bookieIndex);
             }
             return;
         }
 
         if (LOG.isDebugEnabled()) {
             LOG.debug("Unsetting success for ledger: " + lh.ledgerId + " entry: " + entryId + " bookie index: "
-                    + bookieIndex);
+                      + bookieIndex);
         }
 
         // if we had already heard a success from this array index, need to
@@ -87,8 +87,8 @@ class PendingAddOp implements WriteCallb
             successesSoFar[replicaIndex] = false;
             numResponsesPending++;
         }
-        
-         sendWriteRequest(bookieIndex, replicaIndex);
+
+        sendWriteRequest(bookieIndex, replicaIndex);
     }
 
     void initiate(ChannelBuffer toSend) {
@@ -110,7 +110,7 @@ class PendingAddOp implements WriteCallb
             LOG.warn("Write did not succeed: " + ledgerId + ", " + entryId + ". But we have already fixed it.");
             return;
         }
-        
+
         if (rc != BKException.Code.OK) {
             LOG.warn("Write did not succeed: " + ledgerId + ", " + entryId);
             lh.handleBookieFailure(addr, bookieIndex);
@@ -121,13 +121,13 @@ class PendingAddOp implements WriteCallb
         if (!successesSoFar[replicaIndex]) {
             successesSoFar[replicaIndex] = true;
             numResponsesPending--;
-            
+
             // do some quick checks to see if some adds may have finished. All
             // this will be checked under locks again
             if (numResponsesPending == 0 && lh.pendingAddOps.peek() == this) {
                 lh.sendAddSuccessCallbacks();
             }
-        } 
+        }
     }
 
     void submitCallback(final int rc) {
@@ -135,4 +135,4 @@ class PendingAddOp implements WriteCallb
         lh.opCounterSem.release();
     }
 
-}
\ No newline at end of file
+}

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java Mon Sep  5 17:38:57 2011
@@ -1,7 +1,7 @@
 package org.apache.bookkeeper.client;
 
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -9,16 +9,16 @@ package org.apache.bookkeeper.client;
  * to you 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.
- * 
+ *
  */
 
 import java.net.InetSocketAddress;
@@ -42,7 +42,7 @@ import java.io.IOException;
  * When all the data read has come back, the application callback is called.
  * This class could be improved because we could start pushing data to the
  * application as soon as it arrives rather than waiting for the whole thing.
- * 
+ *
  */
 
 class PendingReadOp implements Enumeration<LedgerEntry>, ReadEntryCallback {
@@ -73,12 +73,12 @@ class PendingReadOp implements Enumerati
         ArrayList<InetSocketAddress> ensemble = null;
         do {
 
-            if(LOG.isDebugEnabled()){
+            if(LOG.isDebugEnabled()) {
                 LOG.debug("Acquiring lock: " + i);
             }
-           
+
             lh.opCounterSem.acquire();
-            
+
             if (i == nextEnsembleChange) {
                 ensemble = lh.metadata.getEnsemble(i);
                 nextEnsembleChange = lh.metadata.getNextEnsembleChange(i);
@@ -108,7 +108,7 @@ class PendingReadOp implements Enumerati
         ArrayList<InetSocketAddress> ensemble = lh.metadata.getEnsemble(entry.entryId);
         int bookeIndex = lh.distributionSchedule.getBookieIndex(entry.entryId, entry.nextReplicaIndexToReadFrom - 1);
         LOG.error(errMsg + " while reading entry: " + entry.entryId + " ledgerId: " + lh.ledgerId + " from bookie: "
-                + ensemble.get(bookeIndex));
+                  + ensemble.get(bookeIndex));
         sendRead(ensemble, entry, rc);
         return;
     }
@@ -121,7 +121,7 @@ class PendingReadOp implements Enumerati
             logErrorAndReattemptRead(entry, "Error: " + BKException.getMessage(rc), rc);
             return;
         }
-        
+
         ChannelBufferInputStream is;
         try {
             is = lh.macManager.verifyDigestAndReturnData(entryId, buffer);
@@ -129,9 +129,9 @@ class PendingReadOp implements Enumerati
             logErrorAndReattemptRead(entry, "Mac mismatch", BKException.Code.DigestMatchException);
             return;
         }
-        
+
         entry.entryDataStream = is;
-        
+
         /*
          * The length is a long and it is the last field of the metadata of an entry.
          * Consequently, we have to subtract 8 from METADATA_LENGTH to get the length.
@@ -142,18 +142,18 @@ class PendingReadOp implements Enumerati
         if (numPendingReads == 0) {
             submitCallback(BKException.Code.OK);
         }
-        
-        if(LOG.isDebugEnabled()){
+
+        if(LOG.isDebugEnabled()) {
             LOG.debug("Releasing lock: " + entryId);
         }
-        
+
         lh.opCounterSem.release();
-        
+
         if(numPendingReads < 0)
             LOG.error("Read too many values");
     }
 
-    private void submitCallback(int code){
+    private void submitCallback(int code) {
         cb.readComplete(code, lh, PendingReadOp.this, PendingReadOp.this.ctx);
     }
     public boolean hasMoreElements() {

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/ReadLastConfirmedOp.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/ReadLastConfirmedOp.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/ReadLastConfirmedOp.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/ReadLastConfirmedOp.java Mon Sep  5 17:38:57 2011
@@ -30,16 +30,16 @@ import org.apache.log4j.Logger;
 import org.jboss.netty.buffer.ChannelBuffer;
 
 /**
- * This class encapsulated the read last confirmed operation. 
- * 
+ * This class encapsulated the read last confirmed operation.
+ *
  */
 class ReadLastConfirmedOp implements ReadEntryCallback {
     static final Logger LOG = Logger.getLogger(LedgerRecoveryOp.class);
     LedgerHandle lh;
-    Object ctx; 
+    Object ctx;
     int numResponsesPending;
     int validResponses;
-    long maxAddConfirmed; 
+    long maxAddConfirmed;
     long maxLength = 0;
     volatile boolean notComplete = true;
 
@@ -62,9 +62,9 @@ class ReadLastConfirmedOp implements Rea
     public synchronized void readEntryComplete(final int rc, final long ledgerId, final long entryId,
             final ChannelBuffer buffer, final Object ctx) {
         int bookieIndex = (Integer) ctx;
-        
+
         numResponsesPending--;
-        
+
         if (rc == BKException.Code.OK) {
             try {
                 RecoveryData recoveryData = lh.macManager.verifyDigestAndReturnLastConfirmed(buffer);
@@ -74,10 +74,10 @@ class ReadLastConfirmedOp implements Rea
                 // Too bad, this bookie didn't give us a valid answer, we
                 // still might be able to recover though so continue
                 LOG.error("Mac mismatch while reading last entry from bookie: "
-                        + lh.metadata.currentEnsemble.get(bookieIndex));
+                          + lh.metadata.currentEnsemble.get(bookieIndex));
             }
         }
-        
+
         if (rc == BKException.Code.NoSuchLedgerExistsException || rc == BKException.Code.NoSuchEntryException) {
             // this still counts as a valid response, e.g., if the client crashed without writing any entry
             validResponses++;
@@ -96,6 +96,6 @@ class ReadLastConfirmedOp implements Rea
             LOG.error("While recovering ledger: " + ledgerId + " did not hear success responses from all quorums");
             cb.readLastConfirmedComplete(BKException.Code.LedgerRecoveryException, maxAddConfirmed, ctx);
         }
-        
+
     }
 }

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/RoundRobinDistributionSchedule.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/RoundRobinDistributionSchedule.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/RoundRobinDistributionSchedule.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/RoundRobinDistributionSchedule.java Mon Sep  5 17:38:57 2011
@@ -25,7 +25,7 @@ import org.apache.bookkeeper.util.MathUt
  * fashion. For ensemble size 3, and quorum size 2, Entry 0 goes to bookie 0 and
  * 1, entry 1 goes to bookie 1 and 2, and entry 2 goes to bookie 2 and 0, and so
  * on.
- * 
+ *
  */
 class RoundRobinDistributionSchedule implements DistributionSchedule {
     int quorumSize;

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/SyncCounter.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/SyncCounter.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/SyncCounter.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/SyncCounter.java Mon Sep  5 17:38:57 2011
@@ -25,7 +25,7 @@ import java.util.Enumeration;
 
 /**
  * Implements objects to help with the synchronization of asynchronous calls
- * 
+ *
  */
 
 class SyncCounter {

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieClient.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieClient.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieClient.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieClient.java Mon Sep  5 17:38:57 2011
@@ -1,7 +1,7 @@
 package org.apache.bookkeeper.proto;
 
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -9,16 +9,16 @@ package org.apache.bookkeeper.proto;
  * to you 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.
- * 
+ *
  */
 
 import java.io.IOException;
@@ -39,7 +39,7 @@ import org.jboss.netty.channel.socket.ni
 
 /**
  * Implements the client-side part of the BookKeeper protocol.
- * 
+ *
  */
 public class BookieClient {
     static final Logger LOG = Logger.getLogger(BookieClient.class);
@@ -73,7 +73,7 @@ public class BookieClient {
     }
 
     public void addEntry(final InetSocketAddress addr, final long ledgerId, final byte[] masterKey, final long entryId,
-            final ChannelBuffer toSend, final WriteCallback cb, final Object ctx) {
+                         final ChannelBuffer toSend, final WriteCallback cb, final Object ctx) {
 
         final PerChannelBookieClient client = lookupClient(addr);
 
@@ -90,7 +90,7 @@ public class BookieClient {
     }
 
     public void readEntry(final InetSocketAddress addr, final long ledgerId, final long entryId,
-            final ReadEntryCallback cb, final Object ctx) {
+                          final ReadEntryCallback cb, final Object ctx) {
 
         final PerChannelBookieClient client = lookupClient(addr);
 
@@ -107,8 +107,8 @@ public class BookieClient {
         });
     }
 
-    public void close(){
-        for (PerChannelBookieClient channel: channels.values()){
+    public void close() {
+        for (PerChannelBookieClient channel: channels.values()) {
             channel.close();
         }
     }

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieProtocol.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieProtocol.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieProtocol.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieProtocol.java Mon Sep  5 17:38:57 2011
@@ -1,7 +1,7 @@
 package org.apache.bookkeeper.proto;
 
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -9,23 +9,23 @@ package org.apache.bookkeeper.proto;
  * to you 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.
- * 
+ *
  */
 
 /**
  * The packets of the Bookie protocol all have a 4-byte integer indicating the
  * type of request or response at the very beginning of the packet followed by a
  * payload.
- * 
+ *
  */
 public interface BookieProtocol {
     /**

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieServer.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieServer.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieServer.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieServer.java Mon Sep  5 17:38:57 2011
@@ -1,7 +1,7 @@
 package org.apache.bookkeeper.proto;
 
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -9,16 +9,16 @@ package org.apache.bookkeeper.proto;
  * to you 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.
- * 
+ *
  */
 
 import java.io.File;
@@ -33,7 +33,7 @@ import org.apache.log4j.Logger;
 
 /**
  * Implements the server-side part of the BookKeeper protocol.
- * 
+ *
  */
 public class BookieServer implements NIOServerFactory.PacketProcessor, BookkeeperInternalCallbacks.WriteCallback {
     int port;
@@ -64,7 +64,7 @@ public class BookieServer implements NIO
         running = false;
     }
 
-    public boolean isRunning(){
+    public boolean isRunning() {
         return bookie.isRunning() && nioServerFactory.isRunning() && running;
     }
 
@@ -138,8 +138,8 @@ public class BookieServer implements NIO
             sb.append(ledgerDirectory[i]);
         }
         String hello = String.format(
-                "Hello, I'm your bookie, listening on port %1$s. ZKServers are on %2$s. Journals are in %3$s. Ledgers are stored in %4$s.",
-                port, zkServers, journalDirectory, sb);
+                           "Hello, I'm your bookie, listening on port %1$s. ZKServers are on %2$s. Journals are in %3$s. Ledgers are stored in %4$s.",
+                           port, zkServers, journalDirectory, sb);
         LOG.info(hello);
         BookieServer bs = new BookieServer(port, zkServers, journalDirectory, ledgerDirectory);
         bs.start();
@@ -254,5 +254,5 @@ public class BookieServer implements NIO
         }
         src.sendResponse(new ByteBuffer[] { bb });
     }
-    
+
 }

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookkeeperInternalCallbacks.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookkeeperInternalCallbacks.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookkeeperInternalCallbacks.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookkeeperInternalCallbacks.java Mon Sep  5 17:38:57 2011
@@ -1,5 +1,5 @@
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -7,16 +7,16 @@
  * to you 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.
- * 
+ *
  */
 
 package org.apache.bookkeeper.proto;
@@ -33,7 +33,7 @@ public class BookkeeperInternalCallbacks
     /**
      * Callback for calls from BookieClient objects. Such calls are for replies
      * of write operations (operations to add an entry to a ledger).
-     * 
+     *
      */
 
     public interface WriteCallback {
@@ -43,12 +43,12 @@ public class BookkeeperInternalCallbacks
     public interface GenericCallback<T> {
         void operationComplete(int rc, T result);
     }
-    
+
     /**
      * Declaration of a callback implementation for calls from BookieClient objects.
      * Such calls are for replies of read operations (operations to read an entry
      * from a ledger).
-     * 
+     *
      */
 
     public interface ReadEntryCallback {

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/NIOServerFactory.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/NIOServerFactory.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/NIOServerFactory.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/NIOServerFactory.java Mon Sep  5 17:38:57 2011
@@ -45,7 +45,7 @@ public class NIOServerFactory extends Th
     public interface PacketProcessor {
         public void processPacket(ByteBuffer packet, Cnxn src);
     }
-    
+
     ServerStats stats = new ServerStats();
 
     Logger LOG = Logger.getLogger(NIOServerFactory.class);
@@ -93,7 +93,7 @@ public class NIOServerFactory extends Th
     public boolean isRunning() {
         return !ss.socket().isClosed();
     }
-    
+
     @Override
     public void run() {
         while (!ss.socket().isClosed()) {
@@ -129,7 +129,7 @@ public class NIOServerFactory extends Th
 
     /**
      * clear all the connections in the selector
-     * 
+     *
      */
     synchronized public void clear() {
         selector.wakeup();
@@ -339,7 +339,7 @@ public class NIOServerFactory extends Th
 
         /*
          * (non-Javadoc)
-         * 
+         *
          * @see org.apache.zookeeper.server.ServerCnxnIface#getSessionTimeout()
          */
         public int getSessionTimeout() {
@@ -371,7 +371,7 @@ public class NIOServerFactory extends Th
 
         /*
          * (non-Javadoc)
-         * 
+         *
          * @see org.apache.zookeeper.server.ServerCnxnIface#close()
          */
         public void close() {
@@ -503,9 +503,9 @@ public class NIOServerFactory extends Th
                 Channel channel = sk.channel();
                 if (channel instanceof SocketChannel) {
                     sb.append(" ").append(((SocketChannel) channel).socket().getRemoteSocketAddress()).append("[")
-                            .append(Integer.toHexString(sk.interestOps())).append("](queued=").append(
-                                    getOutstandingRequests()).append(",recved=").append(getPacketsReceived()).append(
-                                    ",sent=").append(getPacketsSent()).append(")\n");
+                    .append(Integer.toHexString(sk.interestOps())).append("](queued=").append(
+                        getOutstandingRequests()).append(",recved=").append(getPacketsReceived()).append(
+                            ",sent=").append(getPacketsSent()).append(")\n");
                 }
                 return sb.toString();
             }

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/PerChannelBookieClient.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/PerChannelBookieClient.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/PerChannelBookieClient.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/PerChannelBookieClient.java Mon Sep  5 17:38:57 2011
@@ -57,7 +57,7 @@ import org.jboss.netty.handler.codec.fra
 /**
  * This class manages all details of connection to a particular bookie. It also
  * has reconnect logic if a connection to a bookie fails.
- * 
+ *
  */
 
 @ChannelPipelineCoverage("one")
@@ -87,7 +87,7 @@ public class PerChannelBookieClient exte
     Channel channel = null;
 
     public PerChannelBookieClient(OrderedSafeExecutor executor, ClientSocketChannelFactory channelFactory,
-            InetSocketAddress addr, AtomicLong totalBytesOutstanding) {
+                                  InetSocketAddress addr, AtomicLong totalBytesOutstanding) {
         this.addr = addr;
         this.executor = executor;
         this.totalBytesOutstanding = totalBytesOutstanding;
@@ -192,7 +192,7 @@ public class PerChannelBookieClient exte
     /**
      * This method should be called only after connection has been checked for
      * {@link #connectIfNeededAndDoOp(GenericCallback)}
-     * 
+     *
      * @param ledgerId
      * @param masterKey
      * @param entryId
@@ -203,10 +203,10 @@ public class PerChannelBookieClient exte
      * @param ctx
      */
     void addEntry(final long ledgerId, byte[] masterKey, final long entryId, ChannelBuffer toSend, WriteCallback cb,
-            Object ctx) {
+                  Object ctx) {
 
         final int entrySize = toSend.readableBytes();
-        
+
         // if (totalBytesOutstanding.get() > maxMemory) {
         // // TODO: how to throttle, throw an exception, or call the callback?
         // // Maybe this should be done at the layer above?
@@ -217,8 +217,8 @@ public class PerChannelBookieClient exte
         addCompletions.put(completionKey, new AddCompletion(cb, entrySize, ctx));
 
         int totalHeaderSize = 4 // for the length of the packet
-        + 4 // for the type of request
-        + masterKey.length; // for the master key
+                              + 4 // for the type of request
+                              + masterKey.length; // for the master key
 
         ChannelBuffer header = channel.getConfig().getBufferFactory().getBuffer(totalHeaderSize);
         header.writeInt(totalHeaderSize - 4 + entrySize);
@@ -234,7 +234,7 @@ public class PerChannelBookieClient exte
                 if (future.isSuccess()) {
                     if (LOG.isDebugEnabled()) {
                         LOG.debug("Successfully wrote request for adding entry: " + entryId + " ledger-id: " + ledgerId
-                                + " bookie: " + channel.getRemoteAddress() + " entry length: " + entrySize);
+                                  + " bookie: " + channel.getRemoteAddress() + " entry length: " + entrySize);
                     }
                     // totalBytesOutstanding.addAndGet(entrySize);
                 } else {
@@ -251,9 +251,9 @@ public class PerChannelBookieClient exte
         readCompletions.put(key, new ReadCompletion(cb, ctx));
 
         int totalHeaderSize = 4 // for the length of the packet
-        + 4 // for request type
-        + 8 // for ledgerId
-        + 8; // for entryId
+                              + 4 // for request type
+                              + 8 // for ledgerId
+                              + 8; // for entryId
 
         ChannelBuffer tmpEntry = channel.getConfig().getBufferFactory().getBuffer(totalHeaderSize);
         tmpEntry.writeInt(totalHeaderSize - 4);
@@ -268,7 +268,7 @@ public class PerChannelBookieClient exte
                 if (future.isSuccess()) {
                     if (LOG.isDebugEnabled()) {
                         LOG.debug("Successfully wrote request for reading entry: " + entryId + " ledger-id: "
-                                + ledgerId + " bookie: " + channel.getRemoteAddress());
+                                  + ledgerId + " bookie: " + channel.getRemoteAddress());
                     }
                 } else {
                     errorOutReadKey(key);
@@ -293,10 +293,10 @@ public class PerChannelBookieClient exte
 
                 if (readCompletion != null) {
                     LOG.error("Could not write  request for reading entry: " + key.entryId + " ledger-id: "
-                            + key.ledgerId + " bookie: " + channel.getRemoteAddress());
+                              + key.ledgerId + " bookie: " + channel.getRemoteAddress());
 
                     readCompletion.cb.readEntryComplete(BKException.Code.BookieHandleNotAvailableException,
-                            key.ledgerId, key.entryId, null, readCompletion.ctx);
+                                                        key.ledgerId, key.entryId, null, readCompletion.ctx);
                 }
             }
 
@@ -315,10 +315,10 @@ public class PerChannelBookieClient exte
                     if(channel != null)
                         bAddress = channel.getRemoteAddress().toString();
                     LOG.error("Could not write request for adding entry: " + key.entryId + " ledger-id: "
-                            + key.ledgerId + " bookie: " + bAddress);
+                              + key.ledgerId + " bookie: " + bAddress);
 
                     addCompletion.cb.writeComplete(BKException.Code.BookieHandleNotAvailableException, key.ledgerId,
-                            key.entryId, addr, addCompletion.ctx);
+                                                   key.entryId, addr, addCompletion.ctx);
                     LOG.error("Invoked callback method: " + key.entryId);
                 }
             }
@@ -372,7 +372,7 @@ public class PerChannelBookieClient exte
     @Override
     public void channelDisconnected(ChannelHandlerContext ctx, ChannelStateEvent e) throws Exception {
         LOG.info("Disconnected from bookie: " + addr);
-    	errorOutOutstandingEntries();
+        errorOutOutstandingEntries();
         channel.close();
 
         connected = false;
@@ -448,7 +448,7 @@ public class PerChannelBookieClient exte
     void handleAddResponse(long ledgerId, long entryId, int rc) {
         if (LOG.isDebugEnabled()) {
             LOG.debug("Got response for add request from bookie: " + addr + " for ledger: " + ledgerId + " entry: "
-                    + entryId + " rc: " + rc);
+                      + entryId + " rc: " + rc);
         }
 
         // convert to BKException code because thats what the uppper
@@ -456,7 +456,7 @@ public class PerChannelBookieClient exte
         // error codes.
         if (rc != BookieProtocol.EOK) {
             LOG.error("Add for ledger: " + ledgerId + ", entry: " + entryId + " failed on bookie: " + addr
-                    + " with code: " + rc);
+                      + " with code: " + rc);
             rc = BKException.Code.WriteException;
         } else {
             rc = BKException.Code.OK;
@@ -466,7 +466,7 @@ public class PerChannelBookieClient exte
         ac = addCompletions.remove(new CompletionKey(ledgerId, entryId));
         if (ac == null) {
             LOG.error("Unexpected add response received from bookie: " + addr + " for ledger: " + ledgerId
-                    + ", entry: " + entryId + " , ignoring");
+                      + ", entry: " + entryId + " , ignoring");
             return;
         }
 
@@ -479,7 +479,7 @@ public class PerChannelBookieClient exte
     void handleReadResponse(long ledgerId, long entryId, int rc, ChannelBuffer buffer) {
         if (LOG.isDebugEnabled()) {
             LOG.debug("Got response for read request from bookie: " + addr + " for ledger: " + ledgerId + " entry: "
-                    + entryId + " rc: " + rc + "entry length: " + buffer.readableBytes());
+                      + entryId + " rc: " + rc + "entry length: " + buffer.readableBytes());
         }
 
         // convert to BKException code because thats what the uppper
@@ -491,7 +491,7 @@ public class PerChannelBookieClient exte
             rc = BKException.Code.NoSuchEntryException;
         } else {
             LOG.error("Read for ledger: " + ledgerId + ", entry: " + entryId + " failed on bookie: " + addr
-                    + " with code: " + rc);
+                      + " with code: " + rc);
             rc = BKException.Code.ReadException;
         }
 
@@ -509,7 +509,7 @@ public class PerChannelBookieClient exte
 
         if (readCompletion == null) {
             LOG.error("Unexpected read response recieved from bookie: " + addr + " for ledger: " + ledgerId
-                    + ", entry: " + entryId + " , ignoring");
+                      + ", entry: " + entryId + " , ignoring");
             return;
         }
 
@@ -518,7 +518,7 @@ public class PerChannelBookieClient exte
 
     /**
      * Boiler-plate wrapper classes follow
-     * 
+     *
      */
 
     private static class ReadCompletion {

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/streaming/LedgerInputStream.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/streaming/LedgerInputStream.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/streaming/LedgerInputStream.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/streaming/LedgerInputStream.java Mon Sep  5 17:38:57 2011
@@ -1,5 +1,5 @@
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -7,16 +7,16 @@
  * to you 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.
- * 
+ *
  */
 package org.apache.bookkeeper.streaming;
 
@@ -42,7 +42,7 @@ public class LedgerInputStream extends I
 
     /**
      * construct a outputstream from a ledger handle
-     * 
+     *
      * @param lh
      *            ledger handle
      * @throws {@link BKException}, {@link InterruptedException}
@@ -58,7 +58,7 @@ public class LedgerInputStream extends I
 
     /**
      * construct a outputstream from a ledger handle
-     * 
+     *
      * @param lh
      *            the ledger handle
      * @param size
@@ -76,7 +76,7 @@ public class LedgerInputStream extends I
 
     /**
      * Method close currently doesn't do anything. The application
-     * is supposed to open and close the ledger handle backing up 
+     * is supposed to open and close the ledger handle backing up
      * a stream ({@link LedgerHandle}).
      */
     @Override
@@ -88,7 +88,7 @@ public class LedgerInputStream extends I
 
     /**
      * refill the buffer, we need to read more bytes
-     * 
+     *
      * @return if we can refill or not
      */
     private synchronized boolean refill() throws IOException {

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/streaming/LedgerOutputStream.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/streaming/LedgerOutputStream.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/streaming/LedgerOutputStream.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/streaming/LedgerOutputStream.java Mon Sep  5 17:38:57 2011
@@ -1,5 +1,5 @@
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -7,16 +7,16 @@
  * to you 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.
- * 
+ *
  */
 package org.apache.bookkeeper.streaming;
 
@@ -43,7 +43,7 @@ public class LedgerOutputStream extends 
 
     /**
      * construct a outputstream from a ledger handle
-     * 
+     *
      * @param lh
      *            ledger handle
      */
@@ -55,7 +55,7 @@ public class LedgerOutputStream extends 
 
     /**
      * construct a outputstream from a ledger handle
-     * 
+     *
      * @param lh
      *            the ledger handle
      * @param size
@@ -97,7 +97,7 @@ public class LedgerOutputStream extends 
 
     /**
      * make space for len bytes to be written to the buffer.
-     * 
+     *
      * @param len
      * @return if true then we can make space for len if false we cannot
      */
@@ -144,4 +144,4 @@ public class LedgerOutputStream extends 
         byte oneB = (byte) (b & 0xFF);
         bytebuff.put(oneB);
     }
-}
\ No newline at end of file
+}

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/BookKeeperTools.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/BookKeeperTools.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/BookKeeperTools.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/BookKeeperTools.java Mon Sep  5 17:38:57 2011
@@ -1,7 +1,7 @@
 package org.apache.bookkeeper.tools;
 
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -9,16 +9,16 @@ package org.apache.bookkeeper.tools;
  * to you 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.
- * 
+ *
  */
 
 import java.io.IOException;
@@ -54,7 +54,7 @@ import org.jboss.netty.buffer.ChannelBuf
 
 /**
  * Provides Admin Tools to manage the BookKeeper cluster.
- * 
+ *
  */
 public class BookKeeperTools {
 
@@ -93,7 +93,7 @@ public class BookKeeperTools {
      * how to connect to ZooKeeper to retrieve information about the BookKeeper
      * cluster. We need this before we can do any type of admin operations on
      * the BookKeeper cluster.
-     * 
+     *
      * @param zkServers
      *            Comma separated list of hostname:port pairs for the ZooKeeper
      *            servers cluster.
@@ -123,7 +123,7 @@ public class BookKeeperTools {
 
     /**
      * Shutdown method to gracefully release resources that this class uses.
-     * 
+     *
      * @throws InterruptedException
      *             if there is an error shutting down the clients that this
      *             class uses.
@@ -184,7 +184,7 @@ public class BookKeeperTools {
      * placeholder function since there is no way we can get this information
      * easily. In the future, BookKeeper should store this ledger metadata
      * somewhere such that an admin tool can access it.
-     * 
+     *
      * @param ledgerId
      *            LedgerId we are retrieving the digestType for.
      * @return DigestType for the input ledger
@@ -198,7 +198,7 @@ public class BookKeeperTools {
      * placeholder function since there is no way we can get this information
      * easily. In the future, BookKeeper should store this ledger metadata
      * somewhere such that an admin tool can access it.
-     * 
+     *
      * @param ledgerId
      *            LedgerId we are retrieving the password for.
      * @return Password for the input ledger
@@ -226,7 +226,7 @@ public class BookKeeperTools {
      * active set of bookies, perhaps based on load. All ZooKeeper ledger
      * metadata will be updated to point to the new bookie(s) that contain the
      * replicated ledger fragments.
-     * 
+     *
      * @param bookieSrc
      *            Source bookie that had a failure. We want to replicate the
      *            ledger fragments that were stored there.
@@ -268,7 +268,7 @@ public class BookKeeperTools {
      * active set of bookies, perhaps based on load. All ZooKeeper ledger
      * metadata will be updated to point to the new bookie(s) that contain the
      * replicated ledger fragments.
-     * 
+     *
      * @param bookieSrc
      *            Source bookie that had a failure. We want to replicate the
      *            ledger fragments that were stored there.
@@ -282,7 +282,7 @@ public class BookKeeperTools {
      *            Context for the RecoverCallback to call.
      */
     public void asyncRecoverBookieData(final InetSocketAddress bookieSrc, final InetSocketAddress bookieDest,
-            final RecoverCallback cb, final Object context) {
+                                       final RecoverCallback cb, final Object context) {
         // Sync ZK to make sure we're reading the latest bookie/ledger data.
         zk.sync(LEDGERS_PATH, new AsyncCallback.VoidCallback() {
             @Override
@@ -303,7 +303,7 @@ public class BookKeeperTools {
      * a specific destination bookie, then just use that one. Otherwise, we'll
      * randomly pick one of the other available bookies to use for each ledger
      * fragment we are replicating.
-     * 
+     *
      * @param bookieSrc
      *            Source bookie that had a failure. We want to replicate the
      *            ledger fragments that were stored there.
@@ -317,7 +317,7 @@ public class BookKeeperTools {
      *            Context for the RecoverCallback to call.
      */
     private void getAvailableBookies(final InetSocketAddress bookieSrc, final InetSocketAddress bookieDest,
-            final RecoverCallback cb, final Object context) {
+                                     final RecoverCallback cb, final Object context) {
         final List<InetSocketAddress> availableBookies = new LinkedList<InetSocketAddress>();
         if (bookieDest != null) {
             availableBookies.add(bookieDest);
@@ -329,7 +329,7 @@ public class BookKeeperTools {
                 public void processResult(int rc, String path, Object ctx, List<String> children) {
                     if (rc != Code.OK.intValue()) {
                         LOG.error("ZK error getting bookie nodes: ", KeeperException.create(KeeperException.Code
-                                .get(rc), path));
+                                  .get(rc), path));
                         cb.recoverComplete(BKException.Code.ZKException, context);
                         return;
                     }
@@ -354,7 +354,7 @@ public class BookKeeperTools {
      * ledgers. From this, we can open each ledger and look at the metadata to
      * determine if any of the ledger fragments for it were stored at the dead
      * input bookie.
-     * 
+     *
      * @param bookieSrc
      *            Source bookie that had a failure. We want to replicate the
      *            ledger fragments that were stored there.
@@ -373,13 +373,13 @@ public class BookKeeperTools {
      *            server to replicate data to.
      */
     private void getActiveLedgers(final InetSocketAddress bookieSrc, final InetSocketAddress bookieDest,
-            final RecoverCallback cb, final Object context, final List<InetSocketAddress> availableBookies) {
+                                  final RecoverCallback cb, final Object context, final List<InetSocketAddress> availableBookies) {
         zk.getChildren(LEDGERS_PATH, null, new AsyncCallback.ChildrenCallback() {
             @Override
             public void processResult(int rc, String path, Object ctx, List<String> children) {
                 if (rc != Code.OK.intValue()) {
                     LOG.error("ZK error getting ledger nodes: ", KeeperException.create(KeeperException.Code.get(rc),
-                            path));
+                              path));
                     cb.recoverComplete(BKException.Code.ZKException, context);
                     return;
                 }
@@ -409,7 +409,7 @@ public class BookKeeperTools {
     /**
      * This method asynchronously recovers a given ledger if any of the ledger
      * entries were stored on the failed bookie.
-     * 
+     *
      * @param bookieSrc
      *            Source bookie that had a failure. We want to replicate the
      *            ledger fragments that were stored there.
@@ -426,7 +426,7 @@ public class BookKeeperTools {
      *            server to replicate data to.
      */
     private void recoverLedger(final InetSocketAddress bookieSrc, final String ledgerNode,
-            final MultiCallback ledgerMcb, final List<InetSocketAddress> availableBookies) {
+                               final MultiCallback ledgerMcb, final List<InetSocketAddress> availableBookies) {
         /*
          * The available node is also stored in this path so ignore that. That
          * node is the path for the set of available Bookie Servers.
@@ -483,7 +483,7 @@ public class BookKeeperTools {
                 Map<Long, Long> ledgerFragmentsRange = new HashMap<Long, Long>();
                 Long curEntryId = null;
                 for (Map.Entry<Long, ArrayList<InetSocketAddress>> entry : lh.getLedgerMetadata().getEnsembles()
-                        .entrySet()) {
+                .entrySet()) {
                     if (curEntryId != null)
                         ledgerFragmentsRange.put(curEntryId, entry.getKey() - 1);
                     curEntryId = entry.getKey();
@@ -529,7 +529,7 @@ public class BookKeeperTools {
                     public void processResult(int rc, String path, Object ctx) {
                         if (rc != Code.OK.intValue()) {
                             LOG.error("BK error replicating ledger fragments for ledger: " + lId, BKException
-                                    .create(rc));
+                                      .create(rc));
                             ledgerMcb.processResult(rc, null, null);
                             return;
                         }
@@ -549,11 +549,11 @@ public class BookKeeperTools {
                             public void processResult(int rc, String path, Object ctx, Stat stat) {
                                 if (rc != Code.OK.intValue()) {
                                     LOG.error("ZK error updating ledger config metadata for ledgerId: " + lh.getId(),
-                                            KeeperException.create(KeeperException.Code.get(rc), path));
+                                              KeeperException.create(KeeperException.Code.get(rc), path));
                                 } else {
                                     LOG.info("Updated ZK for ledgerId: (" + lh.getId()
-                                            + ") to point ledger fragments from old dead bookie: (" + bookieSrc
-                                            + ") to new bookie: (" + newBookie + ")");
+                                             + ") to point ledger fragments from old dead bookie: (" + bookieSrc
+                                             + ") to new bookie: (" + newBookie + ")");
                                 }
                                 /*
                                  * Pass the return code result up the chain with
@@ -588,7 +588,7 @@ public class BookKeeperTools {
      * This method asynchronously recovers a ledger fragment which is a
      * contiguous portion of a ledger that was stored in an ensemble that
      * included the failed bookie.
-     * 
+     *
      * @param bookieSrc
      *            Source bookie that had a failure. We want to replicate the
      *            ledger fragments that were stored there.
@@ -606,15 +606,15 @@ public class BookKeeperTools {
      *            entries that were stored on the failed bookie.
      */
     private void recoverLedgerFragment(final InetSocketAddress bookieSrc, final LedgerHandle lh,
-            final Long startEntryId, final Long endEntryId, final MultiCallback ledgerFragmentMcb,
-            final InetSocketAddress newBookie) throws InterruptedException {
+                                       final Long startEntryId, final Long endEntryId, final MultiCallback ledgerFragmentMcb,
+                                       final InetSocketAddress newBookie) throws InterruptedException {
         if (endEntryId == null) {
             /*
              * Ideally this should never happen if bookie failure is taken care
              * of properly. Nothing we can do though in this case.
              */
             LOG.warn("Dead bookie (" + bookieSrc + ") is still part of the current active ensemble for ledgerId: "
-                    + lh.getId());
+                     + lh.getId());
             ledgerFragmentMcb.processResult(BKException.Code.OK, null, null);
             return;
         }
@@ -655,7 +655,7 @@ public class BookKeeperTools {
      * This method asynchronously recovers a specific ledger entry by reading
      * the values via the BookKeeper Client (which would read it from the other
      * replicas) and then writing it to the chosen new bookie.
-     * 
+     *
      * @param entryId
      *            Ledger Entry ID to recover.
      * @param lh
@@ -668,7 +668,7 @@ public class BookKeeperTools {
      *            entries that were stored on the failed bookie.
      */
     private void recoverLedgerFragmentEntry(final Long entryId, final LedgerHandle lh,
-            final MultiCallback ledgerFragmentEntryMcb, final InetSocketAddress newBookie) throws InterruptedException {
+                                            final MultiCallback ledgerFragmentEntryMcb, final InetSocketAddress newBookie) throws InterruptedException {
         /*
          * Read the ledger entry using the LedgerHandle. This will allow us to
          * read the entry from one of the other replicated bookies other than
@@ -689,32 +689,32 @@ public class BookKeeperTools {
                 LedgerEntry entry = seq.nextElement();
                 byte[] data = entry.getEntry();
                 ChannelBuffer toSend = lh.getDigestManager().computeDigestAndPackageForSending(entryId,
-                        lh.getLastAddConfirmed(), entry.getLength(), data, 0, data.length);
+                                       lh.getLastAddConfirmed(), entry.getLength(), data, 0, data.length);
                 bkc.getBookieClient().addEntry(newBookie, lh.getId(), lh.getLedgerKey(), entryId, toSend,
-                        new WriteCallback() {
-                            @Override
-                            public void writeComplete(int rc, long ledgerId, long entryId, InetSocketAddress addr,
-                                    Object ctx) {
-                                if (rc != Code.OK.intValue()) {
-                                    LOG.error("BK error writing entry for ledgerId: " + ledgerId + ", entryId: "
-                                            + entryId + ", bookie: " + addr, BKException.create(rc));
-                                } else {
-                                    LOG.debug("Success writing ledger entry to a new bookie!");
-                                }
-                                /*
-                                 * Pass the return code result up the chain with
-                                 * the parent callback.
-                                 */
-                                ledgerFragmentEntryMcb.processResult(rc, null, null);
-                            }
-                        }, null);
+                new WriteCallback() {
+                    @Override
+                    public void writeComplete(int rc, long ledgerId, long entryId, InetSocketAddress addr,
+                    Object ctx) {
+                        if (rc != Code.OK.intValue()) {
+                            LOG.error("BK error writing entry for ledgerId: " + ledgerId + ", entryId: "
+                                      + entryId + ", bookie: " + addr, BKException.create(rc));
+                        } else {
+                            LOG.debug("Success writing ledger entry to a new bookie!");
+                        }
+                        /*
+                         * Pass the return code result up the chain with
+                         * the parent callback.
+                         */
+                        ledgerFragmentEntryMcb.processResult(rc, null, null);
+                    }
+                }, null);
             }
         }, null);
     }
 
     /**
      * Main method so we can invoke the bookie recovery via command line.
-     * 
+     *
      * @param args
      *            Arguments to BookKeeperTools. 2 are required and the third is
      *            optional. The first is a comma separated list of ZK server
@@ -746,7 +746,7 @@ public class BookKeeperTools {
             String bookieDestString[] = args[2].split(COLON);
             if (bookieDestString.length < 2) {
                 System.err.println("BookieDest inputted has invalid name format (host:port expected): "
-                        + bookieDestString);
+                                   + bookieDestString);
                 return;
             }
             bookieDest = new InetSocketAddress(bookieDestString[0], Integer.parseInt(bookieDestString[1]));

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/LocalBookKeeper.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/LocalBookKeeper.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/LocalBookKeeper.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/LocalBookKeeper.java Mon Sep  5 17:38:57 2011
@@ -44,123 +44,123 @@ import org.apache.zookeeper.server.ZooKe
 public class LocalBookKeeper {
     protected static final Logger LOG = Logger.getLogger(LocalBookKeeper.class);
     public static final int CONNECTION_TIMEOUT = 30000;
-    
+
     ConsoleAppender ca;
     int numberOfBookies;
-    
+
     public LocalBookKeeper() {
-	ca = new ConsoleAppender(new PatternLayout());
-	LOG.addAppender(ca);
-	LOG.setLevel(Level.INFO);
-	numberOfBookies = 3;
-    }
-    
-    public LocalBookKeeper(int numberOfBookies){
-	this();
-	this.numberOfBookies = numberOfBookies;
-	LOG.info("Running " + this.numberOfBookies + " bookie(s).");
+        ca = new ConsoleAppender(new PatternLayout());
+        LOG.addAppender(ca);
+        LOG.setLevel(Level.INFO);
+        numberOfBookies = 3;
+    }
+
+    public LocalBookKeeper(int numberOfBookies) {
+        this();
+        this.numberOfBookies = numberOfBookies;
+        LOG.info("Running " + this.numberOfBookies + " bookie(s).");
     }
-    
+
     private final String HOSTPORT = "127.0.0.1:2181";
     NIOServerCnxnFactory serverFactory;
     ZooKeeperServer zks;
     ZooKeeper zkc;
     int ZooKeeperDefaultPort = 2181;
     File ZkTmpDir;
-    
+
     //BookKeeper variables
     File tmpDirs[];
     BookieServer bs[];
     Integer initialPort = 5000;
-    
+
     /**
      * @param args
      */
-	
-    private void runZookeeper(int maxCC) throws IOException{
-	// create a ZooKeeper server(dataDir, dataLogDir, port)
-	LOG.info("Starting ZK server");
-	//ServerStats.registerAsConcrete();
-	//ClientBase.setupTestEnv();
-	ZkTmpDir = File.createTempFile("zookeeper", "test");
+
+    private void runZookeeper(int maxCC) throws IOException {
+        // create a ZooKeeper server(dataDir, dataLogDir, port)
+        LOG.info("Starting ZK server");
+        //ServerStats.registerAsConcrete();
+        //ClientBase.setupTestEnv();
+        ZkTmpDir = File.createTempFile("zookeeper", "test");
         ZkTmpDir.delete();
         ZkTmpDir.mkdir();
-		    
-	try {
-	    zks = new ZooKeeperServer(ZkTmpDir, ZkTmpDir, ZooKeeperDefaultPort);
-	    serverFactory =  new NIOServerCnxnFactory();
-	    serverFactory.configure(new InetSocketAddress(ZooKeeperDefaultPort), maxCC);
-	    serverFactory.startup(zks);
-	} catch (Exception e) {
-	    // TODO Auto-generated catch block
-	    LOG.fatal("Exception while instantiating ZooKeeper", e);
-	} 
+
+        try {
+            zks = new ZooKeeperServer(ZkTmpDir, ZkTmpDir, ZooKeeperDefaultPort);
+            serverFactory =  new NIOServerCnxnFactory();
+            serverFactory.configure(new InetSocketAddress(ZooKeeperDefaultPort), maxCC);
+            serverFactory.startup(zks);
+        } catch (Exception e) {
+            // TODO Auto-generated catch block
+            LOG.fatal("Exception while instantiating ZooKeeper", e);
+        }
 
         boolean b = waitForServerUp(HOSTPORT, CONNECTION_TIMEOUT);
         LOG.debug("ZooKeeper server up: " + b);
     }
-	
-    private void initializeZookeper(){
-	LOG.info("Instantiate ZK Client");
-	//initialize the zk client with values
-	try {
-	    zkc = new ZooKeeper("127.0.0.1", ZooKeeperDefaultPort, new emptyWatcher());
-	    zkc.create("/ledgers", new byte[0], Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
-	    zkc.create("/ledgers/available", new byte[0], Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
-            // No need to create an entry for each requested bookie anymore as the 
+
+    private void initializeZookeper() {
+        LOG.info("Instantiate ZK Client");
+        //initialize the zk client with values
+        try {
+            zkc = new ZooKeeper("127.0.0.1", ZooKeeperDefaultPort, new emptyWatcher());
+            zkc.create("/ledgers", new byte[0], Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
+            zkc.create("/ledgers/available", new byte[0], Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
+            // No need to create an entry for each requested bookie anymore as the
             // BookieServers will register themselves with ZooKeeper on startup.
-	} catch (KeeperException e) {
-	    // TODO Auto-generated catch block
-	    LOG.fatal("Exception while creating znodes", e);
-	} catch (InterruptedException e) {
-	    // TODO Auto-generated catch block
-	    LOG.fatal("Interrupted while creating znodes", e);
-	} catch (IOException e) {
-	    // TODO Auto-generated catch block
-	    LOG.fatal("Exception while creating znodes", e);
-	}		
-    }
-    private void runBookies() throws IOException{
-	LOG.info("Starting Bookie(s)");
-	// Create Bookie Servers (B1, B2, B3)
-		
-	tmpDirs = new File[numberOfBookies];		
-	bs = new BookieServer[numberOfBookies];
-		
-	for(int i = 0; i < numberOfBookies; i++){
-	    tmpDirs[i] = File.createTempFile("bookie" + Integer.toString(i), "test");
-	    tmpDirs[i].delete();
-	    tmpDirs[i].mkdir();
-			
-	    bs[i] = new BookieServer(initialPort + i, InetAddress.getLocalHost().getHostAddress() + ":"
-				     + ZooKeeperDefaultPort, tmpDirs[i], new File[]{tmpDirs[i]});
-	    bs[i].start();
-	}		
+        } catch (KeeperException e) {
+            // TODO Auto-generated catch block
+            LOG.fatal("Exception while creating znodes", e);
+        } catch (InterruptedException e) {
+            // TODO Auto-generated catch block
+            LOG.fatal("Interrupted while creating znodes", e);
+        } catch (IOException e) {
+            // TODO Auto-generated catch block
+            LOG.fatal("Exception while creating znodes", e);
+        }
     }
-	
+    private void runBookies() throws IOException {
+        LOG.info("Starting Bookie(s)");
+        // Create Bookie Servers (B1, B2, B3)
+
+        tmpDirs = new File[numberOfBookies];
+        bs = new BookieServer[numberOfBookies];
+
+        for(int i = 0; i < numberOfBookies; i++) {
+            tmpDirs[i] = File.createTempFile("bookie" + Integer.toString(i), "test");
+            tmpDirs[i].delete();
+            tmpDirs[i].mkdir();
+
+            bs[i] = new BookieServer(initialPort + i, InetAddress.getLocalHost().getHostAddress() + ":"
+                                     + ZooKeeperDefaultPort, tmpDirs[i], new File[] {tmpDirs[i]});
+            bs[i].start();
+        }
+    }
+
     public static void main(String[] args) throws IOException, InterruptedException {
-	if(args.length < 1){
-	    usage();
-	    System.exit(-1);
-	}
-	LocalBookKeeper lb = new LocalBookKeeper(Integer.parseInt(args[0]));
-	lb.runZookeeper(1000);
-	lb.initializeZookeper();
-	lb.runBookies();
-	while (true){
-	    Thread.sleep(5000);
-	}
+        if(args.length < 1) {
+            usage();
+            System.exit(-1);
+        }
+        LocalBookKeeper lb = new LocalBookKeeper(Integer.parseInt(args[0]));
+        lb.runZookeeper(1000);
+        lb.initializeZookeper();
+        lb.runBookies();
+        while (true) {
+            Thread.sleep(5000);
+        }
     }
 
     private static void usage() {
-	System.err.println("Usage: LocalBookKeeper number-of-bookies");	
+        System.err.println("Usage: LocalBookKeeper number-of-bookies");
     }
 
     /*	User for testing purposes, void */
-    class emptyWatcher implements Watcher{
-	public void process(WatchedEvent event) {}
+    class emptyWatcher implements Watcher {
+        public void process(WatchedEvent event) {}
     }
-	
+
     public static boolean waitForServerUp(String hp, long timeout) {
         long start = System.currentTimeMillis();
         String split[] = hp.split(":");
@@ -177,7 +177,7 @@ public class LocalBookKeeper {
 
                     reader =
                         new BufferedReader(
-					   new InputStreamReader(sock.getInputStream()));
+                        new InputStreamReader(sock.getInputStream()));
                     String line = reader.readLine();
                     if (line != null && line.startsWith("Zookeeper version:")) {
                         LOG.info("Server UP");
@@ -205,5 +205,5 @@ public class LocalBookKeeper {
         }
         return false;
     }
-	
+
 }

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/Main.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/Main.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/Main.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/Main.java Mon Sep  5 17:38:57 2011
@@ -1,7 +1,7 @@
 package org.apache.bookkeeper.util;
 
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -9,16 +9,16 @@ package org.apache.bookkeeper.util;
  * to you 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.
- * 
+ *
  */
 
 import java.io.IOException;

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/MathUtils.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/MathUtils.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/MathUtils.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/MathUtils.java Mon Sep  5 17:38:57 2011
@@ -24,15 +24,15 @@ package org.apache.bookkeeper.util;
  */
 public class MathUtils {
 
-    public static int signSafeMod(long dividend, int divisor){
+    public static int signSafeMod(long dividend, int divisor) {
         int mod = (int) (dividend % divisor);
-        
-        if (mod < 0){
+
+        if (mod < 0) {
             mod += divisor;
         }
-        
+
         return mod;
-        
+
     }
 
 }

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/OrderedSafeExecutor.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/OrderedSafeExecutor.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/OrderedSafeExecutor.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/OrderedSafeExecutor.java Mon Sep  5 17:38:57 2011
@@ -25,18 +25,18 @@ import java.util.concurrent.ScheduledExe
 
 /**
  * This class provides 2 things over the java {@link ScheduledExecutorService}.
- * 
+ *
  * 1. It takes {@link SafeRunnable objects} instead of plain Runnable objects.
  * This means that exceptions in scheduled tasks wont go unnoticed and will be
  * logged.
- * 
+ *
  * 2. It supports submitting tasks with an ordering key, so that tasks submitted
  * with the same key will always be executed in order, but tasks across
  * different keys can be unordered. This retains parallelism while retaining the
  * basic amount of ordering we want (e.g. , per ledger handle). Ordering is
  * achieved by hashing the key objects to threads by their {@link #hashCode()}
  * method.
- * 
+ *
  */
 public class OrderedSafeExecutor {
     ExecutorService threads[];
@@ -74,7 +74,7 @@ public class OrderedSafeExecutor {
     }
 
     /**
-     * schedules a one time action to execute 
+     * schedules a one time action to execute
      */
     public void submit(SafeRunnable r) {
         chooseThread().submit(r);

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/SafeRunnable.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/SafeRunnable.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/SafeRunnable.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/SafeRunnable.java Mon Sep  5 17:38:57 2011
@@ -20,19 +20,19 @@ package org.apache.bookkeeper.util;
 
 import org.apache.log4j.Logger;
 
-public abstract class SafeRunnable implements Runnable{
+public abstract class SafeRunnable implements Runnable {
 
     static final Logger logger = Logger.getLogger(SafeRunnable.class);
-    
-@Override
+
+    @Override
     public void run() {
-        try{
+        try {
             safeRun();
-        }catch(Throwable t){
+        } catch(Throwable t) {
             logger.fatal("Unexpected throwable caught ", t);
         }
     }
-    
+
     public abstract void safeRun();
-    
+
 }

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/StringUtils.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/StringUtils.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/StringUtils.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/util/StringUtils.java Mon Sep  5 17:38:57 2011
@@ -24,7 +24,7 @@ import java.net.InetSocketAddress;
 /**
  * Provided utilites for parsing network addresses, ledger-id from node paths
  * etc.
- * 
+ *
  */
 public class StringUtils {
 
@@ -35,7 +35,7 @@ public class StringUtils {
 
     /**
      * Parses address into IP and port.
-     * 
+     *
      * @param addr
      *            String
      */
@@ -63,7 +63,7 @@ public class StringUtils {
 
     /**
      * Formats ledger ID according to ZooKeeper rules
-     * 
+     *
      * @param id
      *            znode id
      */
@@ -73,7 +73,7 @@ public class StringUtils {
 
     /**
      * Get the path for the ledger metadata node
-     * 
+     *
      * @return
      */
     public static String getLedgerNodePath(long ledgerId) {

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/AsyncLedgerOpsTest.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/AsyncLedgerOpsTest.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/AsyncLedgerOpsTest.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/AsyncLedgerOpsTest.java Mon Sep  5 17:38:57 2011
@@ -1,7 +1,7 @@
 package org.apache.bookkeeper.test;
 
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -9,16 +9,16 @@ package org.apache.bookkeeper.test;
  * to you 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.
- * 
+ *
  */
 
 import java.io.IOException;
@@ -47,25 +47,25 @@ import org.junit.runners.Parameterized.P
  * This test tests read and write, synchronous and asynchronous, strings and
  * integers for a BookKeeper client. The test deployment uses a ZooKeeper server
  * and three BookKeepers.
- * 
+ *
  */
 public class AsyncLedgerOpsTest extends BaseTestCase implements AddCallback, ReadCallback, CreateCallback,
-        CloseCallback, OpenCallback {
+    CloseCallback, OpenCallback {
     static Logger LOG = Logger.getLogger(BookieClientTest.class);
 
     DigestType digestType;
-    
+
     public AsyncLedgerOpsTest(DigestType digestType) {
         super(3);
         this.digestType = digestType;
     }
-    
+
     @Parameters
-    public static Collection<Object[]> configs(){
-        return Arrays.asList(new Object[][]{ {DigestType.MAC }, {DigestType.CRC32}});
+    public static Collection<Object[]> configs() {
+        return Arrays.asList(new Object[][] { {DigestType.MAC }, {DigestType.CRC32}});
     }
-    
- 
+
+
     byte[] ledgerPassword = "aaa".getBytes();
     LedgerHandle lh, lh2;
     long ledgerId;
@@ -107,7 +107,7 @@ public class AsyncLedgerOpsTest extends 
     @Test
     public void testAsyncCreateClose() throws IOException {
         try {
-            
+
             ControlObj ctx = new ControlObj();
 
             synchronized (ctx) {
@@ -243,14 +243,14 @@ public class AsyncLedgerOpsTest extends 
     public void setUp() throws Exception {
         super.setUp();
         rng = new Random(System.currentTimeMillis()); // Initialize the Random
-                                                      // Number Generator
+        // Number Generator
         entries = new ArrayList<byte[]>(); // initialize the entries list
         entriesSize = new ArrayList<Integer>();
         sync = new SyncObj(); // initialize the synchronization data structure
     }
 
-    
 
 
 
-}
\ No newline at end of file
+
+}

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BaseTestCase.java
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BaseTestCase.java?rev=1165369&r1=1165368&r2=1165369&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BaseTestCase.java (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BaseTestCase.java Mon Sep  5 17:38:57 2011
@@ -69,10 +69,10 @@ public abstract class BaseTestCase exten
     public BaseTestCase(int numBookies) {
         this.numBookies = numBookies;
     }
-    
+
     @Parameters
-    public static Collection<Object[]> configs(){
-        return Arrays.asList(new Object[][]{ {DigestType.MAC }, {DigestType.CRC32}});
+    public static Collection<Object[]> configs() {
+        return Arrays.asList(new Object[][] { {DigestType.MAC }, {DigestType.CRC32}});
     }
 
 
@@ -80,44 +80,44 @@ public abstract class BaseTestCase exten
     @Override
     public void setUp() throws Exception {
         try {
-        // create a ZooKeeper server(dataDir, dataLogDir, port)
-        LOG.debug("Running ZK server");
-        // ServerStats.registerAsConcrete();
-        ClientBase.setupTestEnv();
-        ZkTmpDir = File.createTempFile("zookeeper", "test");
-        ZkTmpDir.delete();
-        ZkTmpDir.mkdir();
-
-        zks = new ZooKeeperServer(ZkTmpDir, ZkTmpDir, ZooKeeperDefaultPort);
-        serverFactory = new NIOServerCnxnFactory();
-        serverFactory.configure(new InetSocketAddress(ZooKeeperDefaultPort), 100);
-        serverFactory.startup(zks);
-
-        boolean b = ClientBase.waitForServerUp(HOSTPORT, ClientBase.CONNECTION_TIMEOUT);
-
-        LOG.debug("Server up: " + b);
-
-        // create a zookeeper client
-        LOG.debug("Instantiate ZK Client");
-        zkc = new ZooKeeper("127.0.0.1", ZooKeeperDefaultPort, new emptyWatcher());
-
-        // initialize the zk client with values
-        zkc.create("/ledgers", new byte[0], Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
-        zkc.create("/ledgers/available", new byte[0], Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
-
-        // Create Bookie Servers (B1, B2, B3)
-        for (int i = 0; i < numBookies; i++) {
-            File f = File.createTempFile("bookie", "test");
-            tmpDirs.add(f);
-            f.delete();
-            f.mkdir();
-
-            BookieServer server = new BookieServer(initialPort + i, HOSTPORT, f, new File[] { f });
-            server.start();
-            bs.add(server);
-        }
-        zkc.close();
-        bkc = new BookKeeperTestClient("127.0.0.1");
+            // create a ZooKeeper server(dataDir, dataLogDir, port)
+            LOG.debug("Running ZK server");
+            // ServerStats.registerAsConcrete();
+            ClientBase.setupTestEnv();
+            ZkTmpDir = File.createTempFile("zookeeper", "test");
+            ZkTmpDir.delete();
+            ZkTmpDir.mkdir();
+
+            zks = new ZooKeeperServer(ZkTmpDir, ZkTmpDir, ZooKeeperDefaultPort);
+            serverFactory = new NIOServerCnxnFactory();
+            serverFactory.configure(new InetSocketAddress(ZooKeeperDefaultPort), 100);
+            serverFactory.startup(zks);
+
+            boolean b = ClientBase.waitForServerUp(HOSTPORT, ClientBase.CONNECTION_TIMEOUT);
+
+            LOG.debug("Server up: " + b);
+
+            // create a zookeeper client
+            LOG.debug("Instantiate ZK Client");
+            zkc = new ZooKeeper("127.0.0.1", ZooKeeperDefaultPort, new emptyWatcher());
+
+            // initialize the zk client with values
+            zkc.create("/ledgers", new byte[0], Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
+            zkc.create("/ledgers/available", new byte[0], Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
+
+            // Create Bookie Servers (B1, B2, B3)
+            for (int i = 0; i < numBookies; i++) {
+                File f = File.createTempFile("bookie", "test");
+                tmpDirs.add(f);
+                f.delete();
+                f.mkdir();
+
+                BookieServer server = new BookieServer(initialPort + i, HOSTPORT, f, new File[] { f });
+                server.start();
+                bs.add(server);
+            }
+            zkc.close();
+            bkc = new BookKeeperTestClient("127.0.0.1");
         } catch(Exception e) {
             LOG.error("Error setting up", e);
             throw e;
@@ -132,7 +132,7 @@ public abstract class BaseTestCase exten
         if (bkc != null) {
             bkc.halt();;
         }
-        
+
         for (BookieServer server : bs) {
             server.shutdown();
         }
@@ -148,7 +148,7 @@ public abstract class BaseTestCase exten
         }
         // ServerStats.unregister();
         cleanUpDir(ZkTmpDir);
-        
+
 
     }