Fellow FOP Devs,

periodically I run a test suite of documents against FOP Trunk to ensure no new major issues have occurred since I last took a build of Trunk to use in my application. Part of the test suite involves running a set of a few documents several thousand times through FOP. After about 1400 documents I receive a NPE in the property cache:

Exception in thread "Thread-9065" java.lang.NullPointerException
at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:276) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.rehash(PropertyCache.java:244) at org.apache.fop.fo.properties.PropertyCache.access$300(PropertyCache.java:33) at org.apache.fop.fo.properties.PropertyCache$CacheCleaner.run(PropertyCache.java:140)
        at java.lang.Thread.run(Unknown Source)


Does anyone know why CacheEntry.ref can be null in this context and why this only happens after a few thousand documents have been run through? Previous documents all have the same property values. Perhaps the GC has collected the object referenced by ref?

Thanks,

Chris


Reply via email to