Github user arina-ielchiieva commented on a diff in the pull request:

    https://github.com/apache/drill/pull/928#discussion_r143331950
  
    --- Diff: 
exec/java-exec/src/main/java/org/apache/drill/exec/work/foreman/rm/DistributedQueryQueue.java
 ---
    @@ -165,12 +165,24 @@ public ConfigSet(SystemOptionManager optionManager) {
           minimumOperatorMemory = 
optionManager.getOption(ExecConstants.MIN_MEMORY_PER_BUFFERED_OP);
         }
     
    -    @Override
    -    public boolean equals(Object other) {
    -      if (other == null || ! (other instanceof ConfigSet)) {
    -        return false;
    -      }
    -      ConfigSet otherSet = (ConfigSet) other;
    +    /**
    +     * Determine if this config set is the same as another one. Detects
    +     * whether the configuration has changed between one sync point and
    +     * another.
    +     * <p>
    +     * Note that we cannot use <tt>equals()</tt> here as, according to
    +     * Drill practice, <tt>equals()</tt> is for use in collections and
    +     * must be accompanied by a <tt>hashCode()</tt> method. Since this
    +     * class will never be used in a collection, and does not need a
    +     * hash function, we cannot use <tt>equals()</tt>.
    +     *
    +     * @param otherSet another snapshot taken at another time
    +     * @return true if this configuration is the same as another
    +     * (no update between the two snapshots), false if the config has
    +     * changed between the snapshots
    +     */
    +
    +    public boolean isSameAs(ConfigSet otherSet) {
    --- End diff --
    
    This is definitely a compromise :) Thanks for making the changes. 


---

Reply via email to