是否有日志选项,可以让tomcat记录坏的查询,而不是扔这个?Java中如何解决“请求的数组大小超过VM限制”错误?
SEVERE: java.lang.OutOfMemoryError: Requested array size exceeds VM limit
(试过日志级别为FULL,但只捕获以上)
这是没有足够的信息,以进一步调试
可选地,如果这可以固定通过分配更多的内存通过调整以下?
-Xms1024M -Xmx4096M -XX:MaxPermSize=256M
更新
-Xms6G -Xmx6G -XX:MaxPermSize=1G -XX:PermSize=512M
(上述作品似乎更好,不断监测)
你可以试试'-mx8g'或'-mx16g'吗?你有多少内存? – 2011-03-31 08:50:13
对于有这个问题的服务器是8G – ajreal 2011-03-31 08:52:19
我会尝试'-mx6g'或'-Xmx6g'(做这个事情)然而它很可能这不会有任何区别。如果你有一个工具来分析堆转储,你也可以尝试'-XX:+ HeapDumpOnOutOfMemoryError'。 – 2011-03-31 08:57:12