You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+43-3Lines changed: 43 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -176,16 +176,55 @@ The second one is set per individual HTTP requests by HTTP client. Its default v
176
176
Flink's current implementation of `AsyncTableFunction` does not allow specifying custom logic for handling Flink AsyncIO timeouts as it is for Java API.
177
177
Because of that, if AsyncIO timer passes, Flink will throw TimeoutException which will cause job restart.
178
178
179
-
#### Retries (Lookup source)
179
+
#### Available Metadata (Lookup source)
180
+
181
+
The metadata column `http-status-code`, if specified in the table definition, will get the HTTP status code.
182
+
The metadata column `http-headers-map `, if specified in the table definition, will get a map of the HTTP headers.
183
+
184
+
HTTP requests can fail either immediately or after temporary error retries. The usual behaviour after such failures is to end the job. If you would like to continue
185
+
processing after these failures then specify `gid.connector.http.source.lookup.continue-on-error` as true. THe lookup join will complete without content in the expected enrichment columns from the http call,
186
+
this means that these columns will be null for nullable columns and hold a default value for the type for non-nullable columns.
187
+
188
+
When using `gid.connector.http.source.lookup.continue-on-error` as true, consider adding extra metadata columns that will surface information about failures into your stream.
189
+
190
+
Metadata columns can be specified and hold http information. They are optional read-only columns that must be declared VIRTUAL to exclude them during an INSERT INTO operation.
2. The response contains a HTTP error code that indicates a retriable error. These codes are defined in the table configuration (see `gid.connector.http.source.lookup.retry-codes`).
183
-
Retries are executed silently, without restarting the job. After reaching max retries attempts (per request) operation will fail and restart job.
219
+
Retries are executed silently, without restarting the job.
184
220
185
221
Notice that HTTP codes are categorized into into 3 groups:
186
222
- successful responses - response is returned immediately for further processing
187
223
- temporary errors - request will be retried up to the retry limit
188
-
- error responses - unexpected responses are not retried and will fail the job. Any HTTP error code which is not configured as successful or temporary error is treated as an unretriable error.
224
+
- error responses - unexpected responses are not retried. Any HTTP error code which is not configured as successful or temporary error is treated as an unretriable error.
225
+
226
+
For temporary errors that have reached max retries attempts (per request) and error responses, the operation will
227
+
succeed if `gid.connector.http.source.lookup.continue-on-error` is true, otherwise the job will fail.
189
228
190
229
##### Retry strategy
191
230
User can choose retry strategy type for source table:
@@ -555,6 +594,7 @@ be requested if the current time is later than the cached token expiry time minu
| gid.connector.http.source.lookup.continue-on-error | optional | When true, the flow will continue on errors, returning row content. When false (the default) the job ends on errors. |
558
598
| gid.connector.http.source.lookup.proxy.host | optional | Specify the hostname of the proxy. |
559
599
| gid.connector.http.source.lookup.proxy.port | optional | Specify the port of the proxy. |
560
600
| gid.connector.http.source.lookup.proxy.username | optional | Specify the username used for proxy authentication. |
0 commit comments