drill-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From parthchandra <...@git.apache.org>
Subject [GitHub] drill pull request: DRILL-4015: Update DrillClient and JDBC driver...
Date Thu, 19 Nov 2015 19:14:02 GMT
Github user parthchandra commented on a diff in the pull request:

    https://github.com/apache/drill/pull/263#discussion_r45385946
  
    --- Diff: protocol/src/main/protobuf/User.proto ---
    @@ -27,6 +27,7 @@ enum RpcType {
       RESP_FUNCTION_LIST = 9;
     
       QUERY_RESULT = 10; // drillbit is reporting a query status change, most likely a terminal
message, to the user
    +  QUERY_WARNING = 12; // drillbit is sending a query warning to the user
    --- End diff --
    
    In general, I like the idea of the server maintaining backward compatibility for the RPC
protocol especially across minor releases. Any changes to the protocol that cannot be made
backward compatible should have to wait for a major release.
    The C++ client does check for RPC version match but at the moment, the server itself breaks
the connection if the RPC version does not match and so we never even get to that point. It
is possible for the server to manage this entirely and return the RPC version that the client
is asking for, iff the server can maintain backward compatibility. 
    In this case, the C++client also fails the query if it gets an RPC message it does not
recognize. Once again, as you suggest, the server can maintain the client's RPC version in
the query context and not send back the warning message if the client is at an older version.
    Actually, I'm not sure I've ever seen a need for early termination of queries based on
warnings, but it could be useful. Not sure how well any of the JDBC/ODBC tools handle this.
But I can see some usefulness there.  


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

Mime
View raw message