[
https://issues.apache.org/jira/browse/AVRO-2950?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Werner Daehn resolved AVRO-2950.
--------------------------------
Resolution: Won't Fix
Two qualified comments render my fear obsolete.
> LocalDateTime-millis and -micros is bound to lead to wrong data
> ---------------------------------------------------------------
>
> Key: AVRO-2950
> URL: https://issues.apache.org/jira/browse/AVRO-2950
> Project: Apache Avro
> Issue Type: Bug
> Components: logical types
> Affects Versions: 1.10.0
> Reporter: Werner Daehn
> Priority: Critical
>
> The recent addition of LocalDateTime Logical Types I find it extremely
> dangerous. It will lead to wrong data for many users without noticing.
> While I understand the idea and reason, the oversight in my opinion is the
> the difference between Hadoop Files and Avro Messages: Hadoop is for data
> storage, Avro is for data exchange. Hadoop runs in a single cluster and it
> has a well defined time zone. Thus LocalDateTime does have a meaning. Avro is
> used to exchange data between systems. Serializing data on a system in time
> zone 1 and loading it into the Hadoop cluster located in time zone 2 will
> lead to wrong data with an high likelihood.
> Example: Kafka Connect Producer is running in US (PST) and Hadoop in UK (GMT).
> User 1 expectation: In Hadoop the data is in LocalDateTime meaning in GMT.
> The Java data types Date, java.sql.Timestamp and LocalDateTime are used,
> which all are data types without a time zone information. Thus they return
> correct data if the loaded data has the meaning of UK-time. The Kafka
> Producer does not know the time zone of Hadoop.
> User 2 expectation: In Hadoop the data belongs to an office and has an
> implicit time zone hence. It is the time zone of the office location. In that
> case a LocalDateTime is meant as the time as seen on the office clock.
> As these two cases cannot be distinguished from each other and people tend to
> think locally, we are inviting people to produce wrong data.
>
> The better logical type would have been for the Java ZonedDateTime. Then the
> producer and consumer are in sync. The producer is loading data in PST time
> zone and the consumer can read the data as GMT times. If he wants the local
> office times, he has to add the office timezone offsets.
> LocalDateTime was introduced here:
> https://issues.apache.org/jira/browse/AVRO-2328
>
> Can you please open the discussion on this item to make sure you are fully
> aware of the implications and still want to go with it?
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)