[ https://issues.apache.org/jira/browse/IBATIS-508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12684015#action_12684015 ]
Kai Grabfelder commented on IBATIS-508: --------------------------------------- wow it sounds like it would be very reasonable to apply this patch. @Clinton or any over dev. could you apply it? Unfortunately it seems that I did not made it through the pmc commiter approval process ;-( > Lock occurs when heavy traffic > ------------------------------ > > Key: IBATIS-508 > URL: https://issues.apache.org/jira/browse/IBATIS-508 > Project: iBatis for Java > Issue Type: Bug > Components: SQL Maps > Affects Versions: 2.3.0 > Environment: all platform > Reporter: Takayuki Ikeda > Priority: Minor > Attachments: iBATIS-508.patch > > > In heavy traffic , lock occurs at > com.ibatis.common.beans.ClassInfo#getInstance in case of cacheEnabled = true. > It seems to be happend because of "double synchronized" > ClassInfo.java > --- > private static final Map CLASS_INFO_MAP = Collections.synchronizedMap(new > HashMap()); > public static ClassInfo getInstance(Class clazz) { > if (cacheEnabled) { > synchronized (clazz) { > --- > I think we get more concurrency to access getInstance if the synchronized > clause in getInstance method is deleted. > There is no side-effect to do this. > #just created several useless ClassInfo objects :-) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.