java.lang.OutOfMemoryError:使用AMAZON RDS Postgresql批量插入期间的Java堆空间

问题描述

我尝试在出现此错误的地方插入 40k 条记录。对于 5 秒内发生的 15k 条记录,它工作正常。当我们批量插入 20k 条记录时出现此错误

在插入 15k 条记录后,我尝试批量更新限制 5000 条记录,但再次出错。

How to do multiple inserts in database using spring JDBC Template batch?

收到 504 错误,所以我像往常一样将 15k 记录的超时时间增加到 180 秒,它工作正常。当涉及到 20k 条记录时,它是不够的。

{ "log": "Exception in thread \"Postgresql-JDBC-SharedTimer-1\" java.lang.OutOfMemoryError: Java heap space\n" } { "log": "\tat java.base/java.io.bufferedoutputstream.<init> (bufferedoutputstream.java:75)\n" } { "log": "\tat org.postgresql.core.PGStream.changeSocket(PGStream.java:120)\n" } { "log": "\tat org.postgresql.core.PGStream.<init>(PGStream.java:62)\n" } { "log": "\tat org.postgresql.core.v3.ProtocolConnectionImpl.sendQueryCancel(ProtocolConnectionImpl.java:99)\n" } { "log": "\tat org.postgresql.jdbc2.AbstractJdbc2Connection.cancelQuery(AbstractJdbc2Connection.java:1200)\n" }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)