Thread: NegotiateProtocolVersion description

NegotiateProtocolVersion description

From
Tatsuo Ishii
Date:
In the docs (54.7. Message Formats) NegotiateProtocolVersion message's
third field is described as below:

"Newest minor protocol version supported by the server for the major
protocol version requested by the client. "

From the description initially I thought the field value is minor
protocol version (e.g. 0, 2). However I realized that it's actually
protocol major version plus protocol minor version, like
StartupMessage. Probably my misunderstanding is due to my limited
English ability, but I just want to make sure that the current
description definitely matches what the field actually represents.

Best regards,
--
Tatsuo Ishii
SRA OSS K.K.
English: http://www.sraoss.co.jp/index_en/
Japanese:http://www.sraoss.co.jp



Re: NegotiateProtocolVersion description

From
"David G. Johnston"
Date:
On Saturday, July 5, 2025, Tatsuo Ishii <ishii@postgresql.org> wrote:
In the docs (54.7. Message Formats) NegotiateProtocolVersion message's
third field is described as below:

"Newest minor protocol version supported by the server for the major
protocol version requested by the client. "

From the description initially I thought the field value is minor
protocol version (e.g. 0, 2). However I realized that it's actually
protocol major version plus protocol minor version, like
StartupMessage. Probably my misunderstanding is due to my limited
English ability, but I just want to make sure that the current
description definitely matches what the field actually represents.

Add an example?  I like the wording as-is, though I can see your point.  I wouldn’t expect the returned value to be a fragment of a version in this context so minor just emphasizes that the client is applying a filter on the major version it supports.  I’d be ok with removing “minor” altogether.

David J.

Re: NegotiateProtocolVersion description

From
Fujii Masao
Date:

On 2025/07/05 19:30, Tatsuo Ishii wrote:
> In the docs (54.7. Message Formats) NegotiateProtocolVersion message's
> third field is described as below:
> 
> "Newest minor protocol version supported by the server for the major
> protocol version requested by the client. "
> 
>  From the description initially I thought the field value is minor
> protocol version (e.g. 0, 2). However I realized that it's actually
> protocol major version plus protocol minor version, like
> StartupMessage. Probably my misunderstanding is due to my limited
> English ability, but I just want to make sure that the current
> description definitely matches what the field actually represents.

A similar issue was discussed, and a patch was proposed in [1].
That thread might be worth reading.

Regards,

[1] https://postgr.es/m/CADK3HH+KkTFkv3zhJ9Koqmkyj=n2XG=CDp-MxAhMOPoezaQwoQ@mail.gmail.com


-- 
Fujii Masao
NTT DATA Japan Corporation