class ExpressionTreeTraversalStack extends SQLConfHelper
The stack of expression tree traversal properties which are accumulated during the resolution of a certain expression tree. This is filled by the ExpressionResolver.resolveExpressionTreeInOperatorImpl, and will usually have size 1. However, in case of subquery expressions we would call ExpressionResolver.resolveExpressionTreeInOperatorImpl several times recursively for each expression tree in the operator tree -> expression tree -> operator tree -> expression tree -> ... chain. Consider this example:
SELECT col1 FROM VALUES (1) AS t1 WHERE EXISTS ( SELECT * FROM VALUES (2) AS t2 WHERE (SELECT col1 FROM VALUES (3) AS t3) == t1.col1 )
We would have 3 nested stack entries for while resolving the lower scalar subquery (with the t3
table).
- Alphabetic
- By Inheritance
- ExpressionTreeTraversalStack
- SQLConfHelper
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new ExpressionTreeTraversalStack()
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
- def conf: SQLConf
The active config object within the current scope.
The active config object within the current scope. See SQLConf.get for more information.
- Definition Classes
- SQLConfHelper
- def current: ExpressionTreeTraversal
Current expression tree traversal properties.
Current expression tree traversal properties. Must exist when resolving an expression tree.
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- def withNewTraversal[R](parentOperator: LogicalPlan, defaultCollation: Option[String] = None, isFilterOnTopOfAggregate: Boolean = false, isSortOnTopOfAggregate: Boolean = false)(body: => R): R
Pushes a new ExpressionTreeTraversal object, executes the
bodyand finally pops the traversal from the stack. - def withSQLConf[T](pairs: (String, String)*)(f: => T): T
Sets all SQL configurations specified in
pairs, callsf, and then restores all SQL configurations.Sets all SQL configurations specified in
pairs, callsf, and then restores all SQL configurations.- Attributes
- protected
- Definition Classes
- SQLConfHelper
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)