From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Andres Freund <andres(at)2ndquadrant(dot)com> |
Cc: | terje(at)elde(dot)net, pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: BUG #8410: out of binary heap slots |
Date: | 2013-08-30 22:55:53 |
Message-ID: | 22149.1377903353@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Andres Freund <andres(at)2ndquadrant(dot)com> writes:
> On 2013-08-30 23:05:25 +0200, Andres Freund wrote:
>> ExecReScanMergeAppend resets ms_initialized, but doesn't clear the
>> binaryheap. Thus no new elements fit.
> Ok, patch for that attached.
I think the comments need a bit of copy-editing, but looks good otherwise.
Will fix and commit.
> Should we add
> SELECT (SELECT g.i FROM ((SELECT random()::int ORDER BY 1 OFFSET 0) UNION ALL (SELECT random()::int ORDER BY 1 OFFSET 0)) f(i) ORDER BY f.i LIMIT 1) FROM generate_series(1, 10) g(i);
> as a regression test? I slightly on the "no" side...
Not sure. It's pretty disturbing that this wasn't caught earlier;
it seems to me that means there's no regression coverage that hits
ExecReScanMergeAppend. However, I don't much like this specific test case
because it seems like hitting the bug could depend on what series of
random values you get.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Andres Freund | 2013-08-30 23:12:31 | Re: BUG #8410: out of binary heap slots |
Previous Message | Terje Elde | 2013-08-30 22:44:00 | Re: BUG #8410: out of binary heap slots |