Bruce Momjian írta:

Patch applied. Thanks.

---------------------------------------------------------------------------


Hi!

on my timetravel.c I find a bug: after the
ALTER TABLE mytable drop column last_column_of_table;

the timetravel trigger say on UPDATE/DELETE:

ERROR: parser: parse error at end of input


Here is the patch for this bug


Böjthe Zoltán
--- timetravel.c.prev   2003-06-27 19:56:40.000000000 +0200
+++ timetravel.c        2003-09-02 14:53:21.000000000 +0200
@@ -306,7 +306,7 @@
                void    *pplan;
                Oid     *ctypes;
                char    sql[8192];
-               int     j;
+               char    separ=' ';
 
                /* allocate ctypes for preparation */
                ctypes = (Oid *) palloc(natts * sizeof(Oid));
@@ -319,11 +319,12 @@
                {
                        ctypes[i - 1] = SPI_gettypeid(tupdesc, i);
                        if(!(tupdesc->attrs[i - 1]->attisdropped))      /* skip 
dropped columns */
-                           snprintf(sql + strlen(sql), sizeof(sql) - strlen(sql), 
"$%d%s",
-                                       i, (i < natts) ? ", " : ")" );
-//                         snprintf(sql + strlen(sql), sizeof(sql) - strlen(sql), 
"$%d /* %d */ %s",
-//                                     i, ctypes[i-1], (i < natts) ? ", " : ")" );
+                       {
+                           snprintf(sql + strlen(sql), sizeof(sql) - strlen(sql), 
"%c$%d", separ,i);
+                           separ = ',';
+                       }
                }
+               snprintf(sql + strlen(sql), sizeof(sql) - strlen(sql), ")");
 
 //             elog(NOTICE, "timetravel (%s) update: sql: %s", relname, sql);
 
---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

               http://archives.postgresql.org

Reply via email to