Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w7p7q-005jFm-0E for pgsql-hackers@arkaria.postgresql.org; Wed, 01 Apr 2026 06:32:26 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w7p7o-00FAWw-0w for pgsql-hackers@arkaria.postgresql.org; Wed, 01 Apr 2026 06:32:24 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w7p7n-00FAWn-3D for pgsql-hackers@lists.postgresql.org; Wed, 01 Apr 2026 06:32:24 +0000 Received: from mail-dy1-x132b.google.com ([2607:f8b0:4864:20::132b]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w7p7m-000000025uu-0xVK for pgsql-hackers@postgresql.org; Wed, 01 Apr 2026 06:32:23 +0000 Received: by mail-dy1-x132b.google.com with SMTP id 5a478bee46e88-2c15849aa2cso6910749eec.0 for ; Tue, 31 Mar 2026 23:32:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775025141; x=1775629941; darn=postgresql.org; h=autocrypt:subject:from:to:content-language:user-agent:mime-version :date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=Sx1dFi+sJuwdyuxmc+xzp7OJ+50Hkq8WSO2fe2BBb4U=; b=fb7moLXXUB1iymq4FTRzfmcN5C+GTsEL+iNGqRsmsqloIIMj2a8zZWvVIndUjxIBQ9 wGxg21F7VjjMv2Ns1gNN5AAChmH468Wdu7SW4LRCLw9qGw2mF0+3+p7SeQv7xiFaHXuS 5wM/YZfvTjEhwbRHT6TOAIceJtBcKZpfh0bl3Pumx2kmZMuKZOF+VN8AYD9GmZyYHPKA WfwtE9vfJSQ9cplwOkMv1zLVXHp5zC1PR8x111eP2sv7rlhUHBjeYV5SucX4cVWCMPTZ I5pvfE69wWcOtl9LghB6fhk0T4bEuyQcJWLjsvELll4JhFGcMjakwQrc6Mncfcup3Dz2 C2UQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775025141; x=1775629941; h=autocrypt:subject:from:to:content-language:user-agent:mime-version :date:message-id:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Sx1dFi+sJuwdyuxmc+xzp7OJ+50Hkq8WSO2fe2BBb4U=; b=E7DLjNTswzkFYS1e55nSj1qU7mghuUWcTql8OLsnoKqpVD1ImKeikDCDe9veLdp/7U RxzcCQKqufjwl41YvV+/ECz/gIthcTeCgNRpClsJ/mQw2VnoHlUt31BZI1oTZZo8SHkj w6D7yx27R+2bFWeQ11c6ECkBQUvwECk7RcHvlppIn/KI+PC1R808qrO15ReHMsIq/1kx LNJTNsEgrkW5M6SjS7FYLLR7wzSgBHw829xk3Md7WcW9/bpInEn5RNiJgghUF3s4NlIR 1lTzCcATczKTGmhszjmcAFSlhepwZ+7srFa1+td7Vx0pZWrHXCPjBC7N1aTUpVEysV7O e8Tg== X-Gm-Message-State: AOJu0Yxo3qyZFghpXR61BTaJ9FrNrpReabgT/UtzrtM5NS5We3q7PpJi wek2wTwDTTkH+ngfxtbn27j66QWROEd9g3GM6k/Jo6cq61Mgux3yNmRHEH5J5g== X-Gm-Gg: ATEYQzzFq9sI1n5lLxM1qexgKSkA6bbQo8H1kPP5qto/2qc7Kbcz8R2CutTbfu1YxOV J0AIdbtHpZRLFfsnQnSrSOUabekO5vXYsrfjH7KeSJlEwkhGj6IgbTXax/s2wJR0hQbl0X0uDtT Hq8kudOwZ+uwXBnd+D6wU+xxxLumR3jVF+I0HkI/LEm4T9n3YoDLZiemfLBRT6+7iQyofFZFtOS eIIJ4r4v6ZZgNeBDNP8kzmWlVvQdvzlLNPmakdgP64/l2l8s9WAGq54SHRgT3urI/7j2rn7IG/T sUOtIvqwcqFgyeCHPbNdd0tHqeGOKkL+oRdwBbSSnJtYjZ0t2YUpqxn4sCvRuvaydL7GLRT+i+F 0KHx0j8Ym/q55Yh064sIpwWP8wZVobSq+NRulEQvg5xnEMtmXEMjpd9n01jlT3r6ILfC/IgV8Ju Upz5X7dWry1xplynl4Wlv0QqOU X-Received: by 2002:a05:7300:a193:b0:2c1:6eda:476a with SMTP id 5a478bee46e88-2c932aaa150mr1191133eec.26.1775025140682; Tue, 31 Mar 2026 23:32:20 -0700 (PDT) Received: from [127.0.0.1] ([23.185.208.107]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2c3c6e9c088sm11689974eec.21.2026.03.31.23.32.19 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 31 Mar 2026 23:32:20 -0700 (PDT) Content-Type: multipart/mixed; boundary="------------lYQG2MVzuYSnNnEJdfLMkGJ4" Message-ID: Date: Wed, 1 Apr 2026 14:32:17 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US To: pgsql-hackers@postgresql.org From: Ning Sun Subject: Add ParameterDescription message to libpq frontend long message types Autocrypt: addr=classicning@gmail.com; keydata= xsBNBFLot3sBCAC9j9CSDztY1mrFV4KkJjNp1HEuLpZnl/EDJKc+omEixTOWuE81R+YOBCV2 e4f3w4ZZHxkJ5n57by1GUPDyMG4bBC3I27jeiGKz88D/6HmTRww2Z/amUJYB/RO8vOMzbO8+ m4VnzrHwZe5qqFaw3AId+tF6+cehh8/Um61IlRsN0FGsyAJBox5FnnQAuGfRnUFypRVsrF3c iH5aweJVasl61nPxBAVw5WyPzvDqhnNhIT71nFr/94q7R8kjX/BrQ92cXPpLdzUO6AnNH3eD dGU7Jj/A63HCthVamZ6u7FgqcZLl1wZfdi+kJnlDnYTYVP1xpIXM2W5xkZWQcVU9/WlPABEB AAHNLk5pbmcgU3VuIChHb29nbGUgbWFpbCkgPGNsYXNzaWNuaW5nQGdtYWlsLmNvbT7CwI4E EwEIADgCGwMFCwkIBwIGFQgJCgsCBBYCAwECHgECF4AWIQTtkdI0yulzZ5rUbqYuJ+IPxN7q PgUCZwVVIwAKCRAuJ+IPxN7qPvjIB/9ra9tReBTZUxYBGAv9k0ZEHpL9fhqwDLl1k+zGXwei h2Ty8UPAKKJ6QCGid5GTG8k4Em+zctf63whCKF350/a8VLzmEW/WFTP2lzmH7aRsSeguOYGn 0azgE8y6RFwjRXAz4QLPR9uVOPhmQkFU0Qjfu+w3pJxmkmMqSmMcu6C44cICibSj3bt2DpWh e3r1yQUInJgCeM+IRdEICMjyGiY5O2rHr/IjCygf8Ya79kqSsfd6bu+IcKT230k8A+mbA7Pp OwwxAPdETIrHgW8yIZxFkz5JC0P4O4CdKvQNNOrBbFPuZyM8cSmIM4AQizwrGBQPG6uYnGXO 8TkRtAcXPQZyzsBNBFepeMsBCADRNmte4eN4W/r72nzR4SVHEMJPBAaT1+DyJZ8Vk3f+g1l1 PTlsESLLg2pJD0HvsdAith/dedhlf5+wFujl2CXvmF16gD1MYEcuDqQnjRwQb67qn3f3FIyZ Wheoa30cAN3G02eFLZoRlGZ08rHOhbt+wielOvrFSUA5jZMNpIQF9VlOYg46aE1lOHbsY42u AbOJq3FxTvtxWyxHA/PIrHu+eqzL4fS+bgYm8o5SFK/DQNhhfK3bw0f1TANKLHD0W65NI3BS P7FKQC4QnStADh2d+qupEDlRQpC5+Wi+OaSujHKLMsz6vci8nz6/6Ki7n3qiOLjsXoOBGeVg USX+iTL3ABEBAAHCwHYEGAEIAAkFAlepeMsCGwwAIQkQLifiD8Te6j4WIQTtkdI0yulzZ5rU bqYuJ+IPxN7qPgwGB/40xnv/NycMwd/D8PSG5buH3A0NuKlL5P6ATApTUgu38UOfCzv5yS0U dYRMWyOUCRJKKdwFcr6RI4XXQUpos/pn/sbE6KAL2Dw+wiYKs0jJhNzrgMQpeYDzFSi7ZJRt uHgzb+UgBWGt7a3w1vC1NkPsFoFt1KlY8RNTsMINubVNne3NG9hM+q0g5YqCBqcGKk3KTpCB Xc+SQOYnKQ+i2OU6rJZXnQq6CTpfcjWQyhTrv7kZNS3dcGIzR/EzJrLo4JvZ19HBSKs5gdek iFbadQuPEaOkUIQyXqFVFK3320tmGmhTHRroWfq6DQXqQlgd+6smqjTnlwpup8aMgWVx6eoe List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------lYQG2MVzuYSnNnEJdfLMkGJ4 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, 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. --------------lYQG2MVzuYSnNnEJdfLMkGJ4 Content-Type: text/x-patch; charset=UTF-8; name="0001-add-ParameterDescription-to-long-message-types.patch" Content-Disposition: attachment; filename*0="0001-add-ParameterDescription-to-long-message-types.patch" Content-Transfer-Encoding: base64 RnJvbSA2MDM2NTY0YmU4MTlkYjBiZWIzZWZjMWFkNTJjOTgxOTIyZDUyNTI5IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOaW5nIFN1biA8c3VubmluZ0BncmVwdGltZS5jb20+ CkRhdGU6IFdlZCwgMSBBcHIgMjAyNiAxMTo1MzozOCArMDgwMApTdWJqZWN0OiBbUEFUQ0hd IGFkZCBQYXJhbWV0ZXJEZXNjcmlwdGlvbiB0byBsb25nIG1lc3NhZ2UgdHlwZXMKCi0tLQog c3JjL2ludGVyZmFjZXMvbGlicHEvZmUtcHJvdG9jb2wzLmMgfCAzICsrLQogMSBmaWxlIGNo YW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3Ny Yy9pbnRlcmZhY2VzL2xpYnBxL2ZlLXByb3RvY29sMy5jIGIvc3JjL2ludGVyZmFjZXMvbGli cHEvZmUtcHJvdG9jb2wzLmMKaW5kZXggOGMxZmRhNWNhZjAuLjdmZDQ5Y2IxNTFlIDEwMDY0 NAotLS0gYS9zcmMvaW50ZXJmYWNlcy9saWJwcS9mZS1wcm90b2NvbDMuYworKysgYi9zcmMv aW50ZXJmYWNlcy9saWJwcS9mZS1wcm90b2NvbDMuYwpAQCAtNDIsNyArNDIsOCBAQAogCSAo aWQpID09IFBxTXNnX0Z1bmN0aW9uQ2FsbFJlc3BvbnNlIHx8IFwKIAkgKGlkKSA9PSBQcU1z Z19Ob3RpY2VSZXNwb25zZSB8fCBcCiAJIChpZCkgPT0gUHFNc2dfTm90aWZpY2F0aW9uUmVz cG9uc2UgfHwgXAotCSAoaWQpID09IFBxTXNnX1Jvd0Rlc2NyaXB0aW9uKQorCSAoaWQpID09 IFBxTXNnX1Jvd0Rlc2NyaXB0aW9uIHx8IFwKKwkgKGlkKSA9PSBQcU1zZ19QYXJhbWV0ZXJE ZXNjcmlwdGlvbikKIAogCiBzdGF0aWMgdm9pZCBoYW5kbGVGYXRhbEVycm9yKFBHY29ubiAq Y29ubik7Ci0tIAoyLjUzLjAKCg== --------------lYQG2MVzuYSnNnEJdfLMkGJ4--