diff --git a/replay/buzz/README.md b/replay/buzz/README.md index e98f8699..421ee6c4 100644 --- a/replay/buzz/README.md +++ b/replay/buzz/README.md @@ -27,7 +27,10 @@ behaviors worth knowing when reading the results: - `CREATE INDEX IF NOT EXISTS` is refused by design — a name-only no-op cannot prove the existing index is valid or even the requested one. - Buzz's unnamed `ADD FOREIGN KEY` executes via the safer `NOT VALID` + `VALIDATE` - sequence, under the name the server would have chosen. + sequence: the `VALIDATE` step has to name the constraint, so pg-sprite states the + name PostgreSQL would choose — `__fkey`, truncated to the identifier + limit and numbered past a name already taken, as the server does. Here that is + `moderation_reports_community_id_action_id_fkey`. - Every `DROP COLUMN`, `DROP CONSTRAINT`, and `DROP NOT NULL` is refused by design (`destructive-change`): the replay never passes `--allow-destructive`, so it pins the refusal and advances the history through psql. diff --git a/replay/buzz/assessment.tsv b/replay/buzz/assessment.tsv index 5b8aa640..4e211e13 100644 --- a/replay/buzz/assessment.tsv +++ b/replay/buzz/assessment.tsv @@ -42,9 +42,9 @@ 0006 94-118 refuse:unsupported-statement:no-online-safety-problem:declarative-front-door 0006 120-121 execute 0006 122-124 execute -# Unnamed ADD FOREIGN KEY: the safer NOT VALID + VALIDATE sequence needs a -# constraint name to reference; the same constraint with CONSTRAINT executes. -0006 128-130 refuse:not-native-safe-rewrite-required:capability-boundary +# Unnamed ADD FOREIGN KEY: executes as NOT VALID + VALIDATE under the name +# PostgreSQL would choose (moderation_reports_community_id_action_id_fkey). +0006 128-130 execute 0007 12-12 psql 0007 14-22 refuse:unsupported-statement:no-online-safety-problem:declarative-front-door 0007 26-27 execute