On Wed, Nov 23, 2022 at 11:47 AM Tom Lane <t...@sss.pgh.pa.us> wrote:
> Bruce Momjian <br...@momjian.us> writes: > > Does this come up enough to document it? I assume the error message the > > user receives is clear. > > Looks like you get > > if (nParams < 0 || nParams > PQ_QUERY_PARAM_MAX_LIMIT) > { > libpq_append_conn_error(conn, "number of parameters must be > between 0 and %d", > PQ_QUERY_PARAM_MAX_LIMIT); > return 0; > } > > which seems clear enough. > > I think the concern here is that somebody who's not aware that a limit > exists might write an application that thinks it can send lots of > parameters, and then have it fall over in production. Now, I've got > doubts that an entry in the limits.sgml table will do much to prevent > that scenario. But perhaps offering the advice to use an array parameter > will be worthwhile even after-the-fact. > It comes up enough in places I troll that having a link to drop into a reply would be nice. I do believe that people who want to use a large parameter list likely have that question in the back of their mind, and looking at a page called "System Limits" is at least plausibly something they would do. Since they are really caring about parse-bind-execute, and they aren't likely to dig into libpq, this seems like the best spot (as opposed to, say PREPARE) David J.