Postgresql 用于同时运行的查询的速度表已存在错误

Postgresql 用于同时运行的查询的速度表已存在错误,postgresql,create-table,temp,drop,Postgresql,Create Table,Temp,Drop,我正在运行多个查询(在不同的会话中),这些查询使用以下代码,有时是并行的,我收到错误消息,说临时表已经存在。我的印象是,临时表只是在后台处理中使用某种随机名称,这样它们就不会相互干扰: select country_id, product_category_id, sum(units) as total_units into temp totals from schema.table group by country_id, product_category_id; 我明白了: 查询失败:错误

我正在运行多个查询(在不同的会话中),这些查询使用以下代码,有时是并行的,我收到错误消息,说临时表已经存在。我的印象是,临时表只是在后台处理中使用某种随机名称,这样它们就不会相互干扰:

select country_id, product_category_id, sum(units) as total_units
into temp totals
from schema.table
group by country_id, product_category_id;
我明白了:

查询失败:错误:关系“总计”已存在

Postgres版本为9.4,这仅在使用pgbouncer端口时发生

我做错什么了吗?我应该改用创建临时表吗


谢谢,

这是pgbouncer设置的,我们将pool_模式作为事务,一旦我们将其更改为session,它就可以正常工作了

也许您有一个名为
totals的常规表
?顺便说一句:建议使用符合标准的
create table。。作为选择,而不是Postgres特定的选择。。进入from.
与您的问题无关,但是:Postgres 9.4是您应该尽快计划升级。我检查了,表totals只存在于pg_temp_NNNN模式中,您是否可以在一个会话中多次运行该语句?默认设置是在会话(=连接)关闭之前保留临时表。我注意到只有在使用pgbouncer端口时才会发生这种情况,我将把它添加到查询中