[ 
https://issues.apache.org/jira/browse/FLINK-25434?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Francesco Guardiani closed FLINK-25434.
---------------------------------------
    Resolution: Duplicate

Closed as it's duplicate of FLINK-24420 and FLINK-24847

> Throw an error when BigDecimal precision overflows.
> ---------------------------------------------------
>
>                 Key: FLINK-25434
>                 URL: https://issues.apache.org/jira/browse/FLINK-25434
>             Project: Flink
>          Issue Type: Bug
>          Components: Table SQL / Planner, Table SQL / Runtime
>    Affects Versions: 1.14.2
>            Reporter: Ada Wong
>            Priority: Major
>
>  
> Lost a lot of data but no error was thrown.
> As the following comment, If the precision overflows, null will be returned.
> {code:java}
> /**
>  If the precision overflows, null will be returned.
>  */
> public static @Nullable DecimalData fromBigDecimal(BigDecimal bd, int 
> precision, int scale) {
>     bd = bd.setScale(scale, RoundingMode.HALF_UP);
>     if (bd.precision() > precision) {
>         return null;
>     }
>     long longVal = -1;
>     if (precision <= MAX_COMPACT_PRECISION) {
>         longVal = bd.movePointRight(scale).longValueExact();
>     }
>     return new DecimalData(precision, scale, longVal, bd);
> } {code}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to