Java 为什么Orbeon会创建这么大的org.Orbeon.oxf.cache.MemoryCacheImpl对象?

Java 为什么Orbeon会创建这么大的org.Orbeon.oxf.cache.MemoryCacheImpl对象?,java,caching,out-of-memory,orbeon,Java,Caching,Out Of Memory,Orbeon,我运行的是旧版本的Orbeon表单,准确地说是3.9.0.rc1.201103220245 CE。最近,我经常看到运行它的JVM抛出OfMemoryError:Java堆空间错误。我分析了一个堆转储,发现org.orbeon.oxf.cache.MemoryCacheImpl的实例具有迄今为止最大的保留大小。我已经研究过了,但没有发现任何与之相关的bug报告。我发现Orbeon邮件列表上有一篇帖子可能与此相关:。有人知道这个问题是否在Orbeon的更高版本中得到了解决吗 谢谢 -Michiel如

我运行的是旧版本的Orbeon表单,准确地说是3.9.0.rc1.201103220245 CE。最近,我经常看到运行它的JVM抛出OfMemoryError:Java堆空间错误。我分析了一个堆转储,发现org.orbeon.oxf.cache.MemoryCacheImpl的实例具有迄今为止最大的保留大小。我已经研究过了,但没有发现任何与之相关的bug报告。我发现Orbeon邮件列表上有一篇帖子可能与此相关:。有人知道这个问题是否在Orbeon的更高版本中得到了解决吗

谢谢


-Michiel

如果不花大量时间分析堆转储,就很难得出结论。Orbeon Forms维护许多缓存,MemoryCacheImpl就是其中之一,为了高效运行,它需要相当数量的内存

在某些情况下,这可能是太多的内存。如果这是一个问题,那么它可能是由错误内存泄漏、在Orbeon窗体上运行的窗体或应用程序出现问题,或者是在Orbeon窗体中可以更有效地执行的操作引起的。在这一点上,泄漏类别中没有公开的已知问题,但许多事情可以更有效地完成。自3.9以来,已经改进了许多方面,但仍有工作要做,这是本手册的一个项目

因此,我建议您在撰写本文时尝试升级到最新的稳定版本4.5,如果您仍然看到相同的问题,请参阅。如果是,请查看您的应用程序/表单中是否存在可能导致此问题的任何内容,查看是否可以增加堆大小或减少缓存大小