Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -1125,7 +1125,7 @@ public class ConfigOptions {
public static final ConfigOption<Integer> CLIENT_LOOKUP_MAX_RETRIES =
key("client.lookup.max-retries")
.intType()
.defaultValue(3)
.defaultValue(Integer.MAX_VALUE)
.withDescription(
"Setting a value greater than zero will cause the client to resend any lookup request "
+ "that fails with a potentially transient error.");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -243,12 +243,10 @@ private static Configuration toFlussClientConfig(
}
});

// map flink lookup.max-retries to client.lookup.max-retries
if (tableOptions.containsKey(LookupOptions.MAX_RETRIES.key())) {
flussConfig.setString(
ConfigOptions.CLIENT_LOOKUP_MAX_RETRIES.key(),
tableOptions.get(LookupOptions.MAX_RETRIES.key()));
}
// Todo support LookupOptions.MAX_RETRIES. Currently, Fluss doesn't support connector level
// retry. The option 'client.lookup.max-retries' is only for dealing with the
// RetriableException return by server not all exceptions. Trace by:
// https://github.com/apache/fluss/issues/2099

// pass flink io tmp dir to fluss client.
flussConfig.setString(
Expand Down
28 changes: 14 additions & 14 deletions website/docs/engine-flink/options.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,20 +106,20 @@ See more details about [ALTER TABLE ... SET](engine-flink/ddl.md#set-properties)

## Lookup Options

| Option | Type | Default | Description |
|------------------------------------------|------------|---------|-----------------------------------------------------------------------------------------------------------------------------|
| lookup.async | Boolean | true | Whether to use asynchronous lookup. Asynchronous lookup has better throughput performance than synchronous lookup. |
| lookup.cache | Enum | NONE | The caching strategy for this lookup table, including NONE, PARTIAL. |
| lookup.max-retries | Integer | 3 | The maximum allowed retries if a lookup operation fails. Setting this value will override option 'client.lookup.max-retries'.|
| lookup.partial-cache.expire-after-access | Duration | (None) | Duration to expire an entry in the cache after accessing. |
| lookup.partial-cache.expire-after-write | Duration | (None) | Duration to expire an entry in the cache after writing. |
| lookup.partial-cache.cache-missing-key | Boolean | true | Whether to store an empty value into the cache if the lookup key doesn't match any rows in the table. |
| lookup.partial-cache.max-rows | Long | (None) | The maximum number of rows to store in the cache. |
| client.lookup.queue-size | Integer | 25600 | The maximum number of pending lookup operations. |
| client.lookup.max-batch-size | Integer | 128 | The maximum batch size of merging lookup operations to one lookup request. |
| client.lookup.max-inflight-requests | Integer | 128 | The maximum number of unacknowledged lookup requests for lookup operations. |
| client.lookup.batch-timeout | Duration | 100ms | The maximum time to wait for the lookup batch to full, if this timeout is reached, the lookup batch will be closed to send. |
| client.lookup.max-retries | Integer | 3 | Setting a value greater than zero will cause the client to resend any lookup request that fails with a potentially transient error. |
| Option | Type | Default | Description |
|------------------------------------------|------------|-------------------|-------------------------------------------------------------------------------------------------------------------------------------|
| lookup.async | Boolean | true | Whether to use asynchronous lookup. Asynchronous lookup has better throughput performance than synchronous lookup. |
| lookup.cache | Enum | NONE | The caching strategy for this lookup table, including NONE, PARTIAL. |
| lookup.max-retries | Integer | 3 | The maximum allowed retries if a lookup operation fails. Setting this value will override option 'client.lookup.max-retries'. |
| lookup.partial-cache.expire-after-access | Duration | (None) | Duration to expire an entry in the cache after accessing. |
| lookup.partial-cache.expire-after-write | Duration | (None) | Duration to expire an entry in the cache after writing. |
| lookup.partial-cache.cache-missing-key | Boolean | true | Whether to store an empty value into the cache if the lookup key doesn't match any rows in the table. |
| lookup.partial-cache.max-rows | Long | (None) | The maximum number of rows to store in the cache. |
| client.lookup.queue-size | Integer | 25600 | The maximum number of pending lookup operations. |
| client.lookup.max-batch-size | Integer | 128 | The maximum batch size of merging lookup operations to one lookup request. |
| client.lookup.max-inflight-requests | Integer | 128 | The maximum number of unacknowledged lookup requests for lookup operations. |
| client.lookup.batch-timeout | Duration | 100ms | The maximum time to wait for the lookup batch to full, if this timeout is reached, the lookup batch will be closed to send. |
| client.lookup.max-retries | Integer | Integer.MAX_VALUE | Setting a value greater than zero will cause the client to resend any lookup request that fails with a potentially transient error. |


## Write Options
Expand Down