[ https://issues.apache.org/jira/browse/AVRO-1034?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Douglas Creager updated AVRO-1034: ---------------------------------- Attachment: 0001-AVRO-1034.-C-Resolved-reader-initializes-child-array.patch Here's an updated version of my patch that eliminates the segfault in the second test case. Just needed to add an avro_array_raw_clear call to the reset method. > Avro C Resolved reader does not initialize children of arrays, resulting in > segmentation faults > ----------------------------------------------------------------------------------------------- > > Key: AVRO-1034 > URL: https://issues.apache.org/jira/browse/AVRO-1034 > Project: Avro > Issue Type: Bug > Components: c > Affects Versions: 1.6.2 > Environment: GNU/Linux Ubuntu 11.10 64-bit > Reporter: Vivek Nadkarni > Fix For: 1.6.3 > > Attachments: > 0001-AVRO-1034.-C-Resolved-reader-initializes-child-array.patch, > 0001-AVRO-1034.-C-Resolved-reader-initializes-child-array.patch, > AVRO-1034.patch, avro-1034-test-2.c, avro-1034-test.c > > Original Estimate: 168h > Remaining Estimate: 168h > > As I did in AVRO-984, I created a test program that creates an avro > value corresponding to the following schema: > {"type":"array", "items": {"type": "array", "items": "long"}} > The avro_value is then resolved using a resolved_reader, and an > attempt is made to read from the resolved_reader. This results in a > segmentation fault on Linux. > I believe this issue is similar to the issue in AVRO-984, in which > nested arrays did not work because avro_resolved_array_writer_init() > did not recursively call the init function on its children. In that > case the initialization had to be deferred until a new item was > appended to the array. > I believe that avro_resolved_array_reader_init() should also > recursively call the init function on its children, in a deferred > manner as in AVRO-984, but I don't know how to implement this yet. > I will attach a test program that shows the crash. > Thanks, > Vivek -- 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