It looks like a similar approach -- the parser functions now take the namespace of the enclosing scope (the Ruby version calls it "default_namespace" and I call it "parent_namespace"). Plus there's some extra logic to take into account the fully-qualified name.

Thanks for pointing that out.

Ben

On Tue, 7 May 2013, Martin Kleppmann wrote:

FWIW, I think the Ruby bug was fixed here:
https://issues.apache.org/jira/browse/AVRO-1272 — take a look at the patch,
perhaps you can adopt a similar approach in the C implementation (I don't
know how similar the code is though, so it may be irrelevant).

Martin


On 7 May 2013 02:30, Bruce Mitchener <bruce.mitche...@gmail.com> wrote:

On May 7, 2013, at 5:17 PM, Ben Walsh <ben_w_...@yahoo.co.uk> wrote:


Hi

It seems that the C version of Avro doesn't resolve fully-qualified type
names, and it doesn't understand inherited namespaces.

For example this doesn't work:

{"type": "record", "namespace": "x", "name": "Y", "fields": [
 {"name": "e", "type": {"type": "record", "name": "Z", "fields": [
   {"name": "f", "type": "x.Z"}
 ]}}
]}

It can't find the type "x.Z".

(this is similar to a Ruby problem
https://issues.apache.org/jira/browse/AVRO-635).

I have a patch to make this work. Should I submit a JIRA or is this
issue already fixed/not a problem?

Sounds like a patch in JIRA would be ideal.

 - Bruce


Reply via email to