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

Elliotte Rusty Harold updated PARQUET-2452:
-------------------------------------------
    Description: 
In Types.java we find this block of code:

{code:java}
        Preconditions.checkArgument(precision > 0,
            "Invalid DECIMAL precision: %s", precision);
        Preconditions.checkArgument(this.scale >= 0,
            "Invalid DECIMAL scale: %s", this.scale);
        Preconditions.checkArgument(this.scale <= precision,
            "Invalid DECIMAL scale: cannot be greater than precision");
{code}

My program tripped the third precondition and it was harder to debug than it 
should have been because the scale and precision that violated the rule were 
not included in the exception message. Include both of these as in the previous 
two messages.


  was:
In Types.java we find this block of code:

{code:java}
        Preconditions.checkArgument(precision > 0,
            "Invalid DECIMAL precision: %s", precision);
        Preconditions.checkArgument(this.scale >= 0,
            "Invalid DECIMAL scale: %s", this.scale);
        Preconditions.checkArgument(this.scale <= precision,
            "Invalid DECIMAL scale: cannot be greater than precision");
{code}

My program tripped the third precondition and it was harder to debug than it 
should have been because the scale and precision that violated the rule were 
not shown. Include both of these as in the previous two messages.



> Include scale and precision in error message when scale > precision
> -------------------------------------------------------------------
>
>                 Key: PARQUET-2452
>                 URL: https://issues.apache.org/jira/browse/PARQUET-2452
>             Project: Parquet
>          Issue Type: Improvement
>            Reporter: Elliotte Rusty Harold
>            Priority: Minor
>
> In Types.java we find this block of code:
> {code:java}
>         Preconditions.checkArgument(precision > 0,
>             "Invalid DECIMAL precision: %s", precision);
>         Preconditions.checkArgument(this.scale >= 0,
>             "Invalid DECIMAL scale: %s", this.scale);
>         Preconditions.checkArgument(this.scale <= precision,
>             "Invalid DECIMAL scale: cannot be greater than precision");
> {code}
> My program tripped the third precondition and it was harder to debug than it 
> should have been because the scale and precision that violated the rule were 
> not included in the exception message. Include both of these as in the 
> previous two messages.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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

Reply via email to