kgyrtkirk commented on code in PR #15743:
URL: https://github.com/apache/druid/pull/15743#discussion_r1479566253


##########
processing/src/main/java/org/apache/druid/math/expr/ConstantExpr.java:
##########
@@ -39,9 +40,12 @@
  * {@link Expr.ObjectBinding}. {@link ConstantExpr} are terminal nodes of an 
expression tree, and have no children
  * {@link Expr}.
  */
+@Immutable
 abstract class ConstantExpr<T> implements Expr
 {
   final ExpressionType outputType;
+
+  @SuppressWarnings("Immutable")

Review Comment:
   * the `@Immutable` enables a compile time check that the [class satisfies 
some immutable rules](https://errorprone.info/bugpattern/Immutable)
      * such a check could have warned me before doing the original PR
   * the suppression is added for this field as we don't know what it is...but 
since this class will handle it as a blackbox I think its okay to ignore it
   * I had to also add `SuppressWarnings("Immutable")` to 
`ColumnCapabiliiesImpl` because its kinda immutable; but fixing that turned 
into a massacre - I've asked @clintropolis  about the value of such a change 
and based on that conversion I opted to not touch a lot of files without much 
benefits
   
   should I remove these `@Immutable` related changes?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to