You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "Scott Banachowski (JIRA)" <ji...@apache.org> on 2009/11/16 23:43:39 UTC

[jira] Created: (AVRO-204) change the way symbolic references are tracked

change the way symbolic references are tracked
----------------------------------------------

                 Key: AVRO-204
                 URL: https://issues.apache.org/jira/browse/AVRO-204
             Project: Avro
          Issue Type: Improvement
          Components: c++
            Reporter: Scott Banachowski


In a schema, a previously defined schema may be referenced by name.  The way the implementation tracked this was a look-aside mapping of name to instance.  If a symbol node was encountered during parsing it was referenced via the map.

Instead of using a look-aside map, now a pointer to the referenced node is stored in the symbolic schema node, so while parsing it may be de-referenced without a lookup.  The look-aside map is only when compiling the schema, so that symbols are resolved at compile time.

This improves performance, reduces storage space, and simplifies some some upcoming changes (resolving schema differences).


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


[jira] Updated: (AVRO-204) change the way symbolic references are tracked

Posted by "Scott Banachowski (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AVRO-204?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Scott Banachowski updated AVRO-204:
-----------------------------------

    Resolution: Fixed
        Status: Resolved  (was: Patch Available)

Committed revision 881076.

> change the way symbolic references are tracked
> ----------------------------------------------
>
>                 Key: AVRO-204
>                 URL: https://issues.apache.org/jira/browse/AVRO-204
>             Project: Avro
>          Issue Type: Improvement
>          Components: c++
>            Reporter: Scott Banachowski
>         Attachments: AVRO-204.patch
>
>
> In a schema, a previously defined schema may be referenced by name.  The way the implementation tracked this was a look-aside mapping of name to instance.  If a symbol node was encountered during parsing it was referenced via the map.
> Instead of using a look-aside map, now a pointer to the referenced node is stored in the symbolic schema node, so while parsing it may be de-referenced without a lookup.  The look-aside map is only when compiling the schema, so that symbols are resolved at compile time.
> This improves performance, reduces storage space, and simplifies some some upcoming changes (resolving schema differences).

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


[jira] Updated: (AVRO-204) change the way symbolic references are tracked

Posted by "Scott Banachowski (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AVRO-204?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Scott Banachowski updated AVRO-204:
-----------------------------------

    Attachment: AVRO-204.patch

> change the way symbolic references are tracked
> ----------------------------------------------
>
>                 Key: AVRO-204
>                 URL: https://issues.apache.org/jira/browse/AVRO-204
>             Project: Avro
>          Issue Type: Improvement
>          Components: c++
>            Reporter: Scott Banachowski
>         Attachments: AVRO-204.patch
>
>
> In a schema, a previously defined schema may be referenced by name.  The way the implementation tracked this was a look-aside mapping of name to instance.  If a symbol node was encountered during parsing it was referenced via the map.
> Instead of using a look-aside map, now a pointer to the referenced node is stored in the symbolic schema node, so while parsing it may be de-referenced without a lookup.  The look-aside map is only when compiling the schema, so that symbols are resolved at compile time.
> This improves performance, reduces storage space, and simplifies some some upcoming changes (resolving schema differences).

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


[jira] Updated: (AVRO-204) change the way symbolic references are tracked

Posted by "Scott Banachowski (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AVRO-204?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Scott Banachowski updated AVRO-204:
-----------------------------------

    Status: Patch Available  (was: Open)

> change the way symbolic references are tracked
> ----------------------------------------------
>
>                 Key: AVRO-204
>                 URL: https://issues.apache.org/jira/browse/AVRO-204
>             Project: Avro
>          Issue Type: Improvement
>          Components: c++
>            Reporter: Scott Banachowski
>         Attachments: AVRO-204.patch
>
>
> In a schema, a previously defined schema may be referenced by name.  The way the implementation tracked this was a look-aside mapping of name to instance.  If a symbol node was encountered during parsing it was referenced via the map.
> Instead of using a look-aside map, now a pointer to the referenced node is stored in the symbolic schema node, so while parsing it may be de-referenced without a lookup.  The look-aside map is only when compiling the schema, so that symbols are resolved at compile time.
> This improves performance, reduces storage space, and simplifies some some upcoming changes (resolving schema differences).

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