List:Commits« Previous MessageNext Message »
From:Jonas Oreland Date:October 26 2009 2:47pm
Subject:bzr push into mysql-5.1-telco-7.0 branch (jonas:3162 to 3163) Bug#48232
View as plain text  
 3163 Jonas Oreland	2009-10-26
      ndb - bug#48232 - improve error reporting when failure to recreate/drop object during restore of schema

    modified:
      storage/ndb/include/mgmapi/ndbd_exit_codes.h
      storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp
      storage/ndb/src/kernel/error/ndbd_exit_codes.c
 3162 Jonas Oreland	2009-10-26 [merge]
      merge 63 to 70

    modified:
      storage/ndb/include/mgmapi/ndbd_exit_codes.h
      storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp
      storage/ndb/src/kernel/error/ndbd_exit_codes.c
      storage/ndb/test/ndbapi/testSystemRestart.cpp
      storage/ndb/test/run-test/daily-basic-tests.txt
=== modified file 'storage/ndb/include/mgmapi/ndbd_exit_codes.h'
--- a/storage/ndb/include/mgmapi/ndbd_exit_codes.h	2009-10-26 14:21:02 +0000
+++ b/storage/ndb/include/mgmapi/ndbd_exit_codes.h	2009-10-26 14:40:19 +0000
@@ -153,6 +153,7 @@ typedef ndbd_exit_classification_enum nd
 
 #define NDBD_EXIT_INVALID_LCP_FILE          2352
 #define NDBD_EXIT_INSUFFICENT_NODES         2353
+#define NDBD_EXIT_RESTORE_SCHEMA            2355
 
 const char *
 ndbd_exit_message(int faultId, ndbd_exit_classification *cl);

=== modified file 'storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp'
--- a/storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp	2009-10-22 11:33:08 +0000
+++ b/storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp	2009-10-26 14:40:19 +0000
@@ -4117,8 +4117,17 @@ Dbdict::restartCreateObj_parse(Signal* s
   ErrorInfo error;
   const OpInfo& info = getOpInfo(op_ptr);
   (this->*(info.m_parse))(signal, false, op_ptr, handle, error);
-  ndbrequire(!hasError(error));
   releaseSections(handle);
+  if (unlikely(hasError(error)))
+  {
+    jam();
+    char msg[128];
+    BaseString::snprintf(msg, sizeof(msg),
+                         "Failure to recreate object during restart, error %u"
+                         " Please follow instructions from \'perror --ndb %u\'"
+                         ,error.errorCode, error.errorCode);
+    progError(__LINE__, NDBD_EXIT_RESTORE_SCHEMA, msg);
+  }
   ndbrequire(!hasError(error));
 
   c_restartRecord.m_op_cnt++;
@@ -4217,6 +4226,16 @@ Dbdict::restartDropObj(Signal* signal, 
   const OpInfo& info = getOpInfo(op_ptr);
   (this->*(info.m_parse))(signal, false, op_ptr, handle, error);
   releaseSections(handle);
+  if (unlikely(hasError(error)))
+  {
+    jam();
+    char msg[128];
+    BaseString::snprintf(msg, sizeof(msg),
+                         "Failure to drop object during restart, error %u"
+                         " Please follow instructions from \'perror --ndb %u\'"
+                         ,error.errorCode, error.errorCode);
+    progError(__LINE__, NDBD_EXIT_RESTORE_SCHEMA, msg);
+  }
   ndbrequire(!hasError(error));
 
   c_restartRecord.m_op_cnt++;

=== modified file 'storage/ndb/src/kernel/error/ndbd_exit_codes.c'
--- a/storage/ndb/src/kernel/error/ndbd_exit_codes.c	2009-10-26 14:21:02 +0000
+++ b/storage/ndb/src/kernel/error/ndbd_exit_codes.c	2009-10-26 14:40:19 +0000
@@ -172,6 +172,8 @@ static const ErrStruct errArray[] =
    
    {NDBD_EXIT_UNSUPPORTED_VERSION, XRE, "Unsupported version" },
    
+   {NDBD_EXIT_RESTORE_SCHEMA, XCR, "Failure to restore schema" },
+   
    /* Sentinel */
    {0, XUE,
     "No message slogan found (please report a bug if you get this error code)"}


Attachment: [text/bzr-bundle] bzr/jonas@mysql.com-20091026144019-nk3vdudt7tqj5892.bundle
Thread
bzr push into mysql-5.1-telco-7.0 branch (jonas:3162 to 3163) Bug#48232Jonas Oreland26 Oct