Issue #952380 by drewish: Handle call to watchdog before dbtng initialized
authorMike Ryan
Tue, 19 Apr 2011 15:43:33 +0000 (11:43 -0400)
committerMike Ryan
Tue, 19 Apr 2011 15:43:33 +0000 (11:43 -0400)
CHANGELOG.txt
migrate.module

index 85e6497..069a241 100644 (file)
@@ -10,6 +10,7 @@ Bug fixes
 - #1132034 - Don't assume entity is a stdClass. NOTE: Any field handler prepare() 
   or complete() methods you have defined must also be changed to not specify stdClass
   for the $entity argument.
+- #952380 - Handle call to watchdog before dbtng initialized.
 - #1126108 - Fix undefined variables in XML error handling.
 - #1117602 - Bad counts reported on bulk rollback.
 - #1118480 - Document _name arguments to file fields.
index f7aa32a..4bb3b86 100755 (executable)
@@ -361,14 +361,11 @@ function migrate_get_module_apis($reset = FALSE) {
  * @param array $log_entry
  */
 function migrate_watchdog($log_entry) {
-  // Validate that Migration is registered (if we get called due to an error
-  // during the registry build, we're screwed)
-  $name = db_select('autoload_registry', 'r')
-          ->fields('r', array('name'))
-          ->condition('name', 'Migration')
-          ->condition('type', 'class')
-          ->execute()
-          ->fetchField();
+  // Validate that Migration is registered. Don't use DBTNG so we can carry on
+  // if there's a notice/warning during the registry rebuild.
+  $name = db_result(db_query("SELECT r.name
+    FROM {autoload_registry} r
+    WHERE name = 'Migration' AND type = 'class'"));
   if ($name) {
     if ($migration = Migration::currentMigration()) {
       switch ($log_entry['severity']) {