On Mon, Aug 29, 2005 at 11:30:46AM -0400, Tom Lane wrote: > "Sergey E. Koposov" <[EMAIL PROTECTED]> writes: > > Yes, the decreasing of max_prepared_transaction helped (after some > > testing, I've found that the max_prepared_transactions=3 > > max_connections=10 shared_buffers=20 was well enough to fit 1mb of > > shared memory) > > 20 buffers ... ugh. Obviously we are on the hairy edge of no longer > functioning at all in 1MB shared memory. I'm not sure there is a whole > lot we can do about this, but it's a tad irritating that clog, subtrans, > and multixact are eating the equivalent of about 16 buffers > (nonconfigurable) while the main buffer pool is so badly starved. > It'd be better to reduce their allocations.
8 buffers each, I think, no? That's 32 buffers total. Maybe we could make them allocate them automatically based on shared_buffers, with a ceiling of 8? For example Min(8, ceil(2*log(shared_buffers))) seems to behave nicely. That'd mean 3*4 = 12 buffers when shared_buffers is below 100; and 8*4 = 32 buffers when shared_buffers is above 10000. -- Alvaro Herrera (<alvherre[a]alvh.no-ip.org>) "La Primavera ha venido. Nadie sabe como ha sido" (A. Machado) ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match