spring-boot/spring-boot-project
Brian Clozel 72c8e5d366 Collect HTTP trace at commit time for WebFlux
Prior to this commit, the `HttpTraceWebFilter` would collect the
response information (status and headers) for tracing purposes, after
the handling chain is done with the exchange - inside a
`doAfterSuccessOrError`.

Once the handler has processed the exchange, there is no strong
guarantee about the HTTP resources being still present. Depending on the
web server implementation, HTTP resources (including HTTP header maps)
might be recycled, because pooled in the first place.

This commit moves the collection and processing of the HTTP trace right
before the response is committed. This removes the need to handle
special cases with exceptions, since by that time all exception handlers
have processed the response and the information that we extract is the
information that's about to be written to the network.

Fixes gh-15819
2019-02-08 18:16:39 +01:00
..
spring-boot Polish 2019-02-08 09:20:15 +01:00
spring-boot-actuator Collect HTTP trace at commit time for WebFlux 2019-02-08 18:16:39 +01:00
spring-boot-actuator-autoconfigure Polish 2019-02-08 09:20:15 +01:00
spring-boot-autoconfigure Log unhandled server exceptions in WebFlux 2019-02-08 12:25:05 +01:00
spring-boot-cli Fix assertion 2019-02-08 08:45:12 +01:00
spring-boot-dependencies Start building against Micrometer 1.1.3 snapshots 2019-02-07 12:44:10 +00:00
spring-boot-devtools Use AssertJ’s exception assertions rather than fail 2019-02-04 11:48:26 +00:00
spring-boot-docs Polish 2019-02-08 09:20:15 +01:00
spring-boot-parent Add Kotlin DSL examples to Gradle Plugin's documentation 2018-10-05 10:41:13 +01:00
spring-boot-properties-migrator Polish "Avoid NPE when replacement property does not exist" 2018-12-28 18:19:12 +01:00
spring-boot-starters Add reference to Codecentric's SOAP Web Services starter 2019-02-02 20:21:57 +01:00
spring-boot-test Fix cast in TestRestTemplateContextCustomizer 2019-02-05 11:39:25 +00:00
spring-boot-test-autoconfigure Use AssertJ’s exception assertions rather than fail 2019-02-04 11:48:26 +00:00
spring-boot-tools Do not use reflection to fall back to JDKs jar URLStreamHandler 2019-02-05 10:59:32 +00:00
pom.xml Restore import-control checkstyle 2018-10-02 10:30:14 -07:00