Endeca DefaultFileStoreFactory组件

时间:2018-01-03 10:19:34

标签: atg endeca

最近,我遇到了Endeca DefaultFileStoreFactory组件的一些问题。 站点未启动,当检查此组件时,初始化属性将自动变为false。 我们正在提供一个临时解决方案来启动该网站。 你可以帮忙解释为什么会发生这种情况。

以下是服务器启动时看到的日志。

**** Error      Tue Jan 02 15:22:34 -03:00 2018 1514917354914   /       Unable to resolve component /atg/endeca/assembler/cartridge/manager/DefaultFileStoreFactory     java.lang.StackOverflowError
**** Error      Tue Jan 02 15:22:34 -03:00 2018 1514917354914   /               at java.util.TreeMap$NavigableSubMap$SubMapIterator.nextEntry(TreeMap.java:1700)
**** Error      Tue Jan 02 15:22:34 -03:00 2018 1514917354914   /               at java.util.TreeMap$NavigableSubMap$SubMapEntryIterator.next(TreeMap.java:1747)
**** Error      Tue Jan 02 15:22:34 -03:00 2018 1514917354914   /               at java.util.TreeMap$NavigableSubMap$SubMapEntryIterator.next(TreeMap.java:1741)

2 个答案:

答案 0 :(得分:2)

根据this oracle support ticket

超出了256k的默认堆栈大小,导致应用程序服务器日志记录中出现错误。 为了解决这个问题,必须增加Java堆栈的大小。使用JAVA_ARGS中的Xss参数(或JBoss上的JAVA_OPTS)配置默认Java堆栈大小。在许多情况下,此值默认为256k。加倍此值可解决此问题(-Xss512k)。最佳值取决于客户的具体应用需求。

答案 1 :(得分:1)

我有同样的情况。我同意增加 -Xss参数是解决问题的标准方式(原因是DefaultStoreFactory构建"树"基于使用递归算法的体验管理器内容 )。但我建议还要检查体验管理器的结构,以便减少未使用和无用的数据,在其他情况下 - 你需要保留这个"树"在内存(堆)中,它可以引发内存不足问题(实际上是我的情况:) :)