[jira] [Commented] (JENA-279) Make node cache configurable and use soft references

2012-07-20 Thread Andy Seaborne (JIRA)

[ 
https://issues.apache.org/jira/browse/JENA-279?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13419026#comment-13419026
 ] 

Andy Seaborne commented on JENA-279:


If we keep the cache, the use of soft references looks interesting.

That said, I am in favour of removing the cache based on my last poking around 
in this area but it was about a year ago.  It is a relic of a time when object 
creation was relatively more expensive in Java (from what I remember - it was a 
long time ago!) and the usage of Jena may well have been different.

TDB does it's own thing because it is caching the node file and the cache is 
NodeId to Node.

RIOT, for IRIs, does it's own thing because it is coupled with caching IRI 
parsing which is expensive.

ARQ does itself create nodes - it used nodes from the storage layer.

I have just a simple test: parsing BSBM 25m

With cache:
bsbm-25m.nt.gz : 183.27 sec  25,000,250 triples  136,415.85 TPS

Without cache:
Node.cache(false) ;
bsbm-25m.nt.gz : 179.19 sec  25,000,250 triples  139,514.99 TPS

(On an Ubuntu desktop machine with Java 6 inside Eclipse.)

Parsing is one of the places nodes get created a lot.

The rules engine does not do much node creation - it create triples.

This big step in terms of architecture so I'll highlight the issue to the dev@ 
list.  We can tap the historical record of the project.


 Make node cache configurable and use soft references
 

 Key: JENA-279
 URL: https://issues.apache.org/jira/browse/JENA-279
 Project: Apache Jena
  Issue Type: Improvement
  Components: Jena
Affects Versions: Jena 2.7.2
Reporter: Laurent Pellegrino
Assignee: Stephen Allen
  Labels: jena-core, node, node-cache
 Attachments: nodecache-279.patch


 It would be nice to offer the possibility to configure the NodeCache capacity 
 and to use soft references in order to collect references when no more memory 
 is available. The Node cache should not be the cause of an  OutOfMemory error.

--
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




[jira] [Commented] (JENA-279) Make node cache configurable and use soft references

2012-07-19 Thread Stephen Allen (JIRA)

[ 
https://issues.apache.org/jira/browse/JENA-279?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13418495#comment-13418495
 ] 

Stephen Allen commented on JENA-279:


Actually, I'm rather surprised to learn that an object cache exists at all in 
Node.  Creation of new Java objects nowadays is really cheap.  Maybe the 
NodeCache is left over from the early days of Jena before that was the case?

I will go ahead and remove the cache entirely.  Thanks for the report!

 Make node cache configurable and use soft references
 

 Key: JENA-279
 URL: https://issues.apache.org/jira/browse/JENA-279
 Project: Apache Jena
  Issue Type: Improvement
  Components: Jena
Affects Versions: Jena 2.7.2
Reporter: Laurent Pellegrino
Assignee: Stephen Allen
  Labels: jena-core, node, node-cache
 Attachments: nodecache-279.patch


 It would be nice to offer the possibility to configure the NodeCache capacity 
 and to use soft references in order to collect references when no more memory 
 is available. The Node cache should not be the cause of an  OutOfMemory error.

--
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