Roxen.git / server / base_server / roxen.pike

version» Context lines:

Roxen.git/server/base_server/roxen.pike:1:   // This file is part of Roxen WebServer.   // Copyright © 1996 - 2009, Roxen IS.   //   // The Roxen WebServer main program.   //   // Per Hedbor, Henrik Grubbström, Pontus Hagland, David Hedbor and others.   // ABS and suicide systems contributed freely by Francesco Chemolli    - constant cvs_version="$Id: roxen.pike,v 1.1091 2011/11/14 00:13:57 mast Exp $"; + constant cvs_version="$Id: roxen.pike,v 1.1092 2011/11/23 10:12:46 grubba Exp $";      //! @appears roxen   //!   //! The Roxen WebServer main program.      // The argument cache. Used by the image cache.   ArgCache argcache;      // Some headerfiles   #define IN_ROXEN
Roxen.git/server/base_server/roxen.pike:3313: Inside #if undefined(__NT__)
   report_debug("Anti-Block System Disabled.\n");    return;    }    report_debug("**** %s: ABS engaged!\n"    "Waited more than %d minute(s).\n",    ctime(time()) - "\n",    query("abs_timeout"));    // Paranoia exit in case describe_all_threads below hangs.    signal(signum("SIGALRM"), low_engage_abs);    int t = alarm(20); +  report_debug("\nTrying to dump backlog: \n"); +  if (mixed err = catch { +  // Catch for paranoia reasons. +  describe_all_threads(); +  }) +  werror (describe_backtrace (err));   #ifdef THREADS -  report_debug("Handler queue:\n"); +  report_debug("\nHandler queue:\n");    if (mixed err = catch { -  +  t = alarm(20); // Restart the timeout timer.    array(mixed) queue = handle_queue->buffer[handle_queue->r_ptr..];    foreach(queue, mixed v) {    if (!v) continue;    if (!arrayp(v)) {    report_debug(" *** Strange entry: %O ***\n", v);    } else {    report_debug(" %{%O, %}\n", v/({}));    }    }    })    werror (describe_backtrace (err));   #endif -  report_debug("Trying to dump backlog: \n"); -  if (mixed err = catch { -  // Catch for paranoia reasons. -  describe_all_threads(); -  }) -  werror (describe_backtrace (err)); +     low_engage_abs();   }      void restart_if_stuck (int force)   //! @note   //! Must be called from the backend thread due to Linux peculiarities.   {    remove_call_out(restart_if_stuck);    if (!(query("abs_engage") || force))    return;