GitHub user stain opened a pull request:
https://github.com/apache/jena/pull/44
JENA-901 Upper bound on LPDRuleEngine cache
Fixes JENA-901.
A better solution might be to use guava caches - but I didn't want to add
another dependency, so this fix can go into a patch release.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/stain/jena JENA-901-LPDRuleEngine-bound-cache
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/jena/pull/44.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #44
----
commit 50511efc0e3cdeaee95ee7254483b1ea9c1f9fea
Author: Stian Soiland-Reyes <[email protected]>
Date: 2015-03-19T02:52:08Z
JENA-901
A simple BoundedMap - based on LinkedHashMap
commit 06abde7d170bdc76ac3f9a7ef4159bb625028cfe
Author: Stian Soiland-Reyes <[email protected]>
Date: 2015-03-19T02:52:30Z
JENA-901 Use BoundedMap for tabledGoals cache
configurable with system property
jena.rulesys.lp.max_cached_tabled_goals
commit 0b2e72b7d604940c5b084f026c437484856e929a
Author: Stian Soiland-Reyes <[email protected]>
Date: 2015-03-19T02:55:06Z
JENA-901 Test saturation of tabledGoals
commit 83d7e8cfdd50f3de849731bf56cadf1d1daec15c
Author: Stian Soiland-Reyes <[email protected]>
Date: 2015-03-19T03:53:02Z
measure size of engine
commit 938db892729d7f1849c0a6f71b27ebd4d1be3ff9
Author: Stian Soiland-Reyes <[email protected]>
Date: 2015-03-19T04:16:02Z
more reset.. still uses lots of memory
commit 3d01fffa0d9ab6ee34b7f0e8ac540a53f3bf22c3
Author: Stian Soiland-Reyes <[email protected]>
Date: 2015-03-20T16:23:36Z
JENA-901 use a LinkedList instead of ArrayList
for activeInterpreters. They could be closed in arbitrary order,
and also this avoids a large ArrayList remaining after a big burst
of concurrent queries.
Simplify test. Check activeInterpreters is empty - this didn't
happen as I had forgotten to call it.hasNext() (which any use of
an iterator would normally do).
Test now with MAX=1024 and 128M find() calls.
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---