From ab5702fc162e4db6a87e525521a2af9aa837d7ed Mon Sep 17 00:00:00 2001 From: Mike Drob Date: Tue, 19 Apr 2016 10:44:54 -0500 Subject: [PATCH] HTRACE-359. TraceRunnable and TraceCallable should store parent SpanId not scope --- .../src/main/java/org/apache/htrace/core/TraceCallable.java | 12 +++++++++--- .../src/main/java/org/apache/htrace/core/TraceRunnable.java | 12 +++++++++--- .../src/main/java/org/apache/htrace/core/Tracer.java | 4 ++-- 3 files changed, 20 insertions(+), 8 deletions(-) diff --git a/htrace-core4/src/main/java/org/apache/htrace/core/TraceCallable.java b/htrace-core4/src/main/java/org/apache/htrace/core/TraceCallable.java index 9cf478d..0748178 100644 --- a/htrace-core4/src/main/java/org/apache/htrace/core/TraceCallable.java +++ b/htrace-core4/src/main/java/org/apache/htrace/core/TraceCallable.java @@ -24,10 +24,16 @@ import java.util.concurrent.Callable; public class TraceCallable implements Callable { private final Tracer tracer; private final Callable impl; - private final TraceScope parent; + private final SpanId parent; private final String description; - TraceCallable(Tracer tracer, TraceScope parent, Callable impl, + @Deprecated + public TraceCallable(Tracer tracer, TraceScope parent, Callable impl, + String description) { + this(tracer, parent.getSpanId(), impl, description); + } + + public TraceCallable(Tracer tracer, SpanId parent, Callable impl, String description) { this.tracer = tracer; this.impl = impl; @@ -41,7 +47,7 @@ public class TraceCallable implements Callable { if (description == null) { description = Thread.currentThread().getName(); } - try (TraceScope chunk = tracer.newScope(description, parent.getSpan().getSpanId())) { + try (TraceScope chunk = tracer.newScope(description, parent)) { return impl.call(); } } diff --git a/htrace-core4/src/main/java/org/apache/htrace/core/TraceRunnable.java b/htrace-core4/src/main/java/org/apache/htrace/core/TraceRunnable.java index f2db5c2..e9b5f13 100644 --- a/htrace-core4/src/main/java/org/apache/htrace/core/TraceRunnable.java +++ b/htrace-core4/src/main/java/org/apache/htrace/core/TraceRunnable.java @@ -21,25 +21,31 @@ package org.apache.htrace.core; */ public class TraceRunnable implements Runnable { private final Tracer tracer; - private final TraceScope parent; + private final SpanId parent; private final Runnable runnable; private final String description; + @Deprecated public TraceRunnable(Tracer tracer, TraceScope parent, Runnable runnable, String description) { + this(tracer, parent.getSpanId(), runnable, description); + } + + public TraceRunnable(Tracer tracer, SpanId parent, + Runnable runnable, String description) { this.tracer = tracer; this.parent = parent; this.runnable = runnable; this.description = description; } - + @Override public void run() { String description = this.description; if (description == null) { description = Thread.currentThread().getName(); } - try (TraceScope chunk = tracer.newScope(description, parent.getSpan().getSpanId())) { + try (TraceScope chunk = tracer.newScope(description, parent)) { runnable.run(); } } diff --git a/htrace-core4/src/main/java/org/apache/htrace/core/Tracer.java b/htrace-core4/src/main/java/org/apache/htrace/core/Tracer.java index 83a8a3e..6dbb1c5 100644 --- a/htrace-core4/src/main/java/org/apache/htrace/core/Tracer.java +++ b/htrace-core4/src/main/java/org/apache/htrace/core/Tracer.java @@ -447,7 +447,7 @@ public class Tracer implements Closeable { if (parentScope == null) { return callable; } - return new TraceCallable(this, parentScope, callable, description); + return new TraceCallable(this, parentScope.getSpanId(), callable, description); } /** @@ -463,7 +463,7 @@ public class Tracer implements Closeable { if (parentScope == null) { return runnable; } - return new TraceRunnable(this, parentScope, runnable, description); + return new TraceRunnable(this, parentScope.getSpanId(), runnable, description); } public TraceExecutorService newTraceExecutorService(ExecutorService impl) { -- 1.9.1