avro-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Christopher Armstrong (JIRA)" <j...@apache.org>
Subject [jira] Created: (AVRO-748) Python library does not include the implicit 'string' error type for messages
Date Thu, 27 Jan 2011 23:13:43 GMT
Python library does not include the implicit 'string' error type for messages
-----------------------------------------------------------------------------

                 Key: AVRO-748
                 URL: https://issues.apache.org/jira/browse/AVRO-748
             Project: Avro
          Issue Type: Bug
          Components: python
    Affects Versions: 1.4.1
         Environment: Ubuntu, Python 2.6.6
            Reporter: Christopher Armstrong


Here's a trivial test case:


schema = """
{
  "namespace": "test",
  "protocol": "test",
  "types": [],
  "messages": {"test_method": {
               "request": [],
               "response": "string"}}
}
"""

from avro.protocol import parse
protocol = parse(schema)
assert protocol.messages['test_method'].errors is not None


This may be a bit white-box; the problem actually manifests in avro.ipc.Responder.respond
(line 338), when making a call to write_error with the "writers_schema" being "local_message.errors".
local_message.errors is None, and it blows up while validating the schema.

This only seems to happen when there is *no* errors field in the message; if an errors field
is provided, it still doesn't explicitly include "string" in the "errors" field, but it does
seem to allow the error message to be passed back. So maybe this is an error in the protocol
parser, or maybe it's an error in the code that actually tries to write the error response.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message