Github user kiszk commented on a diff in the pull request:
https://github.com/apache/spark/pull/23135#discussion_r236104602
--- Diff:
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/Expression.scala
---
@@ -43,9 +43,24 @@ import org.apache.spark.sql.types._
* There are a few important traits:
*
* - [[Nondeterministic]]: an expression that is not deterministic.
+ * - [[Stateful]]: an expression that contains mutable state. For example,
MonotonicallyIncreasingID
+ * and Rand. A stateful expression is always
non-deterministic.
* - [[Unevaluable]]: an expression that is not supposed to be evaluated.
* - [[CodegenFallback]]: an expression that does not have code gen
implemented and falls back to
* interpreted mode.
+ * - [[NullIntolerant]]: an expression that is null intolerant (i.e. any
null input will result in
+ * null output).
+ * - [[NonSQLExpression]]: a common base trait for the expressions that
doesn't have SQL
--- End diff --
nit: `doesn't` -> `do not`
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]