thrift-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Remi Dettai (Jira)" <j...@apache.org>
Subject [jira] [Commented] (THRIFT-5314) Enum forward compatibility
Date Wed, 02 Dec 2020 21:20:00 GMT

    [ https://issues.apache.org/jira/browse/THRIFT-5314?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17242731#comment-17242731
] 

Remi Dettai commented on THRIFT-5314:
-------------------------------------

I don't really have a point of view on what the invariants of a wire protocol should or shouldn't
be, but my intuition tells me that consistence between implementations is very important.
If the C++ and Java implementations (that are used in production for yeeeeaaaaars) work in
a given way, I think it makes sense to align newer implementations with them. 

Should a vote be started on the way to go on this?  

> Enum forward compatibility
> --------------------------
>
>                 Key: THRIFT-5314
>                 URL: https://issues.apache.org/jira/browse/THRIFT-5314
>             Project: Thrift
>          Issue Type: Bug
>          Components: Rust - Compiler, Rust - Library
>    Affects Versions: 0.13.0
>            Reporter: Remi Dettai
>            Priority: Major
>
> It seems that enums in the Rust implem are not forward compatible. As Thrift enums are
mapped 1:1 to Rust enum, if a newer Thrift definition adds a case to an enum, an error will
be returned when parsing the message.
> Is this intended? Is there a workaround?
> (We met this problem in the Rust parquet implem: https://issues.apache.org/jira/browse/ARROW-10553)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Mime
View raw message