Received: from mail.psn.ne.jp (mail.psn.ne.jp [210.167.249.5]) by hub.org (8.9.3/8.9.3) with ESMTP id CAA81904 for ; Wed, 10 May 2000 02:08:18 -0400 (EDT) (envelope-from sakaida@psn.co.jp) Received: from ppp119 (ppp119.psn.ne.jp [210.167.249.119]) by mail.psn.ne.jp (8.9.1/3.7W) with SMTP id PAA09244; Wed, 10 May 2000 15:08:10 +0900 (JST) Date: Wed, 10 May 2000 15:13:56 +0900 From: SAKAIDA Masaaki To: "S.F. Lee" Cc: pgsql-interfaces@postgresql.org Subject: Re: ECPG failed and Postmaster getting bigger in using perl Pg In-Reply-To: <20000510022157.4467.qmail@web213.mail.yahoo.com> References: <20000510022157.4467.qmail@web213.mail.yahoo.com> Message-Id: <3918FE241C2.6546SAKAIDA@smtp.psn.ne.jp> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Mailer: Becky! ver 1.26 X-Archive-Number: 200005/80 "S.F. Lee" wrote: > After executing program(Test), I got different result > in each version of PostgreSQL, > such as: > > In PostgreSQL 6.5.3 + ecpg 2.7 : a1 = 10 b1 = > 11.100000 > > In PostgreSQL 7.0RC5 + ecpg 2.7 : sql_select--foo_1 > : Too few arguments in line 33. This is a bug of pre-processor in PostgreSQL-7.0RC5. The solutions of the bug: 1. Don't use a struct host variable. old) exec sql select * into :temp ... new) exec sql select a1,b1 into :temp.a1, :temp.b1 ... 2. Apply the next patch. *** postgresql-7.0RC5/src/interfaces/ecpg/preproc/type.c.orig Wed May 10 14:45:55 2000 --- postgresql-7.0RC5/src/interfaces/ecpg/preproc/type.c Wed May 10 14:46:43 2000 *************** *** 198,203 **** --- 198,209 ---- void ECPGdump_a_type(FILE *o, const char *name, struct ECPGtype * typ, const char *ind_name, struct ECPGtype * ind_typ, const char *prefix, const char *ind_prefix) { + if (ind_typ == NULL) + { + ind_typ = &ecpg_no_indicator; + ind_name = "no_indicator"; + } + switch (typ->typ) { case ECPGt_array: -- Regards, SAKAIDA Masaaki -- Osaka, Japan