Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The available hint options for each mode:

option type
modesupport hint optionsasync'async'='true'
'output-mode'='ordere|allow-unordered'
'capacity'='100'
'timeout'='180s'
option nameoptionalvalue typedefault valuedescription
table nametableNstringN/Athe table name of the lookup source


async

asyncYbooleanN/A

value can be 'true' or  'false' to suggest the planner choose the corresponding lookup function.

If the backend lookup source does not support the suggested lookup mode, it will take no effect.

output-modeYstringordered

value can be 'ordered' or 'allow-unordered'.

'allow-unordered' means if users allow unordered result, it will attempt to use AsyncDataStream.OutputMode.UNORDERED when it does not affect the correctness of the result, otherwise ORDERED will be still used.

capacityYinteger100the buffer capacity for the backend asyncWaitOperator of the lookup join operator.
timeoutYduration300stimeout from first invoke to final completion of asynchronous operation, may include multiple retries, and will be reset in case of failover



retry
retry-predicateYstringN/Acan be 'lookup-miss' which will enable retry if lookup result is empty.
retry-strategyYstringN/Acan be 'fixed-delay' 
fixed-delayYdurationN/A

delay time for the 'fixed-delay' strategy

max-attemptsYintegerN/A

max attempt number of the 'fixed-delay' strategy

retry'miss-retry'='true'
'retry-strategy'='fixed-delay'
'delay'='10s'
'max-attempts'='3'


For these connectors which can have both capabilities of async and sync lookup, our advice for the connector developers are implementing both sync and async interfaces if both capabilities have suitable use cases, the planner will prefer the async one by default, and users can give different option value 'async'='true|false' via the LOOKUP query hint to suggest the planner,  otherwise choose one interface to implement.

...