class LastRunningWindowFixer extends FirstLastRunningWindowFixerBase
Batched running window fixer for LAST() window functions. Supports fixing for batched
execution for ROWS and RANGE based window specifications.
- Alphabetic
- By Inheritance
- LastRunningWindowFixer
- FirstLastRunningWindowFixerBase
- Logging
- BatchedRunningWindowFixer
- Retryable
- AutoCloseable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
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
checkpoint(): Unit
Save the state, so it can be restored in the case of a retry.
Save the state, so it can be restored in the case of a retry. (This is called inside a Spark task context on executors.)
- Definition Classes
- FirstLastRunningWindowFixerBase → Retryable
-
var
chkptPreviousResult: Option[Scalar]
Checkpoint result, in case it needs to be rolled back.
Checkpoint result, in case it needs to be rolled back.
- Attributes
- protected[this]
- Definition Classes
- FirstLastRunningWindowFixerBase
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
close(): Unit
- Definition Classes
- FirstLastRunningWindowFixerBase → AutoCloseable
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
fixUp(samePartitionMask: Either[ColumnVector, Boolean], sameOrderMask: Option[Either[ColumnVector, Boolean]], unfixedWindowResults: ColumnView): ColumnVector
Fixes up
unfixedWindowResultswith stored state from previous batch(es).Fixes up
unfixedWindowResultswith stored state from previous batch(es). In this case (i.e.LAST), the previous result only comes into it if:- There was a previous result at all.
2. Nulls have to be ignored (i.e. ignoreNulls == true).
3. The previous result (row) from the last batch is not null.
4. There exists at least one
unfixedWindowResultsrow that is NULL, and belongs to the same partition/group as the previous result. In all other cases, theunfixedWindowResultsprevail.
- samePartitionMask
a mask that uses
trueto indicate the row is for the same partition by keys that was the last row in the previous batch orfalseto indicate it is not. If this is known to be all true or all false values a single boolean is used. If it can change for different rows than a column vector is provided. Only values that are for the same partition by keys should be modified. Because the input data is sorted by the partition by columns the boolean values will be grouped together.- sameOrderMask
Similar mask for ordering. Unused for
LAST.- unfixedWindowResults
the output of the windowAggregation without anything fixed/modified. This should not be closed by
fixUpas it will be handled by the framework.- returns
a fixed ColumnVector that was with outputs updated for items that were in the same group by key as the last row in the previous batch.
- Definition Classes
- LastRunningWindowFixer → BatchedRunningWindowFixer
- There was a previous result at all.
2. Nulls have to be ignored (i.e. ignoreNulls == true).
3. The previous result (row) from the last batch is not null.
4. There exists at least one
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
val
ignoreNulls: Boolean
- Definition Classes
- FirstLastRunningWindowFixerBase
-
def
incRef(col: ColumnView): ColumnVector
- Attributes
- protected
- Definition Classes
- BatchedRunningWindowFixer
-
def
initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean
- Attributes
- protected
- Definition Classes
- Logging
-
def
initializeLogIfNecessary(isInterpreter: Boolean): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isTraceEnabled(): Boolean
- Attributes
- protected
- Definition Classes
- Logging
-
def
log: Logger
- Attributes
- protected
- Definition Classes
- Logging
-
def
logDebug(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logDebug(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logError(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logError(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logInfo(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logInfo(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logName: String
- Attributes
- protected
- Definition Classes
- Logging
-
def
logTrace(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logTrace(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logWarning(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logWarning(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
val
name: String
- Definition Classes
- FirstLastRunningWindowFixerBase
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
needsOrderMask: Boolean
- Definition Classes
- BatchedRunningWindowFixer
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
var
previousResult: Option[Scalar]
Saved "carry-over" result that might be applied to the next batch.
Saved "carry-over" result that might be applied to the next batch.
- Attributes
- protected[this]
- Definition Classes
- FirstLastRunningWindowFixerBase
-
def
resetPrevious(finalOutputColumn: ColumnVector): Unit
Saves the last row from the
finalOutputColumn, to carry over to the next column processed by this fixer.Saves the last row from the
finalOutputColumn, to carry over to the next column processed by this fixer.- Attributes
- protected[this]
- Definition Classes
- FirstLastRunningWindowFixerBase
-
def
restore(): Unit
Restore the state that was saved by calling to "checkpoint".
Restore the state that was saved by calling to "checkpoint". (This is called inside a Spark task context on executors.)
- Definition Classes
- FirstLastRunningWindowFixerBase → Retryable
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()