You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "Jeremy Lewi (JIRA)" <ji...@apache.org> on 2011/07/04 17:42:21 UTC

[jira] [Updated] (AVRO-850) Python protocol parsing doesn't set message error union to ['string'] when no errors declared

     [ https://issues.apache.org/jira/browse/AVRO-850?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jeremy Lewi updated AVRO-850:
-----------------------------

    Attachment: AVRO-850.patch

Here is a patch. In addition to fixing the issue, I added a test case to test_protocol to ensure that when no errors are declared, errors is ['string']

> Python protocol parsing doesn't set message error union to ['string'] when no errors declared
> ---------------------------------------------------------------------------------------------
>
>                 Key: AVRO-850
>                 URL: https://issues.apache.org/jira/browse/AVRO-850
>             Project: Avro
>          Issue Type: Bug
>          Components: python
>    Affects Versions: 1.5.0
>            Reporter: Jeremy Lewi
>            Assignee: Jeremy Lewi
>         Attachments: AVRO-850.patch
>
>
> This bug applies to the python module.
> According to the protocol specification (http://avro.apache.org/docs/current/spec.html#Messages) when no errors are declared in the protocol for a message, the effective error union is ['string']. The behavior of avro.protocol is not consistent with this specification. In particular if no errors are declared the "errors" property of Message will be None and not an instance of ErrorUnionSchema. Consequently, if a message returns an error an exception gets thrown.
> Patch to follow shortly.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira