[ 
https://issues.apache.org/jira/browse/CALCITE-1353?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15888935#comment-15888935
 ] 

Josh Elser commented on CALCITE-1353:
-------------------------------------

bq. Can I have your input on this

bq. I believe the best way would be to introduce a new field under a new name, 
so that older clients won't be broken.

Sorry, folks. Swamped of late..

Yeah, I agree with Francis that we should add a new attribute to 
{{ExecuteRequest}} to properly fix this one. This requires some client-side and 
server-side changes.

Client side:

* Populate both the new and older attribute on ExecuteRequest (makes sure that 
this new client can work with the older server)

Server side:

* First check for the new attribute, if present, use that (support new clients 
to the new server)
* If the new attr is not present, check for the old attribute and use that 
value. (support old clients to the new server)
* If the neither attribute is present, then we error out (reject bad clients :P)

> first_frame_max_size in an ExecuteRequest should be an int32 in protobuf 
> definitions.
> -------------------------------------------------------------------------------------
>
>                 Key: CALCITE-1353
>                 URL: https://issues.apache.org/jira/browse/CALCITE-1353
>             Project: Calcite
>          Issue Type: Bug
>          Components: avatica
>    Affects Versions: avatica-1.8.0
>            Reporter: Francis Chuang
>            Assignee: Francis Chuang
>            Priority: Minor
>             Fix For: avatica-1.10.0
>
>
> In the protobuf definition for {{ExecuteRequest}}, the 
> {{first_frame_max_size}} parameter is typed as an {{uint64}}. See 
> https://github.com/apache/calcite/blob/master/avatica/core/src/main/protobuf/requests.proto#L130.
>  For consistency, it should be an {{int32}}.
> Similar parameters relating to the frame size are all typed as {{int32}}.
> For a {{PrepareAndExecuteRequest}}, {{first_frame_max_size}} is a{{int32}}: 
> https://github.com/apache/calcite/blob/master/avatica/core/src/main/protobuf/requests.proto#L78
> For a {{FetchRequest}}, {{frame_max_size}} is a {{int32}}: 
> https://github.com/apache/calcite/blob/master/avatica/core/src/main/protobuf/requests.proto#L96



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to