The new DefaultPartHttpMessageReader
creates a Reactor Scheduler
via Schedulers.newBoundedElastic
to use for temp file creation. This lead to the creation of a boundedElastic-evictor
daemon thread that won't ever be shut down. The issue is further compounded by the way CodecConfigurer
has always worked by creating new instances of default codecs.
CodecConfigurer
will be improved via #26263 to cache instances of default codecs. Still the configurer may be created multiple times, and in any case the creation of an DefaultPartHttpMessageReader
instance should be decoupled from the creation of live resources.