[
https://issues.apache.org/jira/browse/BEAM-12484?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Anant Damle updated BEAM-12484:
-------------------------------
Resolution: Won't Fix
Status: Resolved (was: Open)
The issue stems from definition of time of day.
{code:java}
// it is consistent when specifying complete time:
int days = org.joda.time.Days.daysBetween(org.joda.time.Instant.EPOCH,
org.joda.time.Instant.parse("2002-07-13T00:00:00Z")).getDays();{code}
> Issue with handling of logicalType Date in Avro Conversion
> ----------------------------------------------------------
>
> Key: BEAM-12484
> URL: https://issues.apache.org/jira/browse/BEAM-12484
> Project: Beam
> Issue Type: Bug
> Components: sdk-java-core
> Affects Versions: 2.30.0
> Reporter: Anant Damle
> Assignee: Anant Damle
> Priority: P2
>
> Joda Time handling varies between OSes:
> Fix by using `java.util.time` in `AvroUtils`
>
> {code:java}
> @Test
> public void jodaDaysDiff() {
> var days = org.joda.time.Days.daysBetween(org.joda.time.Instant.EPOCH,
> org.joda.time.Instant.parse("2002-07-13")).getDays();
> // Linux: fail // actual = 11880
> // MacOS: pass
> assertThat(days).isEqualTo(11881);
> }
> @Test
> public void javaTimeDaysDiff() {
> var date = java.time.Instant.parse("2002-07-13T00:00:00Z");
> var days =
> java.time.temporal.ChronoUnit.DAYS.between(java.time.Instant.EPOCH, date);
> // Linux: pass
> // MacOS: pass
> assertThat(days).isEqualTo(11881);
> }
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)