Closed Declow0 closed 9 months ago
@Declow0 Thanks for the report.
I'm a bit confused by GenericExecuteSpec#map
but it essentially boils down to the Result#map(BiFunction)
and Result#map(Function)
.
I have root caused why it doesn't call afterQuery
.
It may take some time to implement this issue properly.
In the meantime, as a workaround, please use Result#map(BiFunction)
to trigger the afterQuery
for now.
Bug Report
Different variance of
map
method atio.r2dbc.spi.Result
work inconsistently withQueryInvocationSubscriber#afterQuery
Versions
Current Behavior
does not trigger
QueryInvocationSubscriber#afterQuery
triggers
QueryInvocationSubscriber#afterQuery
Steps to reproduce
I have ProxyConnectionFactory with ObservationProxyExecutionListener
and repository
where
result
processed by different signatures ofGenericExecuteSpec#map
: Function or BiFunction as parameter.When
selectReadable()
called thenQueryInvocationSubscriber#afterQuery
does not call becauseio.r2dbc.proxy.callback.QueriesExecutionContext#isAllConsumed
isfalse
.Otherwise when
selectBiFun()
called then listener publishesQueryInvocationSubscriber#afterQuery
Expected behavior/code
Both variance of
io.r2dbc.spi.Result#map
triggerQueryInvocationSubscriber#afterQuery