Find dangling membership roles in pg_dumpall
Andreas 'ads' Scherbaum <ads@pgug.de>
From: Andreas 'ads' Scherbaum <ads@pgug.de>
To: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2023-04-26T10:18:16Z
Lists: pgsql-hackers
Attachments
- pg_dumpall.patch (text/x-patch) patch
Hello, pg_dumpall.c has a function dumpRoleMembership() which dumps all membership roles. This function includes a piece of code which checks if the membership tree has an open end which can't be resolved. However that code is never used. The variable prev_remaining is initially set to 0, and then never changed. Which in turn never executes this code: if (remaining == prev_remaining) because the loop is only entered while "remaining > 0". The attached patch fixes this problem, and updates prev_remaining inside the loop. Co-Author: Artur Zakirov <zaartur@gmail.com> who reviewed the patch. Regards -- Andreas 'ads' Scherbaum German PostgreSQL User Group European PostgreSQL User Group - Board of Directors Volunteer Regional Contact, Germany - PostgreSQL Project
Commits
-
Fix stop condition for dumping GRANT commands
- 7b7fa8513033 16.0 landed