avro-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thiruvalluvan M. G. (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (AVRO-1026) Add namespace support to C++
Date Tue, 14 Feb 2012 18:50:00 GMT

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

Thiruvalluvan M. G. commented on AVRO-1026:
-------------------------------------------

The patch does not apply cleanly on the current trunk. I think this patch was generated before
AVRO-956. We have made two important changes in the recent past to get rid of Flex/Bison dependency
and to make it compile natively on Windows using Visual Studio.

I've not studied this patch deep. So my question may be naive.

Is it possible to make the name attribute include the namespace as well instead of adding
a new attribute? If the namespace is not given, the name will fall back to the simple name
as it is now. If namespace is explicitly given or implied, it will have a fully qualified
name. That way backward compatibility with existing schemas and code will be maintained.
                
> Add namespace support to C++
> ----------------------------
>
>                 Key: AVRO-1026
>                 URL: https://issues.apache.org/jira/browse/AVRO-1026
>             Project: Avro
>          Issue Type: Improvement
>          Components: c++
>    Affects Versions: 1.6.1
>            Reporter: Keh-Li Sheng
>              Labels: patch
>         Attachments: AVRO-1026.patch, AVRO-1026_json.patch
>
>
> This patch adds support for reading and resolving schemas that use namespaces for named
types. Looking for a code review and application of the patch to codebase.
> Node is modified to take an additional NamespaceConcept attribute in the template parameters.
An additional stack has been added to the compiler context to track when namespaces have been
entered or left for resolving further types/symbols. Symbolic resolution is now done against
the "fullname" of the type and not just by the name. Some string gymnastics were needed in
other areas of codegen in order to handle the new symbols.
> Added very trivial tests to AvrogencppTests for schema generation by avrogencpp and added
a test schema (tweet) that has namespaces, a record definition inside a namespace, and then
a later symbolic reference by name within an outer namespace. Also patched to work with gen-cppcode.py
output. Note that NodeImpl::printBasicInfo intentionally does not output the namespace since
that caused downstream breakage of gen-cppcode.py expected format.
> github project was forked at https://github.com/bifflabs/avro

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message