postgresql 使用JTA atomikos连接多个postgres DB时出现问题

fdbelqdn  于 2023-01-05  发布在  PostgreSQL
关注(0)|答案(1)|浏览(231)

我面临的问题,而连接到2 postgres数据库使用JTA。
如果我分别对每个数据库执行查询,一切看起来都很好,但是当我同时执行这两个数据库时,会得到下面的错误,我已经在postgres.conf中将max_prepared_transactions设置为100
原因是:org.postgresql.util.错误:已禁用准备好的事务提示:将max_prepared_transactions设置为非零值。

fzwojiic

fzwojiic1#

问题是您已经在postgresql.conf文件中准备了禁用的事务,默认情况下禁用此功能,这使得默认配置为max_prepared_transactions = 0,因此,如果您使用Atomikos为事务启用2PC协议,则必须在postgresql.conf中修改此变量。
示例:

  1. max_prepared_transactions = 64 # zero disables the feature

现在,这被称为Postgres的静态配置,这意味着为了工作,需要在创建服务器时配置它,或者在设置此值后重新启动服务器。
希望这能帮上忙。
有关此配置的详细信息,请单击此处:https://postgresqlco.nf/doc/en/param/max_prepared_transactions/

相关问题