Hi, I cannot reproduce some scenario I found in my PostgreSQL logs. I have two connections/processes: Process 24755 is standard pg_backup connection with: … BEGIN; … LOCK TABLE gm.tableabc; … COPY FROM gm.tableabc Process 5969 is normal connection where I have: LOG: proces 5969 still waiting for AccessExclusiveLock on relations 562888531 of database 16429 after 1000.066 ms DETAILT: Process holding the lock: 24755. Wait queue: 5969 Query that is waiting (from proces 5969) is: CREATE TEMP TABLE IF NOT EXISTS tableabc ( Id BIGINT DEFAULT gm.top() ) INHERITS (gm.tableabc); I cannot reproduce what pg_dump is doing that causes waiting on proces 5969 (which lock is acquired and why). When pg_dump ends lock is released and proces 5969 continues. I know that doing in two parallel connections: BEGIN; CREATE TEMP TABLE IF NOT EXISTS tableabc ( Id BIGINT DEFAULT gm.top() ) INHERITS (gm.tableabc); causes waiting state on second connection until the first finished, but pg_dump connection is read only… Could you suggest me which part of pg_dump (which query) might cause that behaviour. Artur Zając |