Ivan Andrianto (
https://hibernate.atlassian.net/secure/ViewProfile.jspa?accountId=557058%...
) *updated* an issue
Hibernate ORM (
https://hibernate.atlassian.net/browse/HHH?atlOrigin=eyJpIjoiMjA3ZWFlYzZi...
) / Bug (
https://hibernate.atlassian.net/browse/HHH-16778?atlOrigin=eyJpIjoiMjA3ZW...
) HHH-16778 (
https://hibernate.atlassian.net/browse/HHH-16778?atlOrigin=eyJpIjoiMjA3ZW...
) TimeZoneStorageType.NORMALIZE_UTC & COLUMN not normalized to UTC (
https://hibernate.atlassian.net/browse/HHH-16778?atlOrigin=eyJpIjoiMjA3ZW...
)
Change By: Ivan Andrianto (
https://hibernate.atlassian.net/secure/ViewProfile.jspa?accountId=557058%...
)
I have this column. As I know, the time should be normalized to UTC in the database
{noformat}public class Purchase {
@Id
@GeneratedValue
@GenericGenerator(name = "UUID", type = UuidGenerator.class)
private UUID id;
@TimeZoneStorage(TimeZoneStorageType.TIMESTAMP_UTC)
private ZonedDateTime purchasedAt;
}{noformat}
Then, I try to save a record, where the time is created using {{ZonedDateTime}} with a non
UTC {{ZoneId}} (the same as the local system).
{noformat}ZonedDateTime time = ZonedDateTime.of(2023, 6, 11, 15, 0, 0, 0,
ZoneId.of("Asia/Jakarta"));
Purchase purchase = new Purchase();
puchase.setPurchasedAt(time);
Purchase savedPurchase = purchaseRepository.save(purchase);
Purchase retrievedPurchase =
purchaseRepository.findById(savedPurchase.getId());{noformat}
The expected value should be {{2023-06-11 08:00:00}} (normalized to UTC), but I got
{{2023-06-11 15:00:00}} in the database
I use PostgreSQL 12 and the column type is timestamp without timezone
Then, when the record is retrieved, the column value is {{2023-06-11T15:00Z}} which is
incorrect.
I have seen the related code change in
[
https://github.com/hibernate/hibernate-orm/pull/4940/commits/7e4bacb1126b...]
But somehow the data stored in the database is incorrect
The value from hibernate log is {{binding parameter [2] as [TIMESTAMP_UTC] -
[2023-06-11T08:00:00Z]}}
The parameter value from PostgreSQL log when inserting is {{$2 = '2023-06-11
15:00:00+07'}} (and stored in the database as {{2023-06-11 15:00:00}})
(
https://hibernate.atlassian.net/browse/HHH-16778#add-comment?atlOrigin=ey...
) Add Comment (
https://hibernate.atlassian.net/browse/HHH-16778#add-comment?atlOrigin=ey...
)
Get Jira notifications on your phone! Download the Jira Cloud app for Android (
https://play.google.com/store/apps/details?id=com.atlassian.android.jira....
) or iOS (
https://itunes.apple.com/app/apple-store/id1006972087?pt=696495&ct=Em...
) This message was sent by Atlassian Jira (v1001.0.0-SNAPSHOT#100225- sha1:956085d )