-
Notifications
You must be signed in to change notification settings - Fork 38.6k
Closed
Labels
in: webIssues in web modules (web, webmvc, webflux, websocket)Issues in web modules (web, webmvc, webflux, websocket)type: enhancementA general enhancementA general enhancement
Milestone
Description
Patrick Linskey opened SPR-9748 and commented
RequestMappingHandlerAdapter creates a new HandlerMethod for each request. HandlerMethods cache their MethodParameters to avoid costly reflection calls each time annotation stats are needed, but the per-request copy circumvents this cache. This patch explicitly copies the MethodParameter cache from a HandlerMethod and its request-scoped dependents.
Affects: 3.1.1, 3.1.2, 3.2 M2
Issue Links:
- monitor contention at org.springframework.core.MethodParameter.getParameterAnnotations() [SPR-9298] #13936 monitor contention at org.springframework.core.MethodParameter.getParameterAnnotations() ("is duplicated by")
- NPE in org.springframework.core.MethodParameter.getParameterName (possible race condition) [SPR-12453] #17058 NPE in org.springframework.core.MethodParameter.getParameterName (possible race condition)
- Thread contention in HandlerMethod due to unnecessary BeanFactory.getType call [SPR-12832] #17429 Thread contention in HandlerMethod due to unnecessary BeanFactory.getType call
Referenced from: commits 2295372, 0a877af
1 votes, 3 watchers
Metadata
Metadata
Assignees
Labels
in: webIssues in web modules (web, webmvc, webflux, websocket)Issues in web modules (web, webmvc, webflux, websocket)type: enhancementA general enhancementA general enhancement