Github user jacques-n commented on a diff in the pull request:
https://github.com/apache/drill/pull/263#discussion_r45370924
--- 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 --
We actually started with only a compound result/warning (and that is also
included in this patch). One of the things we want to give is the user should
have an ability to prematurely terminate a query if they don't like the warning
that we are returning. (For example: we had to create a null field since it
didn't exist.) To do that, we may have an early warning that we want to return
out of band. For backwards compatibility, we can quell sending these back to
the user if they are on an older rpc version.
One question here: we should make the server decide whether the rpc version
number is okay (if we don't already). That way we can upgrade server and manage
backwards compatibility. If the client is currently checking the RPC version
and also terminating if it doesn't like it, we're screwed for backwards
compatbility. (My thought is that we should update version number whenever the
protocol changes but we need to relax the compatibility check. We can simply
decide what is cross-compatible in the code layer. (e.g. v3 works with v2
client but don't send them warnings.)
---
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 [email protected] or file a JIRA ticket
with INFRA.
---