Process executing COPY opens and reads every table on the system

From: "Jeffrey W(dot) Baker" <jwbaker(at)acm(dot)org>
To: pgperf <pgsql-performance(at)postgresql(dot)org>
Subject: Process executing COPY opens and reads every table on the system
Date: 2005-12-29 21:21:57
Message-ID: 1135891317.1998.5.camel@toonses.gghcwest.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

I have an instance of PG 7.4 where I would really like to execute some
schema changes, but every schema change is blocked waiting for a process
doing a COPY. That query is:

COPY drill.trades (manager, sec_id, ticker, bridge_tkr, date, "type",
short, quantity, price, prin, net_money, factor) TO stdout;

So it's only involved with a single table in a single schema.
Unfortunately, what this process is doing is opening and reading every
table in the database:

# strace -e open,close -p 29859
Process 29859 attached - interrupt to quit
open("/var/lib/postgres/data/base/7932340/2442094542", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.16", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.1", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.5", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.5", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.6", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.9", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.16", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.16", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.16", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2414561511", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2426495316", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2426495316", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2414561511", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2426495316", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2426495316", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2414561511", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.16", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205386", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205433", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.16", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2426495316", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2414561511", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.16", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.16", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205441", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.16", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2414561511", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2426495316", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.10", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.16", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.16", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.9", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/2298808676/2298808939.10", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.15", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2414561511", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2414561511", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205446", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205454", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429226532", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2442094542", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.9", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.9", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.9", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.4", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.8", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.9", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.6", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2414561511", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.6", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205386", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205441", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.6", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.6", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.6", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205446", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.6", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205454", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429226532", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.5", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2442094542", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205386", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205433", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.5", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205441", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.5", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2414561511", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2426495316", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2414561511", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2414561511", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2414559657", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2414561511", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2426495316", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2426495316", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205446", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205454", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429226532", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.5", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2414561511", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2442094542", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205386", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.5", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.5", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.7", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205441", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429205446", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.5", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.9", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.1", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.6", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.9", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.9", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.6", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.9", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.10", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.9", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.2", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.5", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023238811.18", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2429226532", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/2298808676/2361517065", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.5", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2442094542", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.9", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.6", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.10", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.1", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.10", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.3", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.5", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.2", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/358185104.5", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.6", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/2298808676/2361517065", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.6", O_RDWR) = 49
close(49) = 0
open("/var/lib/postgres/data/base/7932340/2023517557.7", O_RDWR) = 49
close(49) = 0
Process 29859 detached

Seems like a somewhat unusual behavior. As you can see it's opening
some tables numerous times. Is there some way to avoid this?

-jwb

Browse pgsql-performance by date

  From Date Subject
Next Message Jeffrey W. Baker 2005-12-29 22:09:22 Invulnerable VACUUM process thrashing everything
Previous Message Teemu Torma 2005-12-29 17:05:45 Re: How import big amounts of data?