Hannu Krosing <[EMAIL PROTECTED]> writes: > Ãhel kenal päeval, T, 2006-02-28 kell 10:26, kirjutas Tom Lane: >> The current bgwriter is incapable of looking at catalog contents as >> such --- it operates only at the level of physical data blocks.
> Would'nt it still be possible to drop a table from below bgwriter ? The mechanism that handles that is that smgr.c calls DropRelFileNodeBuffers before physically unlinking the file. Hence, by the time the unlink happens, there is not any buffer that the bgwriter might be trying to write into it. Processes that might try to read in new pages must hold some kind of lock on the relation the page belongs to, hence they must be running a transaction. Otherwise there would be a race condition here. (The process executing the DROP TABLE must hold exclusive lock on the table, thereby guaranteeing that there is no one trying to read in new pages from it.) regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 2: Don't 'kill -9' the postmaster