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

Maksim Zhuravkov updated IGNITE-19822:
--------------------------------------
    Description: 
RexSimplify/RexBuilder ignores type.scale when it considers whether to remove a 
cast from a literal or not:
{code:java}
 @Test
 public void testCastLit() {
   assertQuery("SELECT CAST(100.00 AS DECIMAL(4,1))").returns(new 
BigDecimal("100.0")).check();
 }
{code}

*Result*:

{code:java}
org.opentest4j.AssertionFailedError: Collections are not equal (position 0):
Expected: 100.0 <class java.math.BigDecimal>
Actual:   100.00 <class java.math.BigDecimal>
{code}



  was:
RexSimplify/RexBuilder ignores type.scale when it considers whether to remove a 
cast from a literal or not:
{code:java}
 @Test
    public void testCastLit() {
        assertQuery("SELECT CAST(100.00 AS DECIMAL(4,1))").returns(new 
BigDecimal("100.0")).check();
    }
{code}

*Result*:

{code:java}
org.opentest4j.AssertionFailedError: Collections are not equal (position 0):
Expected: 100.0 <class java.math.BigDecimal>
Actual:   100.00 <class java.math.BigDecimal>
{code}




> Sql. CAST(literal AS decimal_type) is reduced to literal when 
> type(lateral).scale != decimal_type.scale
> -------------------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-19822
>                 URL: https://issues.apache.org/jira/browse/IGNITE-19822
>             Project: Ignite
>          Issue Type: Bug
>          Components: sql
>    Affects Versions: 3.0.0-beta2
>            Reporter: Maksim Zhuravkov
>            Priority: Major
>              Labels: ignite-3
>
> RexSimplify/RexBuilder ignores type.scale when it considers whether to remove 
> a cast from a literal or not:
> {code:java}
>  @Test
>  public void testCastLit() {
>    assertQuery("SELECT CAST(100.00 AS DECIMAL(4,1))").returns(new 
> BigDecimal("100.0")).check();
>  }
> {code}
> *Result*:
> {code:java}
> org.opentest4j.AssertionFailedError: Collections are not equal (position 0):
> Expected: 100.0 <class java.math.BigDecimal>
> Actual:   100.00 <class java.math.BigDecimal>
> {code}



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

Reply via email to