public final class WatermarkPushDownSpec extends SourceAbilitySpecBase
SourceAbilitySpec that can not only serialize/deserialize the watermark
to/from JSON, but also can push the watermark into a SupportsWatermarkPushDown.| Modifier and Type | Field and Description |
|---|---|
static String |
FIELD_NAME_GLOBAL_IDLE_TIMEOUT_MILLIS |
static String |
FIELD_NAME_WATERMARK_EXPR |
static String |
FIELD_NAME_WATERMARK_PARAMS |
FIELD_NAME_PRODUCED_TYPE| Constructor and Description |
|---|
WatermarkPushDownSpec(org.apache.calcite.rex.RexNode watermarkExpr,
long globalIdleTimeoutMillis,
org.apache.flink.table.types.logical.RowType producedType,
org.apache.flink.table.watermark.WatermarkParams watermarkParams) |
| Modifier and Type | Method and Description |
|---|---|
void |
apply(org.apache.flink.table.connector.source.DynamicTableSource tableSource,
SourceAbilityContext context)
Apply the ability to the given
DynamicTableSource. |
WatermarkPushDownSpec |
copy(org.apache.calcite.rex.RexNode watermarkExpr,
org.apache.flink.table.types.logical.RowType producedType) |
boolean |
equals(Object o) |
String |
getDigests(SourceAbilityContext context)
Additional digests to generate when this spec is applied to the source.
|
org.apache.calcite.rex.RexNode |
getWatermarkExpr() |
int |
hashCode() |
boolean |
needAdjustFieldReferenceAfterProjection()
Does this spec needs adjust field reference after projection.
|
getProducedTypepublic static final String FIELD_NAME_WATERMARK_EXPR
public static final String FIELD_NAME_GLOBAL_IDLE_TIMEOUT_MILLIS
public static final String FIELD_NAME_WATERMARK_PARAMS
public WatermarkPushDownSpec(org.apache.calcite.rex.RexNode watermarkExpr,
long globalIdleTimeoutMillis,
org.apache.flink.table.types.logical.RowType producedType,
org.apache.flink.table.watermark.WatermarkParams watermarkParams)
public void apply(org.apache.flink.table.connector.source.DynamicTableSource tableSource,
SourceAbilityContext context)
SourceAbilitySpecDynamicTableSource.public boolean needAdjustFieldReferenceAfterProjection()
SourceAbilitySpecRexNode or references fields in scan table, the referenced field indices maybe changed after
projection pushdown with scan reuse. Under such case, this method need to return true to
notify planner doesn't reuse the scan.public WatermarkPushDownSpec copy(org.apache.calcite.rex.RexNode watermarkExpr, org.apache.flink.table.types.logical.RowType producedType)
public org.apache.calcite.rex.RexNode getWatermarkExpr()
public String getDigests(SourceAbilityContext context)
SourceAbilitySpeccontext - The context about the source.public boolean equals(Object o)
equals in class SourceAbilitySpecBasepublic int hashCode()
hashCode in class SourceAbilitySpecBaseCopyright © 2014–2025 The Apache Software Foundation. All rights reserved.