X-Original-To: pgsql-performance-postgresql.org@localhost.postgresql.org Received: from localhost (av.hub.org [200.46.204.144]) by postgresql.org (Postfix) with ESMTP id BF3E59DC97C for ; Thu, 29 Dec 2005 17:22:08 -0400 (AST) Received: from postgresql.org ([200.46.204.71]) by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024) with ESMTP id 03099-02 for ; Thu, 29 Dec 2005 17:22:04 -0400 (AST) Received: from svr4.postgresql.org (svr4.postgresql.org [66.98.251.159]) by postgresql.org (Postfix) with ESMTP id 8652F9DC809 for ; Thu, 29 Dec 2005 17:22:00 -0400 (AST) Received: from gghcwest.com (adsl-71-128-90-172.dsl.pltn13.pacbell.net [71.128.90.172]) by svr4.postgresql.org (Postfix) with ESMTP id 5CCF15AF02D for ; Thu, 29 Dec 2005 21:22:02 +0000 (GMT) Received: from toonses.gghcwest.com (toonses.gghcwest.com [192.168.168.115]) by gghcwest.com (8.12.10/8.12.9) with ESMTP id jBTLLumd021359 for ; Thu, 29 Dec 2005 13:21:57 -0800 Received: from jwb by toonses.gghcwest.com with local (Exim 4.52) id 1Es5Dh-0000Xc-TJ for pgsql-performance@postgresql.org; Thu, 29 Dec 2005 13:21:57 -0800 Subject: Process executing COPY opens and reads every table on the system From: "Jeffrey W. Baker" To: pgperf Content-Type: text/plain Content-Transfer-Encoding: 7bit Date: Thu, 29 Dec 2005 13:21:57 -0800 Message-Id: <1135891317.1998.5.camel@toonses.gghcwest.com> Mime-Version: 1.0 X-Mailer: Evolution 2.4.1 X-Virus-Scanned: by amavisd-new at hub.org X-Spam-Status: No, score=0 required=5 tests=[none] X-Spam-Score: 0 X-Spam-Level: X-Archive-Number: 200512/650 X-Sequence-Number: 16471 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