BUG #16703: pg-dump fails to process recursive view definition
PG Bug reporting form <noreply@postgresql.org>
From: PG Bug reporting form <noreply@postgresql.org>
To: pgsql-bugs@lists.postgresql.org
Cc: exclusion@gmail.com
Date: 2020-11-05T12:00:01Z
Lists: pgsql-bugs
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Revert "Accept relations of any kind in LOCK TABLE".
- f07811009ffd 12.5 landed
- ec516818a81a 10.15 landed
- 9e555180f23d 9.6.20 landed
- 549fd3d3bc24 11.10 landed
- 43c2e97ed45d 9.5.24 landed
- eeda7f633809 14.0 landed
- 4352c2394a54 13.1 landed
-
Revert "pg_dump: Lock all relations, not just plain tables".
- fa3840c8800f 13.1 landed
- f4fa4a82133f 12.5 landed
- dee1fe5e339a 10.15 landed
- 9e98ddd16e06 9.5.24 landed
- 802c460a27cc 11.10 landed
- 768ab4d676aa 9.6.20 landed
- d3adaabaf7d5 14.0 landed
-
Doc: undo mistaken adjustment to LOCK TABLE docs in back branches.
- 8b4121903c2d 9.5.24 landed
- 583fcf2f5759 9.6.20 landed
- 33862cb9c13a 10.15 landed
-
Don't throw an error for LOCK TABLE on a self-referential view.
- 7dc18c619dac 11.10 landed
- 5b7bfc39726f 14.0 landed
- 44b973b91029 13.1 landed
- 0bdf1ef3d53e 12.5 landed
The following bug has been logged on the website: Bug reference: 16703 Logged by: Alexander Lakhin Email address: exclusion@gmail.com PostgreSQL version: 13.0 Operating system: Ubuntu 20.04 Description: The following recursive views (borrowed from regress/sql/lock.sql, see "detecting infinite recursions in view definitions"): CREATE VIEW lock_view2(a) AS SELECT NULL::integer; CREATE VIEW lock_view3 AS SELECT * from lock_view2; CREATE OR REPLACE VIEW lock_view2 AS SELECT * from lock_view3; can be created successfully, but make a subsequent pg_dump fail: pg_dump: error: query failed: ERROR: infinite recursion detected in rules for relation "lock_view2" pg_dump: error: query was: LOCK TABLE public.lock_view2 IN ACCESS SHARE MODE The offending commit is 64fc3e03. Thanks to Andrew Bille for discovering this.