You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flink.apache.org by "lincoln lee (Jira)" <ji...@apache.org> on 2022/05/16 03:26:00 UTC

[jira] [Created] (FLINK-27622) Make `AsyncDataStream.OutputMode` configurable for table module

lincoln lee created FLINK-27622:
-----------------------------------

             Summary: Make `AsyncDataStream.OutputMode` configurable for table module
                 Key: FLINK-27622
                 URL: https://issues.apache.org/jira/browse/FLINK-27622
             Project: Flink
          Issue Type: Improvement
          Components: Table SQL / API
            Reporter: lincoln lee
             Fix For: 1.16.0


The `AsyncDataStream.OutputMode` is hardcoded to 'AsyncDataStream.OutputMode.ORDERED' for now:
{code}
//   org.apache.flink.table.planner.plan.nodes.exec.common.CommonExecLookupJoin

        // force ORDERED output mode currently, optimize it to UNORDERED
        // when the downstream do not need orderness
        return new AsyncWaitOperatorFactory<>(
                asyncFunc, asyncTimeout, asyncBufferCapacity, AsyncDataStream.OutputMode.ORDERED);
{code}

It should be configurable to users same as the other two async options  'table.exec.async-lookup.buffer-capacity' & 'table.exec.async-lookup.timeout'.

Also, there must be some plan validation for correctness concern when output mode is unordered(that's the reason I know why not be exposed before).

Further, we should offer more precisely control for async join operation more than job level config, e.g., an async lookup join hint can do this per-join operation.

It's the time to get this work!




--
This message was sent by Atlassian Jira
(v8.20.7#820007)