postgres.git / summary / log / commit / refs

commit    e4183c667d86c365c3e93e2f687d416e375aeb8a
Author:   Heikki Linnakangas <heikki.linnakangas@iki.fi>
Date:     Mon Jun 15 08:28:45 2026 +0000
First released in: 14.24, 15.19, 16.15, 17.11, 18.6

    Fix PQdescribePrepared with more than 7498 params
    
    If a query has more than 7498 params, the ParameterDescription message
    exceeds the 30000 byte limit on messages that are not specifically
    marked as possibly being longer than that (VALID_LONG_MESSAGE_TYPE).
    To fix, add ParameterDescription to the list.
    
    Author: Ning Sun <classicning@gmail.com>
    Discussion: https://www.postgresql.org/message-id/dbfb4b65-0aa8-470a-8b87-b6496160b28a@gmail.com
    Backpatch-through: 14


src/interfaces/libpq/fe-protocol3.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/interfaces/libpq/fe-protocol3.c b/src/interfaces/libpq/fe-protocol3.c index db6fd71ad4d..bedd4b5585f 100644 --- a/src/interfaces/libpq/fe-protocol3.c +++ b/src/interfaces/libpq/fe-protocol3.c @@ -42,7 +42,8 @@ (id) == PqMsg_FunctionCallResponse || \ (id) == PqMsg_NoticeResponse || \ (id) == PqMsg_NotificationResponse || \ - (id) == PqMsg_RowDescription) + (id) == PqMsg_RowDescription || \ + (id) == PqMsg_ParameterDescription) static void handleSyncLoss(PGconn *conn, char id, int msgLength); [parent: 3928b7a520e3]