From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
Cc: | Matteo Beccati <php(at)beccati(dot)com>, Martijn van Oosterhout <kleptog(at)svana(dot)org>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: ERROR: invalid memory alloc request size <a_big_number_here> |
Date: | 2005-10-28 15:17:58 |
Message-ID: | 1905.1130512678@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> writes:
> I think I understand your approach, but I wonder why Matteo didn't find
> an improvement with your patch. Maybe there's a bug on it?
Yeah, looking at it this morning, I got the retry condition wrong.
It might be fixable but I'm less enthused about it than I was last
night. Your idea of handling the wraparound ambiguity by ignoring
InvalidTransactionId isn't bad --- I'll take a look at that.
> Were you able to create a test case? I tried several things, including
> stopping a backend in the middle of creating a MultiXactId, but no luck
> yet.
I've had some success using Tatsuo's new scriptable pgbench:
create table t1(f1 int);
insert into t1 select * from generate_series(1,1000);
create file tscript containing
\setrandom n 1 1000
select * from t1 limit :n for share;
and do, say,
pgbench -c 10 -t 10000 -n -f tscript regression
Using CVS tip, this generates failures within a few seconds for me.
If it doesn't for you, try altering the number of processes (-c) and
the setrandom bounds.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Simon Riggs | 2005-10-28 16:05:25 | Re: [PATCHES] TODO Item - Add system view to show free space map |
Previous Message | Alvaro Herrera | 2005-10-28 14:49:13 | Re: ERROR: invalid memory alloc request size <a_big_number_here> |