You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@omid.apache.org by fp...@apache.org on 2016/05/11 18:06:16 UTC

[09/50] [abbrv] incubator-omid git commit: Avoid TSO resets

Avoid TSO resets

TSO reset state-related methods have been removed and changed for a single-shot
initialization

Change-Id: I9b874c923937c1be8d09cf6a41d87e6367acafa5


Project: http://git-wip-us.apache.org/repos/asf/incubator-omid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-omid/commit/811ec48f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-omid/tree/811ec48f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-omid/diff/811ec48f

Branch: refs/heads/master
Commit: 811ec48f28d22a2d2ca2e4652a05c1dfe34911bf
Parents: 10fea27
Author: Francisco Perez-Sorrosal <fp...@yahoo-inc.com>
Authored: Mon Apr 25 10:36:05 2016 -0700
Committer: Francisco Perez-Sorrosal <fp...@yahoo-inc.com>
Committed: Mon Apr 25 13:51:03 2016 -0700

----------------------------------------------------------------------
 .../main/java/org/apache/omid/tso/Cache.java    |  2 --
 .../java/org/apache/omid/tso/CommitHashMap.java |  5 ----
 .../java/org/apache/omid/tso/LeaseManager.java  | 20 +++++++---------
 .../java/org/apache/omid/tso/LongCache.java     |  9 -------
 .../java/org/apache/omid/tso/MockPanicker.java  |  7 ++++++
 .../main/java/org/apache/omid/tso/Panicker.java |  4 ++++
 .../apache/omid/tso/RequestProcessorImpl.java   | 11 ++++-----
 .../omid/tso/RuntimeExceptionPanicker.java      |  6 +++++
 .../java/org/apache/omid/tso/TSOServer.java     |  2 --
 .../org/apache/omid/tso/TSOStateManager.java    |  6 ++---
 .../apache/omid/tso/TSOStateManagerImpl.java    |  8 ++++---
 .../org/apache/omid/tso/VoidLeaseManager.java   |  2 +-
 .../org/apache/omid/tso/TestLeaseManager.java   | 25 ++++++++++----------
 .../java/org/apache/omid/tso/TestLongCache.java | 21 ++++------------
 .../apache/omid/tso/TestRequestProcessor.java   |  4 ++--
 .../apache/omid/tso/TestTSOStateManager.java    | 22 ++++++++---------
 16 files changed, 68 insertions(+), 86 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/main/java/org/apache/omid/tso/Cache.java
----------------------------------------------------------------------
diff --git a/tso-server/src/main/java/org/apache/omid/tso/Cache.java b/tso-server/src/main/java/org/apache/omid/tso/Cache.java
index 5904c60..53abf3d 100644
--- a/tso-server/src/main/java/org/apache/omid/tso/Cache.java
+++ b/tso-server/src/main/java/org/apache/omid/tso/Cache.java
@@ -23,8 +23,6 @@ package org.apache.omid.tso;
  */
 public interface Cache {
 
-    void reset();
-
     long set(long key, long value);
 
     long get(long key);

http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/main/java/org/apache/omid/tso/CommitHashMap.java
----------------------------------------------------------------------
diff --git a/tso-server/src/main/java/org/apache/omid/tso/CommitHashMap.java b/tso-server/src/main/java/org/apache/omid/tso/CommitHashMap.java
index cdb64b8..df7544d 100644
--- a/tso-server/src/main/java/org/apache/omid/tso/CommitHashMap.java
+++ b/tso-server/src/main/java/org/apache/omid/tso/CommitHashMap.java
@@ -66,11 +66,6 @@ class CommitHashMap {
         LOG.info("CellId -> CommitTS map created with [{}] buckets (32 elems/bucket)", size);
     }
 
-    public void reset() {
-        cellIdToCommitMap.reset();
-        LOG.info("CellId -> CommitTS map reset");
-    }
-
     public long getLatestWriteForCell(long hash) {
         return cellIdToCommitMap.get(hash);
     }

http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/main/java/org/apache/omid/tso/LeaseManager.java
----------------------------------------------------------------------
diff --git a/tso-server/src/main/java/org/apache/omid/tso/LeaseManager.java b/tso-server/src/main/java/org/apache/omid/tso/LeaseManager.java
index 4944869..6b726b2 100644
--- a/tso-server/src/main/java/org/apache/omid/tso/LeaseManager.java
+++ b/tso-server/src/main/java/org/apache/omid/tso/LeaseManager.java
@@ -17,14 +17,13 @@
  */
 package org.apache.omid.tso;
 
-import com.google.common.annotations.VisibleForTesting;
 import com.google.common.base.Charsets;
 import com.google.common.base.Preconditions;
 import com.google.common.util.concurrent.AbstractScheduledService;
 import com.google.common.util.concurrent.ThreadFactoryBuilder;
-import org.apache.omid.tso.TSOStateManager.TSOState;
 import org.apache.curator.framework.CuratorFramework;
 import org.apache.curator.utils.EnsurePath;
+import org.apache.omid.tso.TSOStateManager.TSOState;
 import org.apache.zookeeper.KeeperException;
 import org.apache.zookeeper.data.Stat;
 import org.slf4j.Logger;
@@ -127,13 +126,13 @@ class LeaseManager extends AbstractScheduledService implements LeaseManagement {
         if (canAcquireLease()) {
             endLeaseInMs.set(baseTimeInMs.get() + leasePeriodInMs);
             LOG.info("{} got the lease (Master) Ver. {}/End of lease: {}ms", tsoHostAndPort,
-                    leaseNodeVersion, new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS").format(endLeaseInMs));
+                     leaseNodeVersion, new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS").format(endLeaseInMs));
             tsoStateInitializer.submit(new Runnable() {
                 // TSO State initialization
                 @Override
                 public void run() {
                     try {
-                        TSOState newTSOState = stateManager.reset();
+                        TSOState newTSOState = stateManager.initialize();
                         advertiseTSOServerInfoThroughZK(newTSOState.getEpoch());
                         tsoChannelHandler.reconnect();
                     } catch (Exception e) {
@@ -159,18 +158,15 @@ class LeaseManager extends AbstractScheduledService implements LeaseManagement {
         if (canAcquireLease()) {
             if (System.currentTimeMillis() > getEndLeaseInMs()) {
                 endLeaseInMs.set(0L);
-                LOG.warn("{} expired lease! Releasing lease to start Master re-election", tsoHostAndPort);
-                tsoChannelHandler.closeConnection();
+                panicker.panic(tsoHostAndPort + " expired lease! Master is committing suicide");
             } else {
                 endLeaseInMs.set(baseTimeInMs.get() + leasePeriodInMs);
                 LOG.trace("{} renewed lease: Version {}/End of lease at {}ms",
-                        tsoHostAndPort, leaseNodeVersion, endLeaseInMs);
+                          tsoHostAndPort, leaseNodeVersion, endLeaseInMs);
             }
         } else {
             endLeaseInMs.set(0L);
-            LOG.warn("{} lost the lease (Ver. {})! Other instance is now Master",
-                    tsoHostAndPort, leaseNodeVersion);
-            tsoChannelHandler.closeConnection();
+            panicker.panic(tsoHostAndPort + " lease lost (Ver. " + leaseNodeVersion + ")! Other instance is Master. Committing suicide...");
         }
     }
 
@@ -240,13 +236,13 @@ class LeaseManager extends AbstractScheduledService implements LeaseManagement {
                     Stat stat = zkClient.checkExists().forPath(leasePath);
                     leaseNodeVersion = stat.getVersion();
                     LOG.trace("{} will try to get lease (with Ver. {}) in {}ms", tsoHostAndPort, leaseNodeVersion,
-                            leasePeriodInMs);
+                              leasePeriodInMs);
                     // ...and wait the lease period
                     return new Schedule(leasePeriodInMs, TimeUnit.MILLISECONDS);
                 } else {
                     long waitTimeInMs = getEndLeaseInMs() - System.currentTimeMillis() - guardLeasePeriodInMs;
                     LOG.trace("{} will try to renew lease (with Ver. {}) in {}ms", tsoHostAndPort,
-                            leaseNodeVersion, waitTimeInMs);
+                              leaseNodeVersion, waitTimeInMs);
                     return new Schedule(waitTimeInMs, TimeUnit.MILLISECONDS);
                 }
             }

http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/main/java/org/apache/omid/tso/LongCache.java
----------------------------------------------------------------------
diff --git a/tso-server/src/main/java/org/apache/omid/tso/LongCache.java b/tso-server/src/main/java/org/apache/omid/tso/LongCache.java
index b269a0b..ecd6cd1 100644
--- a/tso-server/src/main/java/org/apache/omid/tso/LongCache.java
+++ b/tso-server/src/main/java/org/apache/omid/tso/LongCache.java
@@ -17,12 +17,8 @@
  */
 package org.apache.omid.tso;
 
-import java.util.Arrays;
-
 public class LongCache implements Cache {
 
-    public static final long RESET_VALUE = 0L;
-
     private final long[] cache;
     private final int size;
     private final int associativity;
@@ -33,11 +29,6 @@ public class LongCache implements Cache {
         this.associativity = associativity;
     }
 
-    @Override
-    public void reset() {
-        Arrays.fill(cache, RESET_VALUE);
-    }
-
     /* (non-Javadoc)
      * @see org.apache.omid.tso.Cache#set(long, long)
      */

http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/main/java/org/apache/omid/tso/MockPanicker.java
----------------------------------------------------------------------
diff --git a/tso-server/src/main/java/org/apache/omid/tso/MockPanicker.java b/tso-server/src/main/java/org/apache/omid/tso/MockPanicker.java
index 9e3cd5f..fdf8476 100644
--- a/tso-server/src/main/java/org/apache/omid/tso/MockPanicker.java
+++ b/tso-server/src/main/java/org/apache/omid/tso/MockPanicker.java
@@ -21,10 +21,17 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 public class MockPanicker implements Panicker {
+
     private static final Logger LOG = LoggerFactory.getLogger(MockPanicker.class);
 
     @Override
+    public void panic(String reason) {
+        LOG.error("PANICKING: {}", reason);
+    }
+
+    @Override
     public void panic(String reason, Throwable cause) {
         LOG.error("PANICKING: {}", reason, cause);
     }
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/main/java/org/apache/omid/tso/Panicker.java
----------------------------------------------------------------------
diff --git a/tso-server/src/main/java/org/apache/omid/tso/Panicker.java b/tso-server/src/main/java/org/apache/omid/tso/Panicker.java
index 2823f84..c821b5a 100644
--- a/tso-server/src/main/java/org/apache/omid/tso/Panicker.java
+++ b/tso-server/src/main/java/org/apache/omid/tso/Panicker.java
@@ -18,5 +18,9 @@
 package org.apache.omid.tso;
 
 public interface Panicker {
+
+    void panic(String reason);
+
     void panic(String reason, Throwable cause);
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/main/java/org/apache/omid/tso/RequestProcessorImpl.java
----------------------------------------------------------------------
diff --git a/tso-server/src/main/java/org/apache/omid/tso/RequestProcessorImpl.java b/tso-server/src/main/java/org/apache/omid/tso/RequestProcessorImpl.java
index c853da0..cf4b44d 100644
--- a/tso-server/src/main/java/org/apache/omid/tso/RequestProcessorImpl.java
+++ b/tso-server/src/main/java/org/apache/omid/tso/RequestProcessorImpl.java
@@ -68,9 +68,7 @@ public class RequestProcessorImpl implements EventHandler<RequestProcessorImpl.R
         requestRing = RingBuffer.createMultiProducer(RequestEvent.EVENT_FACTORY, 1 << 12, new BusySpinWaitStrategy());
         SequenceBarrier requestSequenceBarrier = requestRing.newBarrier();
         BatchEventProcessor<RequestEvent> requestProcessor =
-                new BatchEventProcessor<RequestEvent>(requestRing,
-                        requestSequenceBarrier,
-                        this);
+                new BatchEventProcessor<RequestEvent>(requestRing, requestSequenceBarrier, this);
         requestRing.addGatingSequences(requestProcessor.getSequence());
         requestProcessor.setExceptionHandler(new FatalExceptionHandler(panicker));
 
@@ -82,15 +80,14 @@ public class RequestProcessorImpl implements EventHandler<RequestProcessorImpl.R
     }
 
     /**
-     * This should be called when the TSO gets initialized or gets leadership
+     * This should be called when the TSO gets leadership
      */
     @Override
-    public void update(TSOState state) throws IOException {
-        LOG.info("Reseting RequestProcessor...");
+    public void update(TSOState state) {
+        LOG.info("Initializing RequestProcessor...");
         this.lowWatermark = state.getLowWatermark();
         persistProc.persistLowWatermark(lowWatermark);
         this.epoch = state.getEpoch();
-        hashmap.reset();
         LOG.info("RequestProcessor initialized with LWMs {} and Epoch {}", lowWatermark, epoch);
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/main/java/org/apache/omid/tso/RuntimeExceptionPanicker.java
----------------------------------------------------------------------
diff --git a/tso-server/src/main/java/org/apache/omid/tso/RuntimeExceptionPanicker.java b/tso-server/src/main/java/org/apache/omid/tso/RuntimeExceptionPanicker.java
index c1fbadb..657f0d2 100644
--- a/tso-server/src/main/java/org/apache/omid/tso/RuntimeExceptionPanicker.java
+++ b/tso-server/src/main/java/org/apache/omid/tso/RuntimeExceptionPanicker.java
@@ -20,7 +20,13 @@ package org.apache.omid.tso;
 class RuntimeExceptionPanicker implements Panicker {
 
     @Override
+    public void panic(String reason) {
+        panic(reason, new Throwable("TSO Error"));
+    }
+
+    @Override
     public void panic(String reason, Throwable cause) {
         throw new RuntimeException(reason, cause);
     }
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/main/java/org/apache/omid/tso/TSOServer.java
----------------------------------------------------------------------
diff --git a/tso-server/src/main/java/org/apache/omid/tso/TSOServer.java b/tso-server/src/main/java/org/apache/omid/tso/TSOServer.java
index 82d2ade..c93a0b6 100644
--- a/tso-server/src/main/java/org/apache/omid/tso/TSOServer.java
+++ b/tso-server/src/main/java/org/apache/omid/tso/TSOServer.java
@@ -25,8 +25,6 @@ import com.google.inject.Injector;
 import com.google.inject.Module;
 import com.google.inject.Singleton;
 import org.apache.omid.metrics.MetricsRegistry;
-import org.apache.omid.tools.hbase.HBaseLogin;
-import org.apache.hadoop.conf.Configuration;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 

http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/main/java/org/apache/omid/tso/TSOStateManager.java
----------------------------------------------------------------------
diff --git a/tso-server/src/main/java/org/apache/omid/tso/TSOStateManager.java b/tso-server/src/main/java/org/apache/omid/tso/TSOStateManager.java
index 2e69cad..10eabac 100644
--- a/tso-server/src/main/java/org/apache/omid/tso/TSOStateManager.java
+++ b/tso-server/src/main/java/org/apache/omid/tso/TSOStateManager.java
@@ -84,12 +84,12 @@ public interface TSOStateManager {
     void unregister(StateObserver observer);
 
     /**
-     * Allows to reset the state
+     * Allows to initialize the state
      *
-     * @return the new state after reset
+     * @return the new state
      * @throws IOException
      *             when problems resetting occur
      */
-    TSOState reset() throws IOException;
+    TSOState initialize() throws IOException;
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/main/java/org/apache/omid/tso/TSOStateManagerImpl.java
----------------------------------------------------------------------
diff --git a/tso-server/src/main/java/org/apache/omid/tso/TSOStateManagerImpl.java b/tso-server/src/main/java/org/apache/omid/tso/TSOStateManagerImpl.java
index ed0f600..a10c22f 100644
--- a/tso-server/src/main/java/org/apache/omid/tso/TSOStateManagerImpl.java
+++ b/tso-server/src/main/java/org/apache/omid/tso/TSOStateManagerImpl.java
@@ -58,8 +58,9 @@ public class TSOStateManagerImpl implements TSOStateManager {
     }
 
     @Override
-    public synchronized TSOState reset() throws IOException {
-        LOG.info("Reseting the TSO Server state...");
+    public TSOState initialize() throws IOException {
+
+        LOG.info("Initializing TSO Server state...");
         // The timestamp oracle dictates the new state
         timestampOracle.initialize();
         long lowWatermark = timestampOracle.getLast();
@@ -71,8 +72,9 @@ public class TSOStateManagerImpl implements TSOStateManager {
         for (StateObserver stateObserver : stateObservers) {
             stateObserver.update(state);
         }
-        LOG.info("New TSO Server state {}", state);
+        LOG.info("TSO Server state {}", state);
         return state;
+
     }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/main/java/org/apache/omid/tso/VoidLeaseManager.java
----------------------------------------------------------------------
diff --git a/tso-server/src/main/java/org/apache/omid/tso/VoidLeaseManager.java b/tso-server/src/main/java/org/apache/omid/tso/VoidLeaseManager.java
index 25fb2a0..0b32885 100644
--- a/tso-server/src/main/java/org/apache/omid/tso/VoidLeaseManager.java
+++ b/tso-server/src/main/java/org/apache/omid/tso/VoidLeaseManager.java
@@ -32,7 +32,7 @@ public class VoidLeaseManager implements LeaseManagement {
     @Override
     public void startService() throws LeaseManagementException {
         try {
-            stateManager.reset();
+            stateManager.initialize();
             tsoChannelHandler.reconnect();
         } catch (IOException e) {
             throw new LeaseManagementException("Error initializing Lease Manager", e);

http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/test/java/org/apache/omid/tso/TestLeaseManager.java
----------------------------------------------------------------------
diff --git a/tso-server/src/test/java/org/apache/omid/tso/TestLeaseManager.java b/tso-server/src/test/java/org/apache/omid/tso/TestLeaseManager.java
index 59a0220..60cefca 100644
--- a/tso-server/src/test/java/org/apache/omid/tso/TestLeaseManager.java
+++ b/tso-server/src/test/java/org/apache/omid/tso/TestLeaseManager.java
@@ -18,11 +18,11 @@
 package org.apache.omid.tso;
 
 import com.google.common.base.Charsets;
-import org.apache.omid.TestUtils;
-import org.apache.omid.tso.TSOStateManager.TSOState;
 import org.apache.curator.framework.CuratorFramework;
 import org.apache.curator.test.TestingServer;
 import org.apache.curator.utils.CloseableUtils;
+import org.apache.omid.TestUtils;
+import org.apache.omid.tso.TSOStateManager.TSOState;
 import org.mockito.ArgumentCaptor;
 import org.mockito.Mock;
 import org.slf4j.Logger;
@@ -105,7 +105,7 @@ public class TestLeaseManager {
 
         TSOChannelHandler tsoChannelHandler = mock(TSOChannelHandler.class);
         TSOStateManager stateManager = mock(TSOStateManager.class);
-        when(stateManager.reset()).thenThrow(new IOException());
+        when(stateManager.initialize()).thenThrow(new IOException());
         leaseManager1 = new PausableLeaseManager(LEASE_MGR_ID_1,
                                                  tsoChannelHandler,
                                                  stateManager,
@@ -126,8 +126,7 @@ public class TestLeaseManager {
     }
 
     @Test(timeOut = 60000)
-    public void testLeaseHolderDoesNotChangeWhenPausedForALongTimeAndTheresNoOtherInstance()
-            throws Exception {
+    public void testLeaseHolderDoesNotChangeWhenPausedForALongTimeAndTheresNoOtherInstance() throws Exception {
 
         final String TEST_TSO_LEASE_PATH = "/test1_tsolease";
         final String TEST_CURRENT_TSO_PATH = "/test1_currenttso";
@@ -135,7 +134,7 @@ public class TestLeaseManager {
         // Launch the instance under test...
         TSOChannelHandler tsoChannelHandler1 = mock(TSOChannelHandler.class);
         TSOStateManager stateManager1 = mock(TSOStateManager.class);
-        when(stateManager1.reset()).thenReturn(new TSOState(DUMMY_LOW_WATERMARK_1, DUMMY_EPOCH_1));
+        when(stateManager1.initialize()).thenReturn(new TSOState(DUMMY_LOW_WATERMARK_1, DUMMY_EPOCH_1));
         leaseManager1 = new PausableLeaseManager(LEASE_MGR_ID_1,
                                                  tsoChannelHandler1,
                                                  stateManager1,
@@ -173,7 +172,7 @@ public class TestLeaseManager {
         // ... and check again that nothing changed
         checkLeaseHolder(TEST_TSO_LEASE_PATH, LEASE_MGR_ID_1);
         checkInstanceId(TEST_CURRENT_TSO_PATH, INSTANCE_ID_1 + "1");
-        assertTrue(leaseManager1.stillInLeasePeriod());
+        assertFalse(leaseManager1.stillInLeasePeriod()); // Must not be master as it should have triggered and exception
 
     }
 
@@ -186,7 +185,7 @@ public class TestLeaseManager {
         // Launch the master instance...
         TSOChannelHandler tsoChannelHandler1 = mock(TSOChannelHandler.class);
         TSOStateManager stateManager1 = mock(TSOStateManager.class);
-        when(stateManager1.reset()).thenReturn(new TSOState(DUMMY_LOW_WATERMARK_1, DUMMY_EPOCH_1));
+        when(stateManager1.initialize()).thenReturn(new TSOState(DUMMY_LOW_WATERMARK_1, DUMMY_EPOCH_1));
         leaseManager1 = new PausableLeaseManager(LEASE_MGR_ID_1,
                                                  tsoChannelHandler1,
                                                  stateManager1,
@@ -209,7 +208,7 @@ public class TestLeaseManager {
         // Then launch another instance...
         TSOChannelHandler tsoChannelHandler2 = mock(TSOChannelHandler.class);
         TSOStateManager stateManager2 = mock(TSOStateManager.class);
-        when(stateManager2.reset()).thenReturn(new TSOState(DUMMY_LOW_WATERMARK_2, DUMMY_EPOCH_2));
+        when(stateManager2.initialize()).thenReturn(new TSOState(DUMMY_LOW_WATERMARK_2, DUMMY_EPOCH_2));
         leaseManager2 = new PausableLeaseManager(LEASE_MGR_ID_2,
                                                  tsoChannelHandler2,
                                                  stateManager2,
@@ -239,7 +238,7 @@ public class TestLeaseManager {
         // Launch the master instance...
         TSOChannelHandler tsoChannelHandler1 = mock(TSOChannelHandler.class);
         TSOStateManager stateManager1 = mock(TSOStateManager.class);
-        when(stateManager1.reset()).thenReturn(new TSOState(DUMMY_LOW_WATERMARK_1, DUMMY_EPOCH_1));
+        when(stateManager1.initialize()).thenReturn(new TSOState(DUMMY_LOW_WATERMARK_1, DUMMY_EPOCH_1));
         leaseManager1 = new PausableLeaseManager(LEASE_MGR_ID_1,
                                                  tsoChannelHandler1,
                                                  stateManager1,
@@ -262,7 +261,7 @@ public class TestLeaseManager {
         // Then launch another instance...
         TSOChannelHandler tsoChannelHandler2 = mock(TSOChannelHandler.class);
         TSOStateManager stateManager2 = mock(TSOStateManager.class);
-        when(stateManager2.reset()).thenReturn(new TSOState(DUMMY_LOW_WATERMARK_2, DUMMY_EPOCH_2));
+        when(stateManager2.initialize()).thenReturn(new TSOState(DUMMY_LOW_WATERMARK_2, DUMMY_EPOCH_2));
         leaseManager2 = new PausableLeaseManager(LEASE_MGR_ID_2,
                                                  tsoChannelHandler2,
                                                  stateManager2,
@@ -285,7 +284,7 @@ public class TestLeaseManager {
         assertTrue(leaseManager2.stillInLeasePeriod());
 
         // Now, lets resume the first instance...
-        when(stateManager1.reset()).thenReturn(new TSOState(DUMMY_LOW_WATERMARK_3, DUMMY_EPOCH_3));
+        when(stateManager1.initialize()).thenReturn(new TSOState(DUMMY_LOW_WATERMARK_3, DUMMY_EPOCH_3));
         leaseManager1.resume();
 
         // ... let the test run for some time...
@@ -334,7 +333,7 @@ public class TestLeaseManager {
 
         // Launch the master instance...
         TSOStateManager stateManager1 = mock(TSOStateManager.class);
-        when(stateManager1.reset()).thenReturn(new TSOState(DUMMY_LOW_WATERMARK_1, DUMMY_EPOCH_1));
+        when(stateManager1.initialize()).thenReturn(new TSOState(DUMMY_LOW_WATERMARK_1, DUMMY_EPOCH_1));
         PausableLeaseManager leaseManager = new PausableLeaseManager(LEASE_MGR_ID_1,
                                                                      mock(TSOChannelHandler.class),
                                                                      stateManager1,

http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/test/java/org/apache/omid/tso/TestLongCache.java
----------------------------------------------------------------------
diff --git a/tso-server/src/test/java/org/apache/omid/tso/TestLongCache.java b/tso-server/src/test/java/org/apache/omid/tso/TestLongCache.java
index c6cad08..c02ed85 100644
--- a/tso-server/src/test/java/org/apache/omid/tso/TestLongCache.java
+++ b/tso-server/src/test/java/org/apache/omid/tso/TestLongCache.java
@@ -26,7 +26,7 @@ import java.util.Set;
 import java.util.TreeSet;
 
 import static org.testng.Assert.assertEquals;
-import static org.testng.AssertJUnit.assertTrue;
+import static org.testng.Assert.assertTrue;
 
 public class TestLongCache {
 
@@ -37,7 +37,7 @@ public class TestLongCache {
     private Random random = new Random(System.currentTimeMillis());
 
     @Test
-    public void testAddAndGetElemsAndResetCache() {
+    public void testAddAndGetElems() {
 
         // Cache configuration
         final int CACHE_SIZE = 10_000_000;
@@ -47,7 +47,7 @@ public class TestLongCache {
         // After creation, cache values should be the default
         for (int i = 0; i < 1000; i++) {
             long position = random.nextLong();
-            assertEquals(cache.get(position), LongCache.RESET_VALUE);
+            assertEquals(cache.get(position), 0L);
         }
 
         Set<Long> testedKeys = new TreeSet<>();
@@ -63,17 +63,6 @@ public class TestLongCache {
             assertEquals(cache.get(key), TEST_VALUE);
         }
 
-        // Reset cache and check the values are the default again
-        long startTimeInMs = System.currentTimeMillis();
-        cache.reset();
-        long endTimeInMs = System.currentTimeMillis();
-        long resetTimeInMs = endTimeInMs - startTimeInMs;
-        LOG.info("Time in reseting cache of {}/{} elems/asoc {}ms", CACHE_SIZE, CACHE_ASSOCIATIVITY, resetTimeInMs);
-
-        for (long key : testedKeys) {
-            assertEquals(cache.get(key), LongCache.RESET_VALUE);
-        }
-
     }
 
     @Test(timeOut = 10000)
@@ -116,7 +105,7 @@ public class TestLongCache {
         double avgGap = totalAge / (double) removals;
         LOG.info("Avg gap: " + (tempAvg));
         LOG.info("Std dev gap: " + Math.sqrt((tempStdDev / entries)));
-        assertTrue("avgGap should be greater than entries * 0.6",
-                avgGap > entries * 0.6);
+        assertTrue(avgGap > entries * 0.6, "avgGap should be greater than entries * 0.6");
+
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/test/java/org/apache/omid/tso/TestRequestProcessor.java
----------------------------------------------------------------------
diff --git a/tso-server/src/test/java/org/apache/omid/tso/TestRequestProcessor.java b/tso-server/src/test/java/org/apache/omid/tso/TestRequestProcessor.java
index a9b32e6..d1272a7 100644
--- a/tso-server/src/test/java/org/apache/omid/tso/TestRequestProcessor.java
+++ b/tso-server/src/test/java/org/apache/omid/tso/TestRequestProcessor.java
@@ -75,7 +75,7 @@ public class TestRequestProcessor {
 
         // Initialize the state for the experiment
         stateManager.register(requestProc);
-        stateManager.reset();
+        stateManager.initialize();
 
     }
 
@@ -150,7 +150,7 @@ public class TestRequestProcessor {
 
         // ... simulate the reset of the RequestProcessor state (e.g. due to
         // a change in mastership) and...
-        stateManager.reset();
+        stateManager.initialize();
 
         // ...check that the transaction is aborted when trying to commit
         requestProc.commitRequest(startTS, writeSet, false, null, new MonitoringContext(metrics));

http://git-wip-us.apache.org/repos/asf/incubator-omid/blob/811ec48f/tso-server/src/test/java/org/apache/omid/tso/TestTSOStateManager.java
----------------------------------------------------------------------
diff --git a/tso-server/src/test/java/org/apache/omid/tso/TestTSOStateManager.java b/tso-server/src/test/java/org/apache/omid/tso/TestTSOStateManager.java
index c69e77f..2b4b250 100644
--- a/tso-server/src/test/java/org/apache/omid/tso/TestTSOStateManager.java
+++ b/tso-server/src/test/java/org/apache/omid/tso/TestTSOStateManager.java
@@ -51,23 +51,23 @@ public class TestTSOStateManager {
     }
 
     @Test
-    public void testResetOfTSOServerState() throws Exception {
+    public void testTSOServerStateInitialization() throws Exception {
 
         // Reset the state and check we get the initial state values
-        TSOState initialState = stateManager.reset();
+        TSOState initialState = stateManager.initialize();
         assertEquals(initialState.getLowWatermark(), INITIAL_STATE_VALUE);
         assertEquals(initialState.getEpoch(), INITIAL_STATE_VALUE);
         assertTrue("In this implementation low watermark should be equal to epoch",
-                initialState.getLowWatermark() == initialState.getEpoch());
+                   initialState.getLowWatermark() == initialState.getEpoch());
 
         // Then, simulate a change in the state returned by the Timestamp Oracle...
         when(timestampOracle.getLast()).thenReturn(NEW_STATE_VALUE);
         // ... and again, reset the state and check we get the new values
-        TSOState secondState = stateManager.reset();
+        TSOState secondState = stateManager.initialize();
         assertEquals(secondState.getLowWatermark(), NEW_STATE_VALUE);
         assertEquals(secondState.getEpoch(), NEW_STATE_VALUE);
         assertTrue("In this implementation low watermark should be equal to epoch",
-                secondState.getLowWatermark() == secondState.getEpoch());
+                   secondState.getLowWatermark() == secondState.getEpoch());
 
     }
 
@@ -79,7 +79,7 @@ public class TestTSOStateManager {
         stateManager.register(observer1);
 
         // Reset the state to trigger observer notifications
-        TSOState state = stateManager.reset();
+        TSOState state = stateManager.initialize();
 
         // Check observer 1 was notified with the corresponding state
         verify(observer1, timeout(100).times(1)).update(eq(state));
@@ -89,7 +89,7 @@ public class TestTSOStateManager {
         stateManager.register(observer2);
 
         // Again, reset the state to trigger observer notifications
-        state = stateManager.reset();
+        state = stateManager.initialize();
 
         // Check both observers were notified with the corresponding state
         verify(observer1, timeout(100).times(1)).update(eq(state));
@@ -99,16 +99,16 @@ public class TestTSOStateManager {
         stateManager.unregister(observer1);
 
         // Again, reset the state to trigger observer notifications
-        state = stateManager.reset();
+        state = stateManager.initialize();
 
         // Check only observer 2 was notified
         verify(observer1, timeout(100).times(0)).update(eq(state));
         verify(observer2, timeout(100).times(1)).update(eq(state));
     }
 
-    // ------------------------------------------------------------------------
-    // -------------------------- Helper classes ------------------------------
-    // ------------------------------------------------------------------------
+    // ----------------------------------------------------------------------------------------------------------------
+    // Helper classes
+    // ----------------------------------------------------------------------------------------------------------------
 
     private class DummyObserver implements StateObserver {