Notes错误:JVM:尝试检索Java代理附件失败



使用JDBC连接到POSTGREE数据库时遇到问题。Lotus在控制台上出现以下错误:

16/02/2012 15:34:36   Agent  error: JVMDUMP006I Processando Evento de Dump "systhrow",  detalhe "java/lang/OutOfMemoryError" - Aguarde. 
16/02/2012 15:34:36   Agent  error: JVMDUMP032I  
16/02/2012 15:34:36   Agent  error: JVMDUMP010I Snap Dump gravado em /local/notesdata/Snap.20120216.153437.18971.0001.trc 
16/02/2012 15:34:36   Agent  error: JVMDUMP032I  
16/02/2012 15:34:36   Agent  error: JVMDUMP010I Heap Dump gravado em /local/notesdata/heapdump.20120216.153437.18971.0002.phd 
16/02/2012 15:34:36   Agent  error: JVMDUMP032I  
16/02/2012 15:34:37   Agent  error: JVMDUMP010I Java Dump gravado em /local/notesdata/javacore.20120216.153437.18971.0003.txt 
16/02/2012 15:34:37   Agent  error: JVMDUMP013I Evento de Dump Processado "systhrow", detalhe "java/lang/OutOfMemoryError". 
16/02/2012 15:34:37   Agent  error: Exce∑∫∑˙o no encadeamento "Thread-60"
16/02/2012 15:34:37   Agent  error: java.lang.OutOfMemoryError
16/02/2012 15:34:37   Agent  error:  at 
16/02/2012 15:34:37   Agent  error: java.util.Arrays
16/02/2012 15:34:37   Agent  error: .
16/02/2012 15:34:37   Agent  error: copyOfRange
16/02/2012 15:34:37   Agent  error: (
16/02/2012 15:34:37   Agent  error: Arrays.java
16/02/2012 15:34:37   Agent  error: :
16/02/2012 15:34:37   Agent  error: 4
16/02/2012 15:34:37   Agent  error: 0
16/02/2012 15:34:37   Agent  error: 5
16/02/2012 15:34:37   Agent  error: 4
16/02/2012 15:34:37   Agent  error: )
16/02/2012 15:34:37   Agent  error:  at 
16/02/2012 15:34:37   Agent  error: java.util.Arrays
16/02/2012 15:34:37   Agent  error: .
16/02/2012 15:34:37   Agent  error: copyOf
16/02/2012 15:34:37   Agent  error: (
16/02/2012 15:34:37   Agent  error: Arrays.java
16/02/2012 15:34:37   Agent  error: :
16/02/2012 15:34:37   Agent  error: 3
16/02/2012 15:34:37   Agent  error: 7
16/02/2012 15:34:37   Agent  error: 8
16/02/2012 15:34:37   Agent  error: 6
16/02/2012 15:34:37   Agent  error: )
16/02/2012 15:34:37   Agent  error:  at 
16/02/2012 15:34:37   Agent  error: java.io.ByteArrayOutputStream
16/02/2012 15:34:37   Agent  error: .
16/02/2012 15:34:37   Agent  error: write
16/02/2012 15:34:37   Agent  error: (
16/02/2012 15:34:37   Agent  error: ByteArrayOutputStream.java
16/02/2012 15:34:37   Agent  error: :
16/02/2012 15:34:37   Agent  error: 9
16/02/2012 15:34:37   Agent  error: 3
16/02/2012 15:34:37   Agent  error: )
16/02/2012 15:34:37   Agent  error:  at 
16/02/2012 15:34:37   Agent  error: lotus.domino.ClassHashtable
16/02/2012 15:34:37   Agent  error: .
16/02/2012 15:34:37   Agent  error: explodeArchive
16/02/2012 15:34:37   Agent  error: (Unknown Source)
16/02/2012 15:34:37   Agent  error:  at 
16/02/2012 15:34:37   Agent  error: lotus.domino.ClassHashtable
16/02/2012 15:34:37   Agent  error: .
16/02/2012 15:34:37   Agent  error: addAttachment
16/02/2012 15:34:37   Agent  error: (Unknown Source)
16/02/2012 15:34:37   Agent  error:  at 
16/02/2012 15:34:37   Agent  error: lotus.domino.AgentLoader
16/02/2012 15:34:37   Agent  error: .
16/02/2012 15:34:37   Agent  error: addAttachment
16/02/2012 15:34:37   Agent  error: (Unknown Source)
16/02/2012 15:34:37   JVM: The addAttachment (Ljava/lang/String;[B)V() method failed.

清理的异常是:

JVMDUMP006I Processando Evento de Dump "systhrow",  detalhe "java/lang/OutOfMemoryError" - Aguarde. 
JVMDUMP032I  
JVMDUMP010I Snap Dump gravado em /local/notesdata/Snap.20120216.153437.18971.0001.trc 
JVMDUMP032I  
JVMDUMP010I Heap Dump gravado em /local/notesdata/heapdump.20120216.153437.18971.0002.phd 
JVMDUMP032I  
JVMDUMP010I Java Dump gravado em /local/notesdata/javacore.20120216.153437.18971.0003.txt 
JVMDUMP013I Evento de Dump Processado "systhrow", detalhe "java/lang/OutOfMemoryError". 
Exce∑∫∑˙o no encadeamento "Thread-60"
java.lang.OutOfMemoryError
 at java.util.Arrays.copyOfRange(Arrays.java:4054)
 at java.util.Arrays.copyOf(Arrays.java:3786)
 at java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:93)
 at lotus.domino.ClassHashtable.explodeArchive(Unknown Source)
 at lotus.domino.ClassHashtable.addAttachment(Unknown Source)
 at lotus.domino.AgentLoader.addAttachment(Unknown Source)
JVM: The addAttachment (Ljava/lang/String;[B)V() method failed.

有人知道如何解决这个问题吗?

所以重要的部分是:

lotus.domino.AgentLoader.addAttachment(Unknown Source)

AgentLoader.addAttachment是在代理首次开始执行时运行的方法。它所做的是检查代理中包含的任何JAR,并下载(如果在客户端上),并在将它们加载到JVM之前将它们分离到系统。

当您的代理完成后,它会清理这些。因此,每次代理运行时都必须执行此步骤。

出现此错误的原因有很多。

原因1:(主要原因)

在网络和处理中将load/jars分离到系统中都存在开销。如果负载过重,系统可能没有足够的内存来完成操作。

原因2:

某些第三方API将无法以这种方式工作。举个例子,我看到过谷歌API以这种方式失败。

原因3:

V8.0(SPR KPAL6YWRN9)中存在与web服务有关的内存泄漏。这一问题已得到解决。

如何解决问题:

删除代理中包含的所有jar,并将它们放入jvm/lib/ext文件夹中。您需要重新启动Domino/Notes。然后,JVM将只加载一次jar。

如果此时仍然出现错误,那么很可能是另一个Java代理在自身之后没有正确清理。

最新更新