Hi Surya, Thanks for the comments!
> A couple of points on the patch itself: > 1. The bug is racy but the injection_points framework > (src/test/modules/injection_points) can make it deterministic. > We can put an INJECTION_POINT() inside the heap_getnext() loop in > get_all_vacuum_rels() and adding an isolation spec that parks > VACUUM there, runs DROP TABLE in another session, then resumes VACUUM and > asserts it completes with a WARNING. > > 2. Minor comment vacuum_open_relation() already emits an identically-worded > "relation no longer exists" message with errcode(ERRCODE_UNDEFINED_TABLE). > Worth adding the same errcode to the two new ereports so the SQLSTATE stays > consistent for the same logical event. Fixed. Please see the v2 patches. -- Regards, ChangAo Chen
v2-0001-Handle-concurrent-drop-when-doing-whole-database-.patch
Description: Binary data
v2-0002-Add-test-case-for-vacuum-with-a-concurrent-drop.patch
Description: Binary data
