Jeff Davis <jdavis-pgsql@xxxxxxxxxxx> writes: > Developers: am I mistaken about libpq copying the entire query before > sending it to the backend? Is there a reason that libpq wouldn't just > send it along to the backend? That's a feature, not a bug. libpq marshals whole messages before sending them so that it can be sure it doesn't have a problem with a half-sent message. The only way out of such a problem would be to drop the connection, because there's no way to regain message boundary sync with the backend. If your SQL queries are so long as to pose a memory threat by themselves, you might want to rethink your approach anyway. I'd expect such things to hit bottlenecks all over the place. In particular the backend is quite certain to make multiple copies of any long literal constant during parsing/planning. regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 9: the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match