db-migrations-expand-contract: add a dedicated reproduction for the DDL-collision exception
While writing the article, chapter 14's first failure mode (a concurrent statement seeing "Table CUSTOMERS not found" while DROP COLUMN runs) was described from the live load-generator run but had no dedicated, committed reproduction of its own - CustomerService's own retry would silently absorb it if triggered through the service layer. DdlCollisionExceptionTest reproduces it directly at the raw JDBC level, and the chapter and README now link to its captured transcript. Co-Authored-By: Claude Sonnet 5 <[email protected]> Claude-Session: https://claude.ai/code/session_019Fb7vW8vLyLKngBc4R3huA
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
==============================================================================
|
||||
Failure mode 1: a concurrent statement that collides with DROP COLUMN, and is told so
|
||||
==============================================================================
|
||||
captured: 2026-09-16T19:29:03.872467327Z
|
||||
|
||||
attempts needed to reproduce the race: 4 of 20
|
||||
successful reads while DROP COLUMN was in flight: 222
|
||||
reads that collided with the in-flight DROP COLUMN: 1
|
||||
example: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "CUSTOMERS" not found; SQL statement:
|
||||
SELECT COUNT(*) FROM customers [42102-240]
|
||||
Reference in New Issue
Block a user