Quiet repeated "loaded library" messages from child backends that are just
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 5 Jan 2009 13:57:12 +0000 (13:57 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 5 Jan 2009 13:57:12 +0000 (13:57 +0000)
re-loading a library already loaded into the postmaster.

ITAGAKI Takahiro

src/backend/utils/init/miscinit.c

index 74b4078254ef5bd038b26e6e7171dbd252b32051..926552b1f8dc9e2a47b6ed0e73edfce2529802fd 100644 (file)
@@ -1145,6 +1145,7 @@ load_libraries(const char *libraries, const char *gucname, bool restricted)
 {
        char       *rawstring;
        List       *elemlist;
+       int                     elevel;
        ListCell   *l;
 
        if (libraries == NULL || libraries[0] == '\0')
@@ -1166,6 +1167,18 @@ load_libraries(const char *libraries, const char *gucname, bool restricted)
                return;
        }
 
+       /*
+        * Choose notice level: avoid repeat messages when re-loading a library
+        * that was preloaded into the postmaster.  (Only possible in EXEC_BACKEND
+        * configurations)
+        */
+#ifdef EXEC_BACKEND
+       if (IsUnderPostmaster && process_shared_preload_libraries_in_progress)
+               elevel = DEBUG2;
+       else
+#endif
+               elevel = LOG;
+
        foreach(l, elemlist)
        {
                char       *tok = (char *) lfirst(l);
@@ -1185,7 +1198,7 @@ load_libraries(const char *libraries, const char *gucname, bool restricted)
                        filename = expanded;
                }
                load_file(filename, restricted);
-               ereport(LOG,
+               ereport(elevel,
                                (errmsg("loaded library \"%s\"", filename)));
                pfree(filename);
        }