• DatabaseClient.map(…) now a mapping Function for Readable to consume tabular and stored procedure results (via OutParameters). Also, DatabaseClient.flatMap(…) allows consuming individual segments from a response (update counts, database messages, rows, out parameters).
  • R2dbcTransactionManager now supports extensible transaction definitions to provide all transaction attributes upon transaction start
  • We use consistently R2DBC's Parameters instead of our own Parameter type. Our own Parameter is deprecated now.
  • Switch to Long for update operations in preparation for R2DBC 1.0

Comment From: jhoeller

@mp911de This looks good to me so far, pretty much the only complaint I have is the use of StringBuffer (instead of StringBuilder) in ExtendedTransactionDefinition... Oh, and we seem to have a conflict in DefaultDatabaseClientUnitTests in the meantime.

From my perspective, we could include this in 6.0 M3 tomorrow. Any updates you'd like to make still? Any chance you could rebase and possibly squash the PR into one commit?

Comment From: jhoeller

Also, this fully addresses #27976 as far as I can see? Do we foresee anything left to do for R2DBC 0.9 beyond this PR? I guess it's rather going to be about R2DBC 1.0 then...

Comment From: mp911de

Happy to take care of both. R2DBC 0.9 baseline support is done after this PR is merged. I expect some future requests from users around stored procedures consumption once we have a broader R2DBC 0.9 adoption but time has to prove me right or wrong.

Comment From: jhoeller

Thanks, @mp911de! Merged for inclusion in 6.0 M3 now.