You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by Michael Smith <mi...@smith-li.com> on 2022/07/09 16:14:21 UTC

Adding logical types to the Interop Tests

In the PR for AVRO-3476, Kalle suggested (
https://github.com/apache/avro/pull/1634#issuecomment-1173029441)

> The local timestamp logical types could be added to the interop tests, to
verify that the values roundtrip correctly between languages. These tests
would then have to be run in an environment where the local time is not
UTC, to detect if one language uses UTC for conversions and another uses
local time.

I think this is a great idea, but what is the process for adding to the
interop test schema? IIUC, it would affect many implementations at once.
IMO, we should probably have the logical types entirely covered in the
interop tests, eventually.

-Mike

Re: Adding logical types to the Interop Tests

Posted by Martin Grigorov <mg...@apache.org>.
Hi,


On Sat, Jul 9, 2022 at 7:14 PM Michael Smith <mi...@smith-li.com> wrote:

> In the PR for AVRO-3476, Kalle suggested (
> https://github.com/apache/avro/pull/1634#issuecomment-1173029441)
>
> > The local timestamp logical types could be added to the interop tests, to
> verify that the values roundtrip correctly between languages. These tests
> would then have to be run in an environment where the local time is not
> UTC, to detect if one language uses UTC for conversions and another uses
> local time.
>
> I think this is a great idea, but what is the process for adding to the
>

Agreed as well!


> interop test schema? IIUC, it would affect many implementations at once.
> IMO, we should probably have the logical types entirely covered in the
> interop tests, eventually.
>

I am not sure it is necessary to update all SDK tests at once.
For example with
https://github.com/apache/avro/commit/f888458721ce2573a6e04113a69a30ce785f8891
I've added tests for user metadata only to Java, Perl and Rust interop
tests - the ones it was easy for me to adapt.
The JS SDK does not support user metadata but the interop tests do not fail
because they do not try to write/read them.

I'd be happy to help with the Rust part, and others if I can!
Martin



>
> -Mike
>