[ 
https://issues.apache.org/jira/browse/FLINK-39729?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sergey Nuyanzin updated FLINK-39729:
------------------------------------
    Fix Version/s: 2.1.3

> CorrelateRestoreTest.testRestore[8] (CORRELATE_WITH_LITERAL_AGG) is flaky due 
> to non-deterministic changelog ordering
> ---------------------------------------------------------------------------------------------------------------------
>
>                 Key: FLINK-39729
>                 URL: https://issues.apache.org/jira/browse/FLINK-39729
>             Project: Flink
>          Issue Type: Bug
>          Components: Table SQL / Planner
>            Reporter: Jim Hughes
>            Assignee: Jim Hughes
>            Priority: Minor
>              Labels: pull-request-available, test-stability
>             Fix For: 2.4.0, 2.1.3
>
>
> `CorrelateRestoreTest.testRestore[8]` (`CORRELATE_WITH_LITERAL_AGG`) is 
> intermittently failing because the test asserts exact changelog record 
> ordering, but the multi-source streaming plan produces non-deterministic 
> record interleaving after restore.
> The plan has three independent sources feeding into two streaming joins 
> (InnerJoin, LeftOuterJoin, SemiJoin). Post-restore, when `source_t2`'s record 
> reaches the SemiJoin before the retract cascade from the 
> GroupAggregate+InnerJoin pipeline completes, the `-D[3]` and `+I[3]` 
> changelog records are never emitted in the expected window.
> The test was introduced in FLINK-37882.
> {code}
> Expecting actual:
>   ["+I[2]", "-D[2]", "+I[2]", "+I[3]"]
> to contain exactly in any order:
>   ["+I[2]", "+I[3]", "-D[2]", "-D[3]", "+I[2]", "+I[3]"]
> but could not find the following elements:
>   ["-D[3]", "+I[3]"]
> {code}
> *Fix:* Switch from changelog assertion to materialized data assertion using 
> the existing `testMaterializedData()` + `consumedValues()` pattern (already 
> used by `MultiJoinTestPrograms` and `DeltaJoinTestPrograms` for the same 
> class of non-determinism). The expected materialized state is `[+I[2], 
> +I[3]]`.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to