Skip to content

Commit 31e6fff

Browse files
committed
Added eval for Rand (without any support for user-defined seed).
Author: Reynold Xin <[email protected]> Closes #349 from rxin/rand and squashes the following commits: fd11322 [Reynold Xin] Added eval for Rand (without any support for user-defined seed).
1 parent 55dfd5d commit 31e6fff

File tree

1 file changed

+10
-3
lines changed
  • sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions

1 file changed

+10
-3
lines changed

sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/Rand.scala

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,18 @@
1717

1818
package org.apache.spark.sql.catalyst.expressions
1919

20+
import java.util.Random
2021
import org.apache.spark.sql.catalyst.types.DoubleType
2122

23+
2224
case object Rand extends LeafExpression {
23-
def dataType = DoubleType
24-
def nullable = false
25-
def references = Set.empty
25+
override def dataType = DoubleType
26+
override def nullable = false
27+
override def references = Set.empty
28+
29+
private[this] lazy val rand = new Random
30+
31+
override def eval(input: Row = null) = rand.nextDouble().asInstanceOf[EvaluatedType]
32+
2633
override def toString = "RAND()"
2734
}

0 commit comments

Comments
 (0)