Fix no effect of custom SessionRepositoryCustomizer in application context #33514
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR fixes the issue #33463.
With the new release of Spring Boot v3 the SpringBootJdbcHttpSessionConfiguration was replaced with the SessionRepositoryCustomizer.
This change led to the linked issue because in the Spring Session project the line in
JdbcHttpSessionConfiguration
now has more than onesessionRepositoryCustomizers
and they are executed in the wrong order.By default the first few session repository customizer are the custom defined one's (e.g. a
PostgreSqlJdbcIndexedSessionRepositoryCustomizer
, it updates a query). After that thespringBootSessionRepositoryCustomizer
is executed which sets the table name and in return updates all queries to their respective defaults (see here).To fix this the order of the
springBootSessionRepositoryCustomizer
bean is set to highest precedence so that the bean is the first one in the list.This fix should be identical to the implementation in Spring Boot 2.7 because in the "old" implementation the logic of
springBootSessionRepositoryCustomizer
is executed before other customizer's.