Modified: 
accumulo/branches/ACCUMULO-259/server/src/main/java/org/apache/accumulo/server/util/TServerUtils.java
URL: 
http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/server/src/main/java/org/apache/accumulo/server/util/TServerUtils.java?rev=1438312&r1=1438311&r2=1438312&view=diff
==============================================================================
--- 
accumulo/branches/ACCUMULO-259/server/src/main/java/org/apache/accumulo/server/util/TServerUtils.java
 (original)
+++ 
accumulo/branches/ACCUMULO-259/server/src/main/java/org/apache/accumulo/server/util/TServerUtils.java
 Fri Jan 25 03:56:14 2013
@@ -23,7 +23,6 @@ import java.net.ServerSocket;
 import java.net.UnknownHostException;
 import java.nio.channels.ServerSocketChannel;
 import java.util.Random;
-import java.util.TimerTask;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.ThreadPoolExecutor;
 
@@ -193,7 +192,7 @@ public class TServerUtils {
      */
     final ThreadPoolExecutor pool = new SimpleThreadPool(numThreads, 
"ClientPool");
     // periodically adjust the number of threads we need by checking how busy 
our threads are
-    SimpleTimer.getInstance().schedule(new TimerTask() {
+    SimpleTimer.getInstance().schedule(new Runnable() {
       @Override
       public void run() {
         if (pool.getCorePoolSize() <= pool.getActiveCount()) {

Modified: 
accumulo/branches/ACCUMULO-259/server/src/main/java/org/apache/accumulo/server/util/time/SimpleTimer.java
URL: 
http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/server/src/main/java/org/apache/accumulo/server/util/time/SimpleTimer.java?rev=1438312&r1=1438311&r2=1438312&view=diff
==============================================================================
--- 
accumulo/branches/ACCUMULO-259/server/src/main/java/org/apache/accumulo/server/util/time/SimpleTimer.java
 (original)
+++ 
accumulo/branches/ACCUMULO-259/server/src/main/java/org/apache/accumulo/server/util/time/SimpleTimer.java
 Fri Jan 25 03:56:14 2013
@@ -19,6 +19,8 @@ package org.apache.accumulo.server.util.
 import java.util.Timer;
 import java.util.TimerTask;
 
+import org.apache.log4j.Logger;
+
 /**
  * Generic singleton timer: don't use it if you are going to do anything that 
will take very long. Please use it to reduce the number of threads dedicated to
  * simple events.
@@ -26,6 +28,25 @@ import java.util.TimerTask;
  */
 public class SimpleTimer {
   
+  static class LoggingTimerTask extends TimerTask {
+    
+    private Runnable task;
+    
+    LoggingTimerTask(Runnable task) {
+      this.task = task;
+    }
+    
+    @Override
+    public void run() {
+      try {
+        task.run();
+      } catch (Throwable t) {
+        Logger.getLogger(LoggingTimerTask.class).warn("Timer task failed " + 
task.getClass().getName() + " " + t.getMessage(), t);
+      }
+    }
+    
+  }
+
   private static SimpleTimer instance;
   private Timer timer;
   
@@ -39,12 +60,12 @@ public class SimpleTimer {
     timer = new Timer("SimpleTimer", true);
   }
   
-  public void schedule(TimerTask task, long delay) {
-    timer.schedule(task, delay);
+  public void schedule(Runnable task, long delay) {
+    timer.schedule(new LoggingTimerTask(task), delay);
   }
   
-  public void schedule(TimerTask task, long delay, long period) {
-    timer.schedule(task, delay, period);
+  public void schedule(Runnable task, long delay, long period) {
+    timer.schedule(new LoggingTimerTask(task), delay, period);
   }
   
 }

Modified: 
accumulo/branches/ACCUMULO-259/server/src/main/java/org/apache/accumulo/server/zookeeper/DistributedWorkQueue.java
URL: 
http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/server/src/main/java/org/apache/accumulo/server/zookeeper/DistributedWorkQueue.java?rev=1438312&r1=1438311&r2=1438312&view=diff
==============================================================================
--- 
accumulo/branches/ACCUMULO-259/server/src/main/java/org/apache/accumulo/server/zookeeper/DistributedWorkQueue.java
 (original)
+++ 
accumulo/branches/ACCUMULO-259/server/src/main/java/org/apache/accumulo/server/zookeeper/DistributedWorkQueue.java
 Fri Jan 25 03:56:14 2013
@@ -20,7 +20,6 @@ import java.util.Collections;
 import java.util.List;
 import java.util.Random;
 import java.util.Set;
-import java.util.TimerTask;
 import java.util.concurrent.ThreadPoolExecutor;
 import java.util.concurrent.atomic.AtomicInteger;
 
@@ -189,7 +188,7 @@ public class DistributedWorkQueue {
     
     Random r = new Random();
     // Add a little jitter to avoid all the tservers slamming zookeeper at once
-    SimpleTimer.getInstance().schedule(new TimerTask() {
+    SimpleTimer.getInstance().schedule(new Runnable() {
       @Override
       public void run() {
         try {

Propchange: accumulo/branches/ACCUMULO-259/src/
------------------------------------------------------------------------------
  Merged /accumulo/trunk/src:r1437608-1438309

Modified: 
accumulo/branches/ACCUMULO-259/start/src/main/java/org/apache/accumulo/start/classloader/vfs/ContextManager.java
URL: 
http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/start/src/main/java/org/apache/accumulo/start/classloader/vfs/ContextManager.java?rev=1438312&r1=1438311&r2=1438312&view=diff
==============================================================================
--- 
accumulo/branches/ACCUMULO-259/start/src/main/java/org/apache/accumulo/start/classloader/vfs/ContextManager.java
 (original)
+++ 
accumulo/branches/ACCUMULO-259/start/src/main/java/org/apache/accumulo/start/classloader/vfs/ContextManager.java
 Fri Jan 25 03:56:14 2013
@@ -119,7 +119,7 @@ public class ContextManager {
     synchronized (this) {
       // only manipulate internal data structs in this sync block... avoid 
creating or closing classloader, reading config, etc... basically avoid 
operations
       // that may block
-      context = contexts.get(context);
+      context = contexts.get(contextName);
       
       if (context == null) {
         context = new Context(cconfig);

Modified: 
accumulo/branches/ACCUMULO-259/test/src/main/java/org/apache/accumulo/test/MiniAccumuloCluster.java
URL: 
http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/test/src/main/java/org/apache/accumulo/test/MiniAccumuloCluster.java?rev=1438312&r1=1438311&r2=1438312&view=diff
==============================================================================
--- 
accumulo/branches/ACCUMULO-259/test/src/main/java/org/apache/accumulo/test/MiniAccumuloCluster.java
 (original)
+++ 
accumulo/branches/ACCUMULO-259/test/src/main/java/org/apache/accumulo/test/MiniAccumuloCluster.java
 Fri Jan 25 03:56:14 2013
@@ -32,7 +32,6 @@ import java.util.Map;
 import java.util.Map.Entry;
 import java.util.Properties;
 import java.util.Random;
-import java.util.TimerTask;
 
 import org.apache.accumulo.core.conf.Property;
 import org.apache.accumulo.core.util.UtilWaitThread;
@@ -63,7 +62,7 @@ public class MiniAccumuloCluster {
       this.in = new BufferedReader(new InputStreamReader(stream));
       out = new BufferedWriter(new FileWriter(logFile));
       
-      SimpleTimer.getInstance().schedule(new TimerTask() {
+      SimpleTimer.getInstance().schedule(new Runnable() {
         @Override
         public void run() {
           try {


Reply via email to