gpt4 book ai didi

java - org.postgresql.util.PSQLException : ERROR: out of shared memory

转载 作者:行者123 更新时间:2023-12-01 15:43:19 27 4
gpt4 key购买 nike

我正在使用 JAVA 调用一个具有超过 200 个 DROP 表语句的函数,并且收到 org.postgresql.util.PSQLException: ERROR: out of共享内存。我应该采取什么方法来避免共享内存?

PS:限制是我无法更改与 PostgresSQL 相关的任何参数。

最佳答案

如果错误原因在服务器端:在 PostgreSQL 中,函数始终在事务内执行。 DO block 是匿名函数,处理方式相同。而且,因为即使像 CREATEDROP 这样的 DML 命令在 PostgreSQL 中也是事务性的,这些命令也会对用于 ROLLBACKCOMMIT 的常用资源造成压力。

我的猜测是,删除大量大表会占用大量内存。因此,如果您的函数中不需要事务行为,最简单的方法是将大函数拆分为几个较小的函数。在单独的事务中调用每个函数。

关于java - org.postgresql.util.PSQLException : ERROR: out of shared memory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7634871/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com