List:Commits« Previous MessageNext Message »
From:Kristofer Pettersson Date:November 6 2008 4:29pm
Subject:bzr commit into mysql-5.0-bugteam branch (kristofer.pettersson:2702)
Bug#19027
View as plain text  
#At file:///home/thek/Development/cpp/mysqlbzr/mysql-5.0-bug19027/

 2702 Kristofer Pettersson	2008-11-06
      Bug#19027 MySQL 5.0 starts even with Fatal InnoDB errors
            
      If the InnoDB SE fails to initialize during server start up, there is
      no automatic mechanism for client applications to detect that the meta data
      has changed.
            
      This patch provide a solution to this issue so that if the InnoDB,
      CSV or MyISAM SE plugins fail the server won't go online.
modified:
  sql/handler.cc

per-file messages:
  sql/handler.cc
    * Added hard coded checks to guarantee that some storage engine are 
    successful in starting up before the server goes online.
=== modified file 'sql/handler.cc'
--- a/sql/handler.cc	2008-05-17 07:53:47 +0000
+++ b/sql/handler.cc	2008-11-06 15:37:59 +0000
@@ -481,7 +481,23 @@ int ha_init()
     if (!(*types)->init || !(*types)->init())
       ha_was_inited_ok(types);
     else
+    {
+      /*
+       InnoDB, MyISAM and CSV must succeed in loading before the server is
+       allowed to start. This is a temporary solution until a dependency checker
+       is implemented.
+      */
+      if (!my_strcasecmp(&my_charset_latin1, (*types)->name, "InnoDB") ||
+          !my_strcasecmp(&my_charset_latin1, (*types)->name, "MyISAM") ||
+          !my_strcasecmp(&my_charset_latin1, (*types)->name, "CSV"))
+      {
+        error= 1;
+      }
+      /*
+        Disable failing plugins
+      */
       (*types)->state= SHOW_OPTION_DISABLED;
+    }
   }
 
   DBUG_ASSERT(total_ha < MAX_HA);

Thread
bzr commit into mysql-5.0-bugteam branch (kristofer.pettersson:2702)Bug#19027Kristofer Pettersson6 Nov