Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dsHUg-0007Ba-4d for pgsql-bugs@arkaria.postgresql.org; Wed, 13 Sep 2017 23:54:58 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1dsHUf-0004o7-K0 for pgsql-bugs@arkaria.postgresql.org; Wed, 13 Sep 2017 23:54:57 +0000 Received: from makus.postgresql.org ([2001:4800:1501:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1dsHUe-0004nJ-MK for pgsql-bugs@postgresql.org; Wed, 13 Sep 2017 23:54:56 +0000 Received: from sss.pgh.pa.us ([66.207.139.130]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1dsHUY-0007hO-4U; Wed, 13 Sep 2017 23:54:55 +0000 Received: from sss1.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.pgh.pa.us (8.14.4/8.14.4) with ESMTP id v8DNsmMm001684; Wed, 13 Sep 2017 19:54:48 -0400 From: Tom Lane To: Thomas Munro cc: Michael Paquier , Andrew Gierth , PostgreSQL mailing lists , Kevin Grittner Subject: Re: BUG #14808: V10-beta4, backend abort In-reply-to: References: <20170909064853.25630.12825@wrigleys.postgresql.org> <3702.1504976930@sss.pgh.pa.us> <9324.1504983594@sss.pgh.pa.us> <25326.1505070173@sss.pgh.pa.us> <14016.1505135324@sss.pgh.pa.us> <8201.1505149431@sss.pgh.pa.us> <31365.1505342642@sss.pgh.pa.us> Comments: In-reply-to Thomas Munro message dated "Thu, 14 Sep 2017 11:40:59 +1200" MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <1682.1505346888.1@sss.pgh.pa.us> Date: Wed, 13 Sep 2017 19:54:48 -0400 Message-ID: <1683.1505346888@sss.pgh.pa.us> List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-bugs Precedence: bulk Sender: pgsql-bugs-owner@postgresql.org Thomas Munro writes: > Incidentally, understanding that made me wonder why we don't have a > binary chunk-oriented in-memory-up-to-some-size-then-spill-to-disk > spooling mechanism that could be used for the trigger queue itself > (which currently doesn't know how to spill to disk and therefore can > take your server out), including holding these tuple images directly > (instead of spilling just the tuples in synchronised order with the > in-memory trigger queue). The past discussions about spilling the trigger queue have generally concluded that by the time your event list was long enough to cause serious pain, you already had a query that was never gonna complete. That may be getting less true as time goes on, but I'm not sure --- seems like RAM capacity is growing faster than CPU speed. Anyway, that's why it never got done. Given the addition of transition tables, I suspect there will be even less motivation to fix it: the right thing to do with mass updates will be to use a TT with an after-statement trigger, and that fixes it by putting the bulk data into a spillable tuplestore. regards, tom lane -- Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-bugs