Bruce,
> How about a simpler approach that throws an error or warning for
> cartesian products? That seems fool-proof.
Well, throwing a warning is pretty useless for an unattended application.
Also, it's perfectly possible to write queries which will never complete
without a cartesian join.
Basically, *unless* someone has a plan to integrate the greenplum resource
management stuff sometime soon, I think we should take Hans' idea (pending
patch quality, of course). There's an argument to be made that even if we
took the greenplum resource controller, statement_cost_limit would be much
simpler and worth having for the small-effort simple-application users.
FYI, the concept behind the Greenplum RM is similar, except that it
maintains a total "pool" of query costs on a per-role basis.
--
--Josh
Josh Berkus
PostgreSQL
San Francisco