Github user paul-rogers commented on a diff in the pull request:

    https://github.com/apache/drill/pull/868#discussion_r129929953
  
    --- Diff: 
exec/java-exec/src/main/java/org/apache/drill/exec/server/options/OptionValue.java
 ---
    @@ -88,16 +101,17 @@ private OptionValue(@JsonProperty("kind") Kind kind,
                           @JsonProperty("num_val") Long num_val,
                           @JsonProperty("string_val") String string_val,
                           @JsonProperty("bool_val") Boolean bool_val,
    -                      @JsonProperty("float_val") Double float_val) {
    +                      @JsonProperty("float_val") Double float_val,
    +                      @JsonProperty("scope") OptionScope scope) {
    --- End diff --
    
    The JSON version of this class is part of the drillbit-to-drillbit API. 
Changing the definition means that Drillbits of one version can't interoperate 
with Drillbits of another version. That is fine, we've never supported multiple 
versions in a single cluster. But, there is interest in rolling upgrades which 
would require such support. That is a separate task; just wanted to note the 
compatibility issue here.
    
    An alternative is to not serialize the scope. Serialization is used only to 
send option values to fragments. But, at the fragment level, the code does not 
care where the value was set. So, maybe keep the scope in this class, but don't 
serialize it.


---
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 infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to