LocalDateTime values are wrong around 1900 (caused by JDK-8061577)

Description

I have a problem with a timestamp field which is mapped to a LocalDateTime. We don't use UTC times in the database. Therefor, I expect the timestamp in the database to be equal to the value in the LocalDateTime.

The problem is that the conversion from a Timestamp to a LocalDateTime in LocalDateTimeJavaDescriptor uses the default timezone. For some reasons, this makes the two timestamps differ for timestamps before January 2, 1900.

I attached a testcase which shows the issue.

Environment

None

Status

Assignee

Yoann Rodière

Reporter

SH

Fix versions

Labels

None

backPortable

Backport?

Suitable for new contributors

None

Requires Release Note

None

backportDecision

None

Components

Affects versions

5.2.17
5.4.1

Priority

Major