Re: [HACKERS] New Driver and Unique Indexes

Vadim B. Mikheev <vadim@sable.krasnoyarsk.su>

From: "Vadim B. Mikheev" <vadim@sable.krasnoyarsk.su>
To: Byron Nikolaidis <byronn@insightdist.com>
Cc: "pgsql-interfaces@postgreSQL.org" <pgsql-interfaces@postgreSQL.org>, Sbragion Denis <infotecn@tin.it>, "pgsql-hackers@postgreSQL.org" <pgsql-hackers@postgreSQL.org>, Olaf Mittelstaedt <mstaedt@va-sigi.va.fh-ulm.de>, Hannu Krosing <hannu@trust.ee>
Date: 1998-04-28T01:57:31Z
Lists: pgsql-hackers
Byron Nikolaidis wrote:
> 
> SELECT balance_id,company_id, balance_date, is_audited,comment,
> balance_type, balance_filename  FROM balance  WHERE balance_id = 1 AND
> company_id=1 OR balance_id = 1 AND company_id=2 OR balance_id = 1 AND
> company_id=3 OR balance_id = 2 AND company_id=1 OR balance_id = 2 AND
> company_id=2 OR balance_id = 2 AND company_id=3 OR balance_id = 3 AND
> company_id=1 OR balance_id = 3 AND company_id=2 OR balance_id = 3 AND
> company_id=3 OR balance_id = 4 AND company_id=1
> 
> Any more than 2 keyparts, results in crashing the backend with the
> message
> "palloc failure:  memory exhausted".  Even at 2 keyparts, performance
> suffers greatly.

THis is known problem of canonificator in optimizer. This query will 
crash backend without any indices too.
We told about this in the 6.3-beta period.
No fix currently. I don't know when it will be at all.

Vadim