aboutsummaryrefslogtreecommitdiff
path: root/src/interfaces/ecpg/ecpglib/execute.c
diff options
context:
space:
mode:
authorMichael Paquier <michael@paquier.xyz>2018-10-19 22:44:12 +0900
committerMichael Paquier <michael@paquier.xyz>2018-10-19 22:45:07 +0900
commitcc7f27eae888234d2fda9e0eaadbeb33a48cd274 (patch)
tree62cedbb17b1817a723196c8af351e52dadddeeec /src/interfaces/ecpg/ecpglib/execute.c
parent06292bb949e555f34edde7603237194a7daac942 (diff)
downloadpostgresql-cc7f27eae888234d2fda9e0eaadbeb33a48cd274.tar.gz
postgresql-cc7f27eae888234d2fda9e0eaadbeb33a48cd274.zip
Use whitelist to choose files scanned with pg_verify_checksums
The original implementation of pg_verify_checksums used a blacklist to decide which files should be skipped for scanning as they do not include data checksums, like pg_internal.init or pg_control. However, this missed two things: - Some files are created within builds of EXEC_BACKEND and these were not listed, causing failures on Windows. - Extensions may create custom files in data folders, causing the tool to equally fail. This commit switches to a whitelist-like method instead by checking if the files to scan are authorized relation files. This is close to a reverse-engineering of what is defined in relpath.c in charge of building the relation paths, and we could consider refactoring what this patch does so as all routines are in a single place. This is left for later. This is based on a suggestion from Andres Freund. TAP tests are updated so as multiple file patterns are tested. The bug has been spotted by various buildfarm members as a result of b34e84f which has introduced the TAP tests of pg_verify_checksums. Author: Michael Paquier Reviewed-by: Andrew Dunstan, Michael Banck Discussion: https://postgr.es/m/20181012005614.GC26424@paquier.xyz Backpatch-through: 11
Diffstat (limited to 'src/interfaces/ecpg/ecpglib/execute.c')
0 files changed, 0 insertions, 0 deletions