You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by sn...@apache.org on 2015/08/11 10:45:38 UTC

[1/2] cassandra git commit: UFPureScriptTest.testJavascriptTupleType fails on uninitialized thread id

Repository: cassandra
Updated Branches:
  refs/heads/trunk 9e8741f28 -> 9f83e6a23


UFPureScriptTest.testJavascriptTupleType fails on uninitialized thread id

patch by Ariel Weisberg; reviewed by Robert Stupp for CASSANDRA-10019


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

Branch: refs/heads/trunk
Commit: 622e8a3e908350f56399a011ae80c8a9ba5b06bb
Parents: 213aab8
Author: Ariel Weisberg <ar...@weisberg.ws>
Authored: Tue Aug 11 10:41:45 2015 +0200
Committer: Robert Stupp <sn...@snazy.de>
Committed: Tue Aug 11 10:41:45 2015 +0200

----------------------------------------------------------------------
 .../org/apache/cassandra/cql3/functions/UDFunction.java     | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/622e8a3e/src/java/org/apache/cassandra/cql3/functions/UDFunction.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/functions/UDFunction.java b/src/java/org/apache/cassandra/cql3/functions/UDFunction.java
index 249e083..12b1f93 100644
--- a/src/java/org/apache/cassandra/cql3/functions/UDFunction.java
+++ b/src/java/org/apache/cassandra/cql3/functions/UDFunction.java
@@ -27,6 +27,7 @@ import java.util.Collections;
 import java.util.Enumeration;
 import java.util.HashSet;
 import java.util.List;
+import java.util.concurrent.CompletableFuture;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
@@ -35,12 +36,14 @@ import java.util.concurrent.TimeUnit;
 import java.util.concurrent.TimeoutException;
 
 import com.google.common.base.Objects;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import com.datastax.driver.core.DataType;
 import com.datastax.driver.core.ProtocolVersion;
 import com.datastax.driver.core.UserType;
+
 import org.apache.cassandra.config.Config;
 import org.apache.cassandra.config.DatabaseDescriptor;
 import org.apache.cassandra.config.Schema;
@@ -295,7 +298,7 @@ public abstract class UDFunction extends AbstractFunction implements ScalarFunct
             throw new InvalidRequestException("Scripted user-defined functions are disabled in cassandra.yaml - set enable_scripted_user_defined_functions=true to enable if you are aware of the security risks");
     }
 
-    private static final class ThreadIdAndCpuTime
+    private static final class ThreadIdAndCpuTime extends CompletableFuture<Object>
     {
         long threadId;
         long cpuTime;
@@ -318,6 +321,7 @@ public abstract class UDFunction extends AbstractFunction implements ScalarFunct
         {
             this.threadId = Thread.currentThread().getId();
             this.cpuTime = threadMXBean.getCurrentThreadCpuTime();
+            complete(null);
         }
     }
 
@@ -366,6 +370,9 @@ public abstract class UDFunction extends AbstractFunction implements ScalarFunct
             // retry a last time with the difference of UDF-fail-timeout to consumed CPU time (just in case execution hit a badly timed GC)
             try
             {
+                //The threadIdAndCpuTime shouldn't take a long time to be set so this should return immediately
+                threadIdAndCpuTime.get(1, TimeUnit.SECONDS);
+
                 long cpuTimeMillis = threadMXBean.getThreadCpuTime(threadIdAndCpuTime.threadId) - threadIdAndCpuTime.cpuTime;
                 cpuTimeMillis /= 1000000L;
 


[2/2] cassandra git commit: Merge branch 'cassandra-3.0' into trunk

Posted by sn...@apache.org.
Merge branch 'cassandra-3.0' into trunk


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

Branch: refs/heads/trunk
Commit: 9f83e6a23297b16b7a2024a6c7e128d3e7cf7a25
Parents: 9e8741f 622e8a3
Author: Robert Stupp <sn...@snazy.de>
Authored: Tue Aug 11 10:43:55 2015 +0200
Committer: Robert Stupp <sn...@snazy.de>
Committed: Tue Aug 11 10:43:55 2015 +0200

----------------------------------------------------------------------
 .../org/apache/cassandra/cql3/functions/UDFunction.java     | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)
----------------------------------------------------------------------