[pgsql-jp: 34862] Re: PostgreSQL8.0.1のecpg がコアダンプ

mitani mitani @ sraw.co.jp
2005年 2月 10日 (木) 11:24:46 JST


三谷@広島です.

> この件は、露骨にバグですね。とりあえずパッチを作っておきました。
> 
> #何というか、ecpgはこの手のつまらないバグが多い・・・
他にもバグを見つけました.
谷田さんのパッチを含めたパッチを作ってみました.

本家への報告,どうします? >谷田さん

(1)src/interfaces/ecpg/preproc/preproc.c 用のパッチ
=============================================================
--- preproc.c.org   2005-02-07 09:18:44.000000000 +0900
+++ preproc.c   2005-02-10 11:12:59.000000000 +0900
@@ -16841,7 +16841,7 @@
            if (FoundInto == 1)
                mmerror(PARSE_ERROR, ET_ERROR, "CREATE TABLE / AS SELECT may not
 specify INTO");

-           yyval.str = cat_str(8, make_str("create"), yyvsp[-6].str, make_str("table"), yyvsp[-4].str, yyvsp[-3].str, yyvsp[-2].str, yyvsp[0].str);
+           yyval.str = cat_str(7, make_str("create"), yyvsp[-6].str, make_str("table"), yyvsp[-4].str, yyvsp[-3].str, yyvsp[-2].str, yyvsp[0].str);
        }
     break;

@@ -16887,7 +16887,7 @@

   case 343:
 #line 1624 "preproc.y"
-    { yyval.str = cat_str(4, make_str("create"), yyvsp[-3].str, make_str("sequence"), yyvsp[-1].str, yyvsp[0].str); }
+    { yyval.str = cat_str(5, make_str("create"), yyvsp[-3].str, make_str("sequence"), yyvsp[-1].str, yyvsp[0].str); }
     break;

   case 344:
@@ -18715,7 +18715,7 @@
   case 700:
 #line 2707 "preproc.y"
     {
-               yyval.str = cat_str(55555, make_str("create domain"), yyvsp[-3].str, yyvsp[-2].str, yyvsp[-1].str, yyvsp[0].str);
+               yyval.str = cat_str(5, make_str("create domain"), yyvsp[-3].str, yyvsp[-2].str, yyvsp[-1].str, yyvsp[0].str);
            }
     break;

(2)src/interfaces/ecpg/preproc/preproc.y用のパッチ
=============================================================
--- preproc.y.org   2005-02-07 09:18:44.000000000 +0900
+++ preproc.y   2005-02-10 11:17:03.000000000 +0900
@@ -1580,7 +1580,7 @@
            if (FoundInto == 1)
                mmerror(PARSE_ERROR, ET_ERROR, "CREATE TABLE / AS SELECT may not specify INTO");

-           $$ = cat_str(8, make_str("create"), $2, make_str("table"), $4, $5, $6, $8);
+           $$ = cat_str(7, make_str("create"), $2, make_str("table"), $4, $5, $6, $8);
        }
        ;

@@ -1621,7 +1621,7 @@
  *****************************************************************************/

 CreateSeqStmt: CREATE OptTemp SEQUENCE qualified_name OptSeqList
-           { $$ = cat_str(4, make_str("create"), $2, make_str("sequence"), $4,$5); }
+           { $$ = cat_str(5, make_str("create"), $2, make_str("sequence"), $4,$5); }
        ;

 AlterSeqStmt: ALTER SEQUENCE qualified_name OptSeqList
@@ -2705,7 +2705,7 @@

 CreateDomainStmt:  CREATE DOMAIN_P any_name opt_as Typename ColQualList
            {
-               $$ = cat_str(55555, make_str("create domain"), $3, $4, $5, $6);
+               $$ = cat_str(5, make_str("create domain"), $3, $4, $5, $6);
            }
        ;


=============================
三谷 篤<mitani @ sraw.co.jp>
=============================




pgsql-jp メーリングリストの案内