Reactive Transactions Masterclass
summary
Explains how Spring’s reactive transaction manager, R2DBC and R2DBC and Neo4j 4 actually implement begin/commit/rollback over non‑blocking publishers, with live demos using JDBC, R2DBC and the Neo4j reactive driver. Shows a surprising case where a cancelled HTTP/reactive subscription still causes work to be committed — transactions commit on cancellation — and that a committed transaction may not be immediately visible to subsequent verification. Covers practical fixes: use connection pooling, avoid n+1 reactive subqueries, and collect into list to avoid leaking streaming rows outside the transaction.
AI-written summary · about
chapters (15)
- 0:00Start
- 0:27Mark Paluch
- 1:01Michael Simons
- 10:21Resource-local Transaction
- 11:15Database Example
- 16:57Transaction Attributes
- 19:33Transaction Management
- 22:23Transaction Walkthrough
- 30:01Bound connection
- 32:15Imperative Transactions
- 36:17Still Distributed Transactions
- 39:12Transaction Managers
- 44:12Time dependency
- 44:49Imperative vs. Reactive
- 55:53Cancellation effects
related talks
48mGetting Reactive with Relational Databases and R2DBC
56mGetting Reactive with Relational Databases & R2DBC
01mGetting Reactive with Relational Databases and R2DBC
26mBuilding Reactive Application with R2DBC.
47mReactive Spring
49mSpring Data R2DBC. Explaining It One Last Time
51mUnder the Hood of Reactive Data Access
42mEffective transaction management with Spring
