Vivek Nadkarni created AVRO-1088:
------------------------------------
Summary: Avro-C - Add performance tests for schema resolution and
arrays.
Key: AVRO-1088
URL: https://issues.apache.org/jira/browse/AVRO-1088
Project: Avro
Issue Type: Improvement
Components: c
Affects Versions: 1.7.0
Environment: Ubuntu Linux 11.10
Reporter: Vivek Nadkarni
Fix For: 1.7.0
The current performance test in Avro-C measures the performance while
reading and writing of Avro values using a complex record schema,
which does not contain any arrays.
We add tests to measure the performance for simple and nested
arrays. We also replicate all tests to measure the performance of the
schema resolution using a resolved reader and a resolved writer.
Specifically we add the following performance tests:
Nested Record
1. Replicating the test "nested record value by index", using a helper
function. Using helper functions adds a little overhead, but it
allows us to test various schemas, as well as different modes of
schema resolution much more easily.
2. Using a resolved writer to resolve between (identical) reader and
writer schemas, while reading a complex record.
3. Using a resolved reader to resolve between (identical) reader and
writer schemas, while writing a complex record.
Simple Array
4. Test the performance for reading and writing a simple array.
5. Using a resolved writer to resolve between (identical) reader and
writer schemas, while reading a simple array.
6. Using a resolved reader to resolve between (identical) reader and
writer schemas, while writing a simple array.
Nested Array
7. Test the performance for reading and writing a nested array.
8. Using a resolved writer to resolve between (identical) reader and
writer schemas, while reading a nested array.
9. Using a resolved reader to resolve between (identical) reader and
writer schemas, while writing a nested array.
Additionally we fix a minor bug:
1. The return value of avro_value_equal_fast() was not being
tested. Test this return value, and fail if it is FALSE.
--
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