Re: Add a property to automatically suspend portals as they produce given number of bytes
Vladimir Sitnikov <sitnikov.vladimir@gmail.com>
From: Vladimir Sitnikov <sitnikov.vladimir@gmail.com>
To: Kirill Reshke <reshkekirill@gmail.com>
Cc: Pgsql Hackers <pgsql-hackers@postgresql.org>
Date: 2025-01-17T12:22:18Z
Lists: pgsql-hackers
Kirill, cursor does not provide a way to limit the fetch size based on the memory consumption. Imagine a table like (id int8, value jsonb). If we use "fetch 1000", then it might require 1GiB on the client if every row contains 1MiB json. If the client plays defensively and goes for "fetch 10", it might take a lot of time if jsons are small. Neither cursor nor extended protocol solve the problem. Vladimir