Fix a dozen or so places that were passing unpredictable data strings
authorTom Lane
Fri, 22 Nov 2002 16:25:32 +0000 (16:25 +0000)
committerTom Lane
Fri, 22 Nov 2002 16:25:32 +0000 (16:25 +0000)
as elog format strings.  Hai-Chen Tu pointed out the problem in
contrib/dbmirror, but it wasn't the only such error.

contrib/cube/cubeparse.y
contrib/dbmirror/pending.c
contrib/rserv/rserv.c
contrib/seg/segparse.y
src/pl/plpython/plpython.c
src/pl/tcl/pltcl.c

index 95bc016431dfdc0e9748b8726453341ca20a721e..854912857bb8722faca972d8bd71447301b0c71f 100644 (file)
@@ -200,7 +200,7 @@ int cube_yyerror ( char *msg ) {
      );
 
   reset_parse_buffer();     
-  elog(ERROR, buf);
+  elog(ERROR, "%s", buf);
   return 0;
 }
 
index acf71082c5d334fa968b27ddabe478d4693e97af..79d875456d5ccbe1801e4e4a1ccd9f3cc39cef3c 100644 (file)
@@ -1,6 +1,6 @@
 /****************************************************************************
  * pending.c
- * $Id: pending.c,v 1.8 2002/11/22 16:04:41 momjian Exp $
+ * $Id: pending.c,v 1.9 2002/11/22 16:25:29 tgl Exp $
  *
  * This file contains a trigger for Postgresql-7.x to record changes to tables
  * to a pending table for mirroring.
@@ -253,7 +253,7 @@ storeKeyInfo(char *cpTableName, HeapTuple tTupleData,
        return -1;
    }
 #if defined DEBUG_OUTPUT
-   elog(NOTICE, "%s", cpKeyData);
+   elog(NOTICE, "KeyData: %s", cpKeyData);
 #endif
    saPlanData[0] = PointerGetDatum(cpKeyData);
 
@@ -268,7 +268,7 @@ storeKeyInfo(char *cpTableName, HeapTuple tTupleData,
        return -1;
    }
 #if defined DEBUG_OUTPUT
-   elog(NOTICE, "INSERT SUCCESFULL");
+   elog(NOTICE, "Insert successful");
 #endif
 
    return 0;
@@ -351,7 +351,7 @@ storeData(char *cpTableName, HeapTuple tTupleData, TupleDesc tTupleDesc,
        return -1;
    }
 #if defined DEBUG_OUTPUT
-   elog(NOTICE, "INSERT SUCCESFULL");
+   elog(NOTICE, "Insert successful");
 #endif
 
    return 0;
@@ -437,7 +437,7 @@ packageData(HeapTuple tTupleData, TupleDesc tTupleDesc,
        cpFieldName = DatumGetPointer(NameGetDatum(&tTupleDesc->attrs
                                         [iColumnCounter - 1]->attname));
 #if defined DEBUG_OUTPUT
-       elog(NOTICE, "%s", cpFieldName);
+       elog(NOTICE, "FieldName: %s", cpFieldName);
 #endif
        while (iDataBlockSize - iUsedDataBlock < strlen(cpFieldName) + 6)
        {
@@ -465,7 +465,7 @@ packageData(HeapTuple tTupleData, TupleDesc tTupleDesc,
 
        }
 #if defined DEBUG_OUTPUT
-       elog(NOTICE, "%s", cpFieldData);
+       elog(NOTICE, "FieldData: %s", cpFieldData);
        elog(NOTICE, "Starting format loop");
 #endif
        while (*cpUnFormatedPtr != 0)
@@ -499,7 +499,7 @@ packageData(HeapTuple tTupleData, TupleDesc tTupleDesc,
        sprintf(cpFormatedPtr, "' ");
        iUsedDataBlock = iUsedDataBlock + 2;
 #if defined DEBUG_OUTPUT
-       elog(NOTICE, "%s", cpDataBlock);
+       elog(NOTICE, "DataBlock: %s", cpDataBlock);
 #endif
 
    }                           /* for iColumnCounter  */
index 517289dc1cc544dca6b5fe2e8d6ebb35565c9d02..635fcce64a106ae957c87690500b0f4811c2127c 100644 (file)
@@ -132,7 +132,7 @@ _rserv_log_()
             GetCurrentTransactionId(), deleted, rel->rd_id, okey);
 
    if (debug)
-       elog(DEBUG3, sql);
+       elog(DEBUG3, "sql: %s", sql);
 
    ret = SPI_exec(sql, 0);
 
@@ -153,7 +153,7 @@ _rserv_log_()
                 deleted, okey);
 
        if (debug)
-           elog(DEBUG3, sql);
+           elog(DEBUG3, "sql: %s", sql);
 
        ret = SPI_exec(sql, 0);
 
@@ -177,7 +177,7 @@ _rserv_log_()
                 rel->rd_id, GetCurrentTransactionId(), okey);
 
        if (debug)
-           elog(DEBUG3, sql);
+           elog(DEBUG3, "sql: %s", sql);
 
        ret = SPI_exec(sql, 0);
 
index 9e18379bc88426e0c8c9a0bc4108d2d66ca87175..67f5b9f43dd51b300915126a6b0eda795ae447f2 100644 (file)
@@ -144,7 +144,7 @@ float seg_atof ( char *value ) {
   if ( errno ) {
     snprintf(buf, 256, "numeric value %s unrepresentable", value);
     reset_parse_buffer();     
-    elog(ERROR, buf);
+    elog(ERROR, "%s", buf);
   }
 
   return result;
@@ -175,7 +175,7 @@ int seg_yyerror ( char *msg ) {
      );
 
   reset_parse_buffer();     
-  elog(ERROR, buf);
+  elog(ERROR, "%s", buf);
   return 0;
 }
 
index 43c3427196196c90a588ce198d9e8f5f92abaf9b..099388674a65e51dc68c8812cd2afaa4d20713bf 100644 (file)
@@ -29,7 +29,7 @@
  * MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
  *
  * IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/pl/plpython/plpython.c,v 1.26 2002/10/19 22:10:58 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/pl/plpython/plpython.c,v 1.27 2002/11/22 16:25:30 tgl Exp $
  *
  *********************************************************************
  */
@@ -2733,7 +2733,7 @@ PLy_output(volatile int level, PyObject * self, PyObject * args)
        RERAISE_EXC();
    }
 
-   elog(level, sv);
+   elog(level, "%s", sv);
 
    RESTORE_EXC();
 
index 0210dfd8174d78b781c5f7cca35245e177a575ef..bebb82ebdf0b731d927c332623b6ec31de572f1f 100644 (file)
@@ -31,7 +31,7 @@
  *   ENHANCEMENTS, OR MODIFICATIONS.
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/pl/tcl/pltcl.c,v 1.66 2002/10/19 22:10:58 tgl Exp $
+ *   $Header: /cvsroot/pgsql/src/pl/tcl/pltcl.c,v 1.67 2002/11/22 16:25:32 tgl Exp $
  *
  **********************************************************************/
 
@@ -1303,7 +1303,7 @@ pltcl_elog(ClientData cdata, Tcl_Interp *interp,
     * and return to the caller (if not catched)
     ************************************************************/
    UTF_BEGIN;
-   elog(level, UTF_U2E(argv[2]));
+   elog(level, "%s", UTF_U2E(argv[2]));
    UTF_END;
    memcpy(&Warn_restart, &save_restart, sizeof(Warn_restart));
    return TCL_OK;