[pgpool-general: 3568] Re: "unnamed prepared statement does not exist" but I'm using PSQL 9.4?

Tatsuo Ishii ishii at postgresql.org
Tue Mar 24 07:05:33 JST 2015


> Installing "pgpool-regclass" fixed it.

Yes, it's a bug of pgpool-II. I have fixed it in the git repository so
that you don't need to install pgpool-regclass if you use PostgreSQL
9.4 or higher. Next minor version up will include the fix.
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese:http://www.sraoss.co.jp

> On 20 March 2015 at 14:38, Jose Baez <pepote at gmail.com> wrote:
> 
>> It is not a multistatement query.
>>
>> The SQL query that fails is too simple.
>>
>> here is Pgpool's log with log_statement = on
>>
>>
>> INSERT query that fails:
>>
>> pid 7712: connection received: host=80.26.xxx.xxx port=53957
>> pid 7712: statement: set DateStyle to 'ISO'
>> pid 7712: statement: set extra_float_digits to 2
>> pid 7712: statement: select oid, typbasetype from pg_type where typname =
>> 'lo'
>> pid 7712: statement: select pg_client_encoding()
>> pid 7712: statement: select current_schema()
>> pid 7712: statement: select nspname from pg_namespace n, pg_class c where
>> c.relnamespace=n.oid and c.oid='"recurso_gw_info"'::regclass
>> pid 7712: statement: select n.nspname, c.relname, a.attname, a.atttypid,
>> t.typname, a.attnum, a.attlen, a.atttypmod, a.attnotnull, c.relhasrules,
>> c.relkind, c.oid, pg_get_expr(d.adbin, d.adrelid), case t.typtype when 'd'
>> then t.typbasetype else 0 end, t.typtypmod, c.relhasoids from
>> (((pg_catalog.pg_class c inner join pg_catalog.pg_namespace n on n.oid =
>> c.relnamespace and c.relname = 'recurso_gw_info' and n.nspname = 'public')
>> inner join pg_catalog.pg_attribute a on (not a.attisdropped) and a.attnum >
>> 0 and a.attrelid = c.oid) inner join pg_catalog.pg_type t on t.oid =
>> a.atttypid) left outer join pg_attrdef d on a.atthasdef and d.adrelid =
>> a.attrelid and d.adnum = a.attnum order by n.nspname, c.relname, attnum
>> pid 7712: statement: select relhasoids, c.oid from pg_class c,
>> pg_namespace n where relname = 'recurso_gw_info' and nspname = 'public' and
>> c.relnamespace = n.oid
>> pid 7712: statement: select a.attname, a.atttypid from pg_index i,
>> pg_attribute a where indrelid=27659 and indnatts=1 and indisunique and
>> indexprs is null and indpred is null and i.indrelid = a.attrelid and
>> a.attnum=i.indkey[0] and attnotnull and atttypid in (23, 26)
>> pid 7712: statement: SELECT * , "ctid", "id_gw_info" FROM recurso_gw_info
>> where ctid = '(0,0)';select "ctid", "id_gw_info" from recurso_gw_info WHERE
>> nombre_recurso= 'T01' ORDER BY grupo_tetra_numero;
>> pid 7712: statement: BEGIN
>> pid 7712: pool_send_and_wait: Error or notice message from backend: : DB
>> node id: 0 backend pid: 10871 statement: insert into
>> "public"."recurso_gw_info" ("grupo_tetra_carpeta_nr",
>> "grupo_tetra_carpeta_nombre", "grupo_tetra_numero", "grupo_tetra_codigo",
>> "grupo_tetra_nombre", "grupo_tetra_tipo", "grupo_tetra_modo",
>> "nombre_recurso") values ($1, $2, $3, $4, $5, $6, $7, $8) returning ctid
>> message: unnamed prepared statement does not exist
>> pid 7712: statement: COMMIT
>>
>>
>> A SELECT query that runs OK:
>>
>>
>> pid 7714: connection received: host=80.26.xxx.xxx port=53955
>> pid 7714: statement: set DateStyle to 'ISO'
>> pid 7714: statement: set extra_float_digits to 2
>> pid 7714: statement: select oid, typbasetype from pg_type where typname =
>> 'lo'
>> pid 7714: statement: select pg_client_encoding()
>> pid 7714: statement: select current_schema()
>> pid 7714: statement: select nspname from pg_namespace n, pg_class c where
>> c.relnamespace=n.oid and c.oid='"recurso_gw_radio_config"'::regclass
>> pid 7714: statement: select n.nspname, c.relname, a.attname, a.atttypid,
>> t.typname, a.attnum, a.attlen, a.atttypmod, a.attnotnull, c.relhasrules,
>> c.relkind, c.oid, pg_get_expr(d.adbin, d.adrelid), case t.typtype when 'd'
>> then t.typbasetype else 0 end, t.typtypmod, c.relhasoids from
>> (((pg_catalog.pg_class c inner join pg_catalog.pg_namespace n on n.oid =
>> c.relnamespace and c.relname = 'recurso_gw_radio_config' and n.nspname =
>> 'public') inner join pg_catalog.pg_attribute a on (not a.attisdropped) and
>> a.attnum > 0 and a.attrelid = c.oid) inner join pg_catalog.pg_type t on
>> t.oid = a.atttypid) left outer join pg_attrdef d on a.atthasdef and
>> d.adrelid = a.attrelid and d.adnum = a.attnum order by n.nspname,
>> c.relname, attnum
>> pid 7714: statement: select relhasoids, c.oid from pg_class c,
>> pg_namespace n where relname = 'recurso_gw_radio_config' and nspname =
>> 'public' and c.relnamespace = n.oid
>> pid 7714: statement: select a.attname, a.atttypid from pg_index i,
>> pg_attribute a where indrelid=29183 and indnatts=1 and indisunique and
>> indexprs is null and indpred is null and i.indrelid = a.attrelid and
>> a.attnum=i.indkey[0] and attnotnull and atttypid in (23, 26)
>> pid 7714: statement: SELECT * , "ctid", "id_recurso_gw_radio_config" FROM
>> recurso_gw_radio_config where ctid = '(0,0)';select "ctid",
>> "id_recurso_gw_radio_config" from recurso_gw_radio_config WHERE
>> id_recurso_gw = 1;
>> pid 7714: statement: PREPARE
>> "_KEYSET_02D230E8"(tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid,tid)
>> as SELECT * , "ctid", "id_recurso_gw_radio_config" FROM
>> recurso_gw_radio_config  where ctid in
>> ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$20,$21,$22,$23,$24,$25,$26,$27,$28,$29,$30,$31,$32)
>> pid 7714: statement: EXECUTE
>> "_KEYSET_02D230E8"('(0,15)',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL)
>> pid 7714: statement: EXECUTE
>> "_KEYSET_02D230E8"('(0,15)',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL)
>> pid 7714: statement: DEALLOCATE "_KEYSET_02D230E8"
>>
>>
>>
>>


More information about the pgpool-general mailing list