Index: includes/database.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/Attic/database.inc,v
retrieving revision 1.92.2.2
diff -u -r1.92.2.2 database.inc
--- includes/database.inc	9 Jul 2008 21:48:28 -0000	1.92.2.2
+++ includes/database.inc	22 Aug 2008 17:56:47 -0000
@@ -130,7 +130,15 @@
     install_goto('install.php');
   }
 
-  if (!isset($db_conns[$name])) {
+  $real_name = $name;
+  // open a dedicated connection for watchdog entries
+  // to ensure that entries are written even if other tables locked
+  if ('dedicated_watchdog_connection' == $name) {
+    $name = 'default';
+  }
+
+  if (!isset($db_conns[$real_name])) {
+
     // Initiate a new connection, using the named DB URL specified.
     if (is_array($db_url)) {
       $connect_url = array_key_exists($name, $db_url) ? $db_url[$name] : $db_url['default'];
@@ -149,13 +157,13 @@
       _db_error_page("The database type '". $db_type ."' is unsupported. Please use either 'mysql' or 'mysqli' for MySQL, or 'pgsql' for PostgreSQL databases.");
     }
 
-    $db_conns[$name] = db_connect($connect_url);
+    $db_conns[$real_name] = db_connect($connect_url);
   }
 
   $previous_name = $active_name;
   // Set the active connection.
-  $active_name = $name;
-  $active_db = $db_conns[$name];
+  $active_name = $real_name;
+  $active_db = $db_conns[$real_name];
 
   return $previous_name;
 }
Index: modules/dblog/dblog.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/dblog/dblog.module,v
retrieving revision 1.21.2.2
diff -u -r1.21.2.2 dblog.module
--- modules/dblog/dblog.module	9 Apr 2008 21:11:46 -0000	1.21.2.2
+++ modules/dblog/dblog.module	22 Aug 2008 17:56:47 -0000
@@ -127,7 +127,7 @@
 }
 
 function dblog_watchdog($log = array()) {
-  $current_db = db_set_active();
+  $current_db = db_set_active('dedicated_watchdog_connection');
   db_query("INSERT INTO {watchdog}
     (uid, type, message, variables, severity, link, location, referer, hostname, timestamp)
     VALUES
