Changeset: 8ea7948e0b81 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=8ea7948e0b81
Modified Files:
        gdk/gdk_tracer.c
Branch: Jun2020
Log Message:

Write warning, error, and critical messages to stderr.
Also write them to the tracer file if there is one, but don't create
one just for these.


diffs (56 lines):

diff --git a/gdk/gdk_tracer.c b/gdk/gdk_tracer.c
--- a/gdk/gdk_tracer.c
+++ b/gdk/gdk_tracer.c
@@ -433,6 +433,27 @@ GDKtracer_log(const char *file, const ch
        if ((p = strchr(buffer, '\n')) != NULL)
                *p = '\0';
 
+       if (comp == GDK && (level == M_CRITICAL || level == M_ERROR)) {
+               /* append message to GDKerrbuf (if set) */
+               char *buf = GDKerrbuf;
+               if (buf) {
+                       size_t n = strlen(buf);
+                       snprintf(buf + n, GDKMAXERRLEN - n,
+                                "%s%s: %s%s%s\n",
+                                GDKERROR, func, msg,
+                                syserr ? ": " : "",
+                                syserr ? syserr : "");
+               }
+       }
+
+       if (level == M_CRITICAL || level == M_ERROR || level == M_WARNING) {
+               fprintf(stderr, "#%s: %s: %s%s%s%s\n",
+                       MT_thread_getname(), func, GDKERROR,
+                       msg, syserr ? ": " : "",
+                       syserr ? syserr : "");
+               if (active_tracer == NULL || active_tracer == stderr)
+                       return;
+       }
        MT_lock_set(&lock);
        if (file_name[0] == 0) {
                _GDKtracer_init_basic_adptr();
@@ -451,24 +472,6 @@ GDKtracer_log(const char *file, const ch
        // is still in the buffer which it never gets flushed.
        if (level == cur_flush_level || level == M_CRITICAL || level == M_ERROR)
                fflush(active_tracer);
-       if (level == M_CRITICAL && active_tracer != stderr) {
-               fprintf(stderr, "#%s: %s: %s%s%s%s\n",
-                       MT_thread_getname(), func, GDKERROR,
-                       msg, syserr ? ": " : "",
-                       syserr ? syserr : "");
-       }
-       if (comp == GDK && (level == M_CRITICAL || level == M_ERROR)) {
-               /* append message to GDKerrbuf (if set) */
-               char *buf = GDKerrbuf;
-               if (buf) {
-                       size_t n = strlen(buf);
-                       snprintf(buf + n, GDKMAXERRLEN - n,
-                                "%s%s: %s%s%s\n",
-                                GDKERROR, func, msg,
-                                syserr ? ": " : "",
-                                syserr ? syserr : "");
-               }
-       }
 }
 
 
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to