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

Mike Matrigali commented on DERBY-2920:
---------------------------------------

I worry about adding extra method calls in this area, but admit it has been a 
long time and many jvm versions ago since I looked
at performance resulst in this area.  The issue here is that this is a very 
high traffic routine.  
For instance I think the worst case would be  the case of a 10 collumn row and 
looking at 1 million rows this change may add
1 million extra function calls.  Maybe JIT fixes, not sure.  

I also wonder if we lose performance by moving the routines out of final 
classes.

I know some code duplication was added in the area of read and write external 
in the past as the result of performance tuning.  
                
> Share code between readExternal() and readExternalFromArray()
> -------------------------------------------------------------
>
>                 Key: DERBY-2920
>                 URL: https://issues.apache.org/jira/browse/DERBY-2920
>             Project: Derby
>          Issue Type: Improvement
>          Components: Services, SQL
>            Reporter: Knut Anders Hatlen
>            Assignee: Knut Anders Hatlen
>            Priority: Minor
>              Labels: derby_triage10_10
>         Attachments: d2920-1a.diff
>
>
> Most of the implementations of 
> DataValueDescriptor.readExternalFromArray(ArrayInputStream) are identical to 
> their corresponding Externalizable.readExternal(ObjectInput) methods. Since 
> ArrayInputStream implements ObjectInput, readExternalFromArray() could in 
> those cases just have forwarded calls to readExternal() instead of 
> duplicating the code. A default forwarding implementation of 
> readExternalFromArray() could be placed in 
> org.apache.derby.iapi.types.DataType, and all the existing implementations, 
> except those with optimizations for ArrayInputStream, could be removed.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to