Re: Add ParameterDescription message to libpq frontend long message types

Heikki Linnakangas <hlinnaka@iki.fi>

From: Heikki Linnakangas <hlinnaka@iki.fi>
To: Ning Sun <classicning@gmail.com>, pgsql-hackers@postgresql.org
Date: 2026-06-15T09:01:36Z
Lists: pgsql-hackers
On 01/04/2026 09:32, Ning Sun wrote:
> I'm maintaining a Rust library pgwire to implement postgres wire 
> protocol in rust. While doing a corner case test, I noticed the 
> inconsistency for ParameterDescription between backend and frontend.
> 
> The backend allows up to 65535 parameters in a prepared statement. But 
> when running Describe on the statement, there is a size limit of 30000 
> bytes for ParameterDescription on the frontend. This means we can only 
> describe statements with at most ~7500 parameters. For statements exceed 
> the limit, it ends up with error about the message size.
> 
> This patch simply adds ParameterDescription to VALID_LONG_MESSAGE_TYPE 
> whitelist to remove the cap.

Committed and backpatched to all supported versions, thanks!

- Heikki




Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Fix PQdescribePrepared with more than 7498 params