mirror of
https://github.com/postgres/postgres.git
synced 2026-04-28 09:38:27 -04:00
Previously, it was possible for DROP DATABASE, DROP TABLESPACE and ALTER
DATABASE SET TABLESPACE to fail because other backends still had file
handles open for dropped tables. Windows won't allow a directory
containing unlinked-but-still-open files to be unlinked. Tackle this
problem by forcing all backends to close all smgr fds. No change for
Unix systems, which don't suffer from the problem, but the new code path
can be tested by Unix-based developers by defining
USE_BARRIER_SMGRRELEASE explicitly.
It's possible that PROCSIGNAL_BARRIER_SMGRRELEASE will have more
bug-fixing applications soon (under discussion). Note that this is the
first user of the ProcSignalBarrier mechanism from commit
|
||
|---|---|---|
| .. | ||
| buffer | ||
| file | ||
| freespace | ||
| ipc | ||
| large_object | ||
| lmgr | ||
| page | ||
| smgr | ||
| sync | ||
| Makefile | ||