[
http://opensource.atlassian.com/projects/hibernate/browse/HHH-4979?page=c...
]
Ray Fan commented on HHH-4979:
------------------------------
Steve, It made sense to me. The cast of a source approximate numeric type to a target
approximate numeric type is defined in the SQL standard, but it does not specify the scale
and precision. Only that the target data type does not lose any leading significant
digits after rounding or truncating.
Using best guess values for scale and precision for the cast target make sense without the
availability of the scale and precision of the cast operand.
I'm happy to defer this to the next release pending further investigation as it seems
to affect other dialects.
org.hibernate.test.hql.ASTParserLoadingTest failure running
testCastInSelect with Ingres
----------------------------------------------------------------------------------------
Key: HHH-4979
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-4979
Project: Hibernate Core
Issue Type: Bug
Components: testsuite
Affects Versions: 3.5.0-CR-2
Environment: Hibernate 3.5.0-CR, Ingres 9.3.1 (int.lnx/106), Ingres9Dialect
mysql 51, posgresql 837
Reporter: Ray Fan
Assignee: Steve Ebersole
Priority: Minor
Attachments: hql-astparserloadingtest.zip,
IngresDialect.testCastInSelect.svn.diff
Time Spent: 3 hours, 35 minutes
Remaining Estimate: 0 minutes
Assertion failure executing testCastInSelect from
org.hibernate.test.hql.ASTParserLoadingTest with Ingres.
{noformat}
<failure message="expected:<12.399999618530273> but was:<12.39>"
type="junit.framework.AssertionFailedError">
junit.framework.AssertionFailedError: expected:<12.399999618530273> but
was:<12.39>;
at junit.framework.Assert.fail(Assert.java:47)
at junit.framework.Assert.failNotEquals(Assert.java:282)
at junit.framework.Assert.assertEquals(Assert.java:64)
at junit.framework.Assert.assertEquals(Assert.java:71)
at
org.hibernate.test.hql.ASTParserLoadingTest.testCastInSelect(ASTParserLoadingTest.java:1291)
</failure>{noformat}
The generated SQL from the HQL query taken from the output log is
{noformat}
08:17:30,536 DEBUG QueryTranslatorImpl:241 - HQL: select cast(bodyWeight as big_decimal)
from org.hibernate.test.hql.Animal
08:17:30,536 DEBUG QueryTranslatorImpl:242 - SQL: select cast(animal0_.body_weight as
decimal(19, 2)) as col_0_0_ from Animal animal0_
Hibernate:
select
cast(animal0_.body_weight as decimal(19,
2)) as col_0_0_
from
Animal animal0_
08:17:30,701 INFO SessionFactoryImpl:908 - closing
{noformat}
The returned value from the query with a decimal(19,2) target data type is correct.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira