voonhous commented on code in PR #8380:
URL: https://github.com/apache/hudi/pull/8380#discussion_r1169679965


##########
hudi-common/src/main/java/org/apache/hudi/avro/HoodieAvroUtils.java:
##########
@@ -1040,6 +1035,32 @@ private static Object 
rewritePrimaryTypeWithDiffSchemaType(Object oldValue, Sche
     throw new AvroRuntimeException(String.format("cannot support rewrite value 
for schema type: %s since the old schema type is: %s", newSchema, oldSchema));
   }
 
+  /**
+   * When there is a lost in scale, rounding is required to be performed when 
performing casts.
+   * For types that have a fix scale, the results of the cast will need to be 
the same for COW and MOR.
+   * <p>
+   * NOTE: COW uses Spark's default rounding of HALF_UP (if Spark entry points 
are used).
+   * <p>
+   * Floating point types are not considered here as they are susceptible to 
floating point rounding errors.
+   * <p>
+   * Summary:
+   * <ul>
+   *   <li>double/string -> decimal: HALF_UP</li>
+   *   <li>float -> decimal: HALF_EVEN</li>
+   * </ul>

Review Comment:
   Done, I've standardized the RoundingMode here 
8bfaea84623b1774e26bd16e78f81d711ece3d43 



-- 
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]

Reply via email to