You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Adam Millerchip (JIRA)" <ji...@apache.org> on 2016/02/02 09:20:39 UTC
[jira] [Created] (THRIFT-3595) Perl Bindings: Set
serialization/dezerialization differs
Adam Millerchip created THRIFT-3595:
---------------------------------------
Summary: Perl Bindings: Set serialization/dezerialization differs
Key: THRIFT-3595
URL: https://issues.apache.org/jira/browse/THRIFT-3595
Project: Thrift
Issue Type: Bug
Components: Perl - Compiler
Affects Versions: 0.9.3, 0.9.2, 0.9.1
Reporter: Adam Millerchip
Priority: Minor
In the Perl bindings, a Thrift Set is dezerialized as a hashref, but the serialization code expects an arrayref. This causes the code to die when called if attempting to serialize a previously dezerialized Set.
Additionally, it looks like there is a typo in the test that is testing this feature:
https://github.com/apache/thrift/blob/49f4dc0cd8c87213a0f80ae1daba2d094a358ea7/test/perl/TestClient.pl#L262
If you change that {{@$setout}} to {{@$setin}}, the test fails.
It doesn't make much sense to implement a Set in Perl as array, because arrays allow duplicate entries and are ordered.
I've written a change for the serialization that correctly expects a hashref (will link to shortly).
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)