Skip to content

Add a note about retry filter behavior in documentation#3534

Merged
spencergibb merged 3 commits intospring-cloud:mainfrom
qnnn:specify-retry-filter-order
Sep 27, 2024
Merged

Add a note about retry filter behavior in documentation#3534
spencergibb merged 3 commits intospring-cloud:mainfrom
qnnn:specify-retry-filter-order

Conversation

@qnnn
Copy link
Copy Markdown
Contributor

@qnnn qnnn commented Sep 21, 2024

Currently, the priority of the GatewayFilter returned by RetryGatewayFilterFactory is not explicitly specified, which may lead to idempotency issues when used with other AbstractGatewayFilterFactory. For example, when AddRequestHeaderGatewayFilterFactory is configured after RetryGatewayFilterFactory, there may be issues with adding headers multiple times after a retry.
Perhaps it would be more appropriate for RetryGatewayFilterFactory to retry the ReactiveLoadBalancerClientFilter and the filters that follow. What do you think?

@spencergibb
Copy link
Copy Markdown
Member

I don't think specifying a specific order is right. It should be the order defined, and yes, users need to be aware. Maybe a documentation issue?

@qnnn
Copy link
Copy Markdown
Contributor Author

qnnn commented Sep 26, 2024

I don't think specifying a specific order is right. It should be the order defined, and yes, users need to be aware. Maybe a documentation issue?

Indeed, even if the order of the Retry filter is specified, other custom filters may still encounter the issue mentioned above. I have updated the PR title and added a description of this behavior in the corresponding documentation.

@qnnn qnnn changed the title Specify the Order of Filter Returned by RetryGatewayFilterFactory Add a note about retry filter behavior in documentation Sep 26, 2024
@spencergibb spencergibb added this to the 4.2.0-M2 milestone Sep 27, 2024
@spencergibb spencergibb merged commit 181feb0 into spring-cloud:main Sep 27, 2024
@qnnn qnnn deleted the specify-retry-filter-order branch September 28, 2024 02:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

No open projects
Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants