[ 
https://issues.apache.org/jira/browse/OPENJPA-3051?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18136684#comment-18136684
 ] 

ASF subversion and git services commented on OPENJPA-3051:
----------------------------------------------------------

Commit 3e30dea3fb3fcd2effdee7bb259b26f9312bc5b9 in openjpa's branch 
refs/heads/OPENJPA-3051 from Richard Zowalla
[ https://gitbox.apache.org/repos/asf?p=openjpa.git;h=3e30dea3f ]

[OPENJPA-3051] Keep the precision and scale of decimal columns on H2

H2 2.x reads an unsized NUMERIC as NUMERIC(100000, 0). H2Dictionary
listed NUMERIC and DECIMAL as fixed size types, so @Column(precision,
scale) was dropped from the DDL and fractional values were rounded to
integers. Write the precision and scale into the type name and create
an unsized decimal column of a non integral Java type as DECFLOAT(38)
on H2 2.x, unless NumericTypeName or DecimalTypeName was configured.
Read a DECFLOAT value with negative scale back with scale 0. Use
fractional decimals in the OPENJPA-3035 and OPENJPA-3044 tests.


> H2: a BigDecimal column is created with scale 0
> -----------------------------------------------
>
>                 Key: OPENJPA-3051
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-3051
>             Project: OpenJPA
>          Issue Type: Bug
>            Reporter: Richard Zowalla
>            Priority: Major
>
> On H2, a {{BigDecimal}} attribute mapped with {{@Column(precision = 10, scale 
> = 2)}} gets a NUMERIC column with scale 0, so 2.5 is stored as 3 (and 1.5 as 
> 2). This happens with a fresh database created by OpenJPA's schema tool.
> Found independently while working on OPENJPA-3035 and OPENJPA-3044, whose 
> tests use whole-number decimals to avoid it.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to