Re: Out of memory error when doing an update with IN clause

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Sean Shanny <shannyconsulting(at)earthlink(dot)net>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Out of memory error when doing an update with IN clause
Date: 2003-12-30 00:33:51
Message-ID: 19159.1072744431@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Sean Shanny <shannyconsulting(at)earthlink(dot)net> writes:
> I run this:

> explain update f_commerce_impressions set servlet_key = 60 where
> servlet_key in (68,69,70,71,87,90,94,91,98,105,106);
> ERROR: out of memory
> DETAIL: Failed on request of size 1024.

Well, I have to confess to total bafflement. AFAICS the overflowing
hash table must be the duplicate-tuple hash table that nodeIndexscan.c
sets up --- but that table shouldn't get any entries loaded into it
if you just do EXPLAIN with no ANALYZE. Furthermore, it should only
get loaded with entries for tuples that match the WHERE clause, and
you said earlier that there are no rows with these servlet_key values.
The code involved is all new in 7.4, so finding a bug in it wouldn't
surprise me much, but I can't see how this could be happening.

It would help if you could rebuild with --enable-debug (if that wasn't
on already) and get a stack trace from the errfinish() call. Or, is
there any chance I could get access to your machine and look at the
problem for myself?

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Grant Allen 2003-12-30 00:43:24 Any way to disable backslash as a string literal escape character?
Previous Message Dustin Sallings 2003-12-30 00:29:00 Re: [GENERAL] Is my MySQL Gaining ?