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

Vihang Karajgaonkar edited comment on HIVE-22017 at 5/21/20, 8:53 PM:
----------------------------------------------------------------------

Thanks [~kishendas] for the patch. Looks like the patch has some conflicts. May 
be try rebasing and uploading again? Most of the changes are due to the 
modifications in the auto-generated code which look good to me. Some of the 
comments I had were:

1. Can we add detailed ducumentation of ValidWriteIdList#commit method. 
Specifically, why would we need to mark a writeId as committed given its a 
client-side representation of valid writeIds.
2. The general naming conventions for other request-response APIs is that the 
return type is called Response instead of Result. Also the request fields are 
follow get*Request. It would good to not introduce a different naming 
convention. Eg. 

{{FieldsResult get_fields_req(1: FieldsRequest req)}} would become 
{{GetFieldsResponse get_fields(1: GetFieldsRequest req)}}
3. Can we add tests for the new APIs which are introduced? See 
TestHiveMetastore.java for examples.


was (Author: vihangk1):
Thanks [~kishendas] for the patch. Looks like the patch has some conflicts. May 
be try rebasing and uploading again? Most of the changes are due to the 
modifications in the auto-generated code which look good to me. Some of the 
comments I had were:

1. Can we add detailed ducumentation of ValidWriteIdList#commit method. 
Specifically, why would we need to mark a writeId as committed given its a 
client-side representation of valid writeIds.
2. The general naming conventions for other request-response APIs is that the 
return type is called Response instead of Result. Also the request fields are 
follow get*Request. It would good to not introduce a different naming 
convention. Eg. 

{{FieldsResult get_fields_req(1: FieldsRequest req)}} would become 
{{GetFieldsResponse get_fields(1: GetFieldsRequest req)}}

> Keep HMS interfaces backward compatible with changes for HIVE-21637
> -------------------------------------------------------------------
>
>                 Key: HIVE-22017
>                 URL: https://issues.apache.org/jira/browse/HIVE-22017
>             Project: Hive
>          Issue Type: Sub-task
>    Affects Versions: 2.3.7
>            Reporter: Daniel Dai
>            Assignee: Kishen Das
>            Priority: Major
>         Attachments: HIVE-216371.1.patch
>
>
> As part of HIVE-21637 we would have to introduce ValidWriteIdList in several 
> methods. Also, in the long term, we should deprecate and remove all the 
> methods that take direct arguments, as the service definition keeps changing 
> whenever we add/remove arguments, making it hard to maintain backward 
> compatibility. So, instead of adding writeId  in bunch of get_xxx calls that 
> take direct arguments, we will create new set of methods that take Request 
> object and return Response object. We shall mark those deprecated and remove 
> in future version.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to