- Notifications
You must be signed in to change notification settings - Fork5
Commit6f922ef
committed
Improve efficiency of dblink by using libpq's new row processor API.
This patch provides a test case for libpq's row processor API.contrib/dblink can deal with very large result sets by dumping them intoa tuplestore (which can spill to disk) --- but until now, the intermediatestorage of the query result in a PGresult meant memory bloat for any largeresult. Now we use a row processor to convert the data to tuple form anddump it directly into the tuplestore.A limitation is that this only works for plain dblink() queries, notdblink_send_query() followed by dblink_get_result(). In the lattercase we don't know the desired tuple rowtype soon enough. While hacksolutions to that are possible, a different user-level API wouldprobably be a better answer.Kyotaro Horiguchi, reviewed by Marko Kreen and Tom Lane1 parent92785da commit6f922ef
2 files changed
+366
-75
lines changed0 commit comments
Comments
(0)