[ https://issues.apache.org/jira/browse/OFBIZ-4341?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13114520#comment-13114520 ]
Martin Kreidenweis commented on OFBIZ-4341: ------------------------------------------- Just checking up on the ticket status... :-) Do you need more info or did you just not get around to applying the patch yet? One thing we might want to be careful about: Some code might actually depend on the buggy behavior and expect that the cache is not used for not-found primary key values. Still, the intention of the original code seems to me like it wanted to use that cache and it just didn't work. So I think we should fix this. We found the issue while profiling a service in our application. > GenericDelegator.findOne cache not working for not-found values (cached > not-found treated like cache miss) > ---------------------------------------------------------------------------------------------------------- > > Key: OFBIZ-4341 > URL: https://issues.apache.org/jira/browse/OFBIZ-4341 > Project: OFBiz > Issue Type: Bug > Components: framework > Affects Versions: SVN trunk > Reporter: Martin Kreidenweis > Attachments: OFBIZ-4341-findOne-cache-fix.patch > > > {{GenericDelegator.findOne}} doesn't handle the cache consistently. > When it doesn't find anything, it puts {{GenericValue.NULL_VALUE}} in the > cache. When trying to read from the cache it uses the > {{getFromPrimaryKeyCache}} method, which returns null when > {{GenericValue.NULL_VALUE}} was stored in the cache, just like for cache > misses. So a not-found value in the cache is treated like a cache miss and > the cache isn't actually used. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira