Repository: cassandra
Updated Branches:
  refs/heads/cassandra-2.1 63407db7e -> b888f80d6
  refs/heads/cassandra-2.1.0 ef099c317 -> d4d624684
  refs/heads/trunk 90ade6b45 -> b8a4e4ff7


Fix tracing on the new SEPExecutor
patch by jbellis; reviewed by bes for CASSANDRA-7644


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d4d62468
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d4d62468
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d4d62468

Branch: refs/heads/cassandra-2.1
Commit: d4d62468462ac854c4855d31a363deab6a41692d
Parents: ef099c3
Author: Jonathan Ellis <jbel...@apache.org>
Authored: Thu Jul 31 10:21:22 2014 -0500
Committer: Jonathan Ellis <jbel...@apache.org>
Committed: Thu Jul 31 12:11:20 2014 -0500

----------------------------------------------------------------------
 CHANGES.txt                                               |  1 +
 .../concurrent/AbstractTracingAwareExecutorService.java   | 10 +++++-----
 2 files changed, 6 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/d4d62468/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 0ce0eaa..5210e0d 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 2.1.0-final
+ * Fix tracing on the new SEPExecutor (CASSANDRA-7644)
  * Remove shuffle and taketoken (CASSANDRA-7601)
  * Clean up Windows batch scripts (CASSANDRA-7619)
  * Fix native protocol drop user type notification (CASSANDRA-7571)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/d4d62468/src/java/org/apache/cassandra/concurrent/AbstractTracingAwareExecutorService.java
----------------------------------------------------------------------
diff --git 
a/src/java/org/apache/cassandra/concurrent/AbstractTracingAwareExecutorService.java
 
b/src/java/org/apache/cassandra/concurrent/AbstractTracingAwareExecutorService.java
index 95c55d3..8fa3ec9 100644
--- 
a/src/java/org/apache/cassandra/concurrent/AbstractTracingAwareExecutorService.java
+++ 
b/src/java/org/apache/cassandra/concurrent/AbstractTracingAwareExecutorService.java
@@ -81,12 +81,12 @@ public abstract class AbstractTracingAwareExecutorService 
implements TracingAwar
 
     protected <T> FutureTask<T> newTaskFor(Runnable runnable, T result)
     {
-        return newTaskFor(runnable, result, null);
+        return newTaskFor(runnable, result, Tracing.instance.get());
     }
 
     protected <T> FutureTask<T> newTaskFor(Runnable runnable, T result, 
TraceState traceState)
     {
-        if (traceState != null || isTracing())
+        if (traceState != null)
         {
             if (runnable instanceof TraceSessionFutureTask)
                 return (TraceSessionFutureTask<T>) runnable;
@@ -103,7 +103,7 @@ public abstract class AbstractTracingAwareExecutorService 
implements TracingAwar
         {
             if (callable instanceof TraceSessionFutureTask)
                 return (TraceSessionFutureTask<T>) callable;
-            return new TraceSessionFutureTask<T>(callable, null);
+            return new TraceSessionFutureTask<T>(callable, 
Tracing.instance.get());
         }
         if (callable instanceof FutureTask)
             return (FutureTask<T>) callable;
@@ -128,6 +128,7 @@ public abstract class AbstractTracingAwareExecutorService 
implements TracingAwar
 
         public void run()
         {
+            TraceState oldState = Tracing.instance.get();
             Tracing.instance.set(state);
             try
             {
@@ -135,7 +136,7 @@ public abstract class AbstractTracingAwareExecutorService 
implements TracingAwar
             }
             finally
             {
-                Tracing.instance.set(null);
+                Tracing.instance.set(oldState);
             }
         }
     }
@@ -223,5 +224,4 @@ public abstract class AbstractTracingAwareExecutorService 
implements TracingAwar
     {
         addTask(newTaskFor(command, null, state));
     }
-
 }

Reply via email to