Hi, We are in the process of upgrading to 1.7.6 from 1.7.3. But it seems 1.7.6 deserialization is slower by about 10%-30%. We did profiling and found the bottleneck being JsonProperties.getJsonProp(). Please see the profiling result below 1.7.6 vs. 1.7.3. I did some research in the list and didn't find anything similar. Any idea what could have caused this?
Thanks you! Dan. // 1.7.6 CPU SAMPLES BEGIN (total = 31964) rank self accum count trace method 1 70.67% 70.67% 22589 300641 org.apache.avro.JsonProperties.getJsonProp 2 8.22% 78.89% 2628 300645 org.apache.avro.JsonProperties.getJsonProp 3 6.30% 85.20% 2015 300640 org.apache.avro.JsonProperties.getJsonProp 4 4.10% 89.30% 1311 300572 org.apache.avro.Schema$FixedSchema.getFixedSize 5 1.68% 90.98% 538 300648 org.apache.avro.JsonProperties.getJsonProp TRACE 300641: (thread=200001) org.apache.avro.JsonProperties.getJsonProp(JsonProperties.java:54) org.apache.avro.JsonProperties.getProp(JsonProperties.java:45) org.apache.avro.specific.SpecificDatumReader.getPropAsClass(SpecificDatumReader.java:92) org.apache.avro.specific.SpecificDatumReader.findStringClass(SpecificDatumReader.java:80) org.apache.avro.generic.GenericDatumReader.getStringClass(GenericDatumReader.java:394) org.apache.avro.generic.GenericDatumReader.readString(GenericDatumReader.java:351) org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:157) // 1.7.3 CPU SAMPLES BEGIN (total = 22383) rank self accum count trace method 1 4.81% 4.81% 1077 300527 org.apache.avro.Schema$FixedSchema.getFixedSize 2 3.09% 7.90% 691 300624 org.apache.avro.io.BinaryDecoder$InputStreamByteSource.tryReadRaw 3 1.61% 9.51% 361 300850 org.apache.avro.generic.GenericDatumReader.readString 4 1.52% 11.04% 341 300924 org.apache.avro.generic.GenericDatumReader.readString 5 1.44% 12.47% 322 300795 org.apache.avro.generic.GenericDatumReader.readString ---------------------------------------------------------------------- This message, and any attachments, is for the intended recipient(s) only, may contain information that is privileged, confidential and/or proprietary and subject to important terms and conditions available at http://www.bankofamerica.com/emaildisclaimer. If you are not the intended recipient, please delete this message.