Introduce mechanism to discover whether a reactive type registered in ReactiveAdapterRegistry uses deferred computation #24995
Labels
in: core
Issues in core modules (aop, beans, core, context, expression)
type: enhancement
A general enhancement
Milestone
It would make sense to describe whether a type registered in
ReactiveAdapterRegistry
uses deferred computation. Deferred types arePublisher
types, RxJava types and Kotlin's flow. Non-deferred types (eager computation) are which act asFuture
or Promise.Background is that Spring Data uses
ReactiveAdapterRegistry
to determine a stack that is used to implement a repository interface. An issue comes into play when a repository uses@Async
in combination withCompletableFuture
. These methods are typically implemented using the imperative stack and calls are offloaded to a thread pool. Since the registry listsCompletionStage
/CompletableFuture
types, future types are considered to be reactive ones.Related issue: https://jira.spring.io/browse/DATAJPA-1710
The text was updated successfully, but these errors were encountered: