Commit e77095bc authored by unknown's avatar unknown
Browse files

Merge mysql.com:/home/stewart/Documents/MySQL/4.1/main

into  mysql.com:/home/stewart/Documents/MySQL/4.1/mgmd

parents 66aef256 7d325ef2
Loading
Loading
Loading
Loading
+1 −9
Original line number Diff line number Diff line
@@ -553,7 +553,6 @@ extern const GlobalSignalNumber NO_OF_SIGNAL_NAMES;
#define GSN_STATISTICS_CONF             454

#define GSN_START_ORD                   455
/* 456 unused */
/* 457 unused */

#define GSN_EVENT_SUBSCRIBE_REQ         458
@@ -835,14 +834,6 @@ extern const GlobalSignalNumber NO_OF_SIGNAL_NAMES;
/* Start Global Replication */
#define GSN_GREP_REQ                    656

/**
 * Management server
 */
#define GSN_MGM_LOCK_CONFIG_REQ		657
#define GSN_MGM_LOCK_CONFIG_REP		658
#define GSN_MGM_UNLOCK_CONFIG_REQ	659
#define GSN_MGM_UNLOCK_CONFIG_REP	660

#define GSN_UTIL_CREATE_LOCK_REQ        132
#define GSN_UTIL_CREATE_LOCK_REF        133
#define GSN_UTIL_CREATE_LOCK_CONF       188
@@ -900,6 +891,7 @@ extern const GlobalSignalNumber NO_OF_SIGNAL_NAMES;
#define GSN_RESUME_REQ                  682
#define GSN_STOP_REQ                    443
#define GSN_STOP_REF                    444
#define GSN_STOP_CONF                   456
#define GSN_API_VERSION_REQ             697
#define GSN_API_VERSION_CONF            698

+2 −3
Original line number Diff line number Diff line
@@ -49,12 +49,11 @@ class ApiVersionConf {
   */
  friend class MgmtSrv;  
public:
  STATIC_CONST( SignalLength = 3 );
  STATIC_CONST( SignalLength = 4 );
  Uint32 senderRef; 
  Uint32 nodeId; //api node id
  Uint32 version; // Version of API node

  
  Uint32 inet_addr;
};

#endif
+3 −3
Original line number Diff line number Diff line
@@ -133,9 +133,9 @@ public:
    CreateLogBytes = 48,
    InfoEvent = 49,

    //GREP
    GrepSubscriptionInfo = 52,
    GrepSubscriptionAlert = 53,
    // SINGLE USER
    SingleUser = 52,
    /* unused 53 */

    //BACKUP
    BackupStarted = 54,
+9 −1
Original line number Diff line number Diff line
@@ -67,6 +67,13 @@ public:
  static bool getStopAbort(const Uint32 & requestInfo);
};

struct StopConf
{
  STATIC_CONST( SignalLength = 2 );
  Uint32 senderData;
  Uint32 nodeState;
};

class StopRef 
{
  /**
@@ -86,7 +93,8 @@ public:
    OK = 0,
    NodeShutdownInProgress = 1,
    SystemShutdownInProgress = 2,
    NodeShutdownWouldCauseSystemCrash = 3
    NodeShutdownWouldCauseSystemCrash = 3,
    TransactionAbortFailed = 4
  };
  
public:
+12 −457
Original line number Diff line number Diff line
@@ -105,9 +105,8 @@ const EventLoggerBase::EventRepLogLevelMatrix EventLoggerBase::matrix[] = {
  { EventReport::CreateLogBytes,    LogLevel::llInfo, 11, Logger::LL_INFO },
  { EventReport::InfoEvent,         LogLevel::llInfo,  2, Logger::LL_INFO },

  //Global replication
  { EventReport::GrepSubscriptionInfo,  LogLevel::llGrep, 7, Logger::LL_INFO},
  { EventReport::GrepSubscriptionAlert, LogLevel::llGrep, 7, Logger::LL_ALERT},
  //Single User
  { EventReport::SingleUser,  LogLevel::llInfo, 7, Logger::LL_INFO},

  // Backup
  { EventReport::BackupStarted, LogLevel::llBackup, 7, Logger::LL_INFO },
@@ -800,473 +799,29 @@ EventLogger::getText(char * m_text, size_t m_text_len,
	       );
    break;
  }
  case EventReport::GrepSubscriptionInfo : 
  case EventReport::SingleUser : 
  {   
    GrepEvent::Subscription event  = (GrepEvent::Subscription)theData[1];
    switch(event) {
    case GrepEvent::GrepSS_CreateSubIdConf: 
    switch (theData[1])
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::SSCoord: Created subscription id"
		 " (subId=%d,SubKey=%d)"
		 " Return code: %d.",
		 subId,
		 subKey,
		 err);
      break;
    }      
    case GrepEvent::GrepPS_CreateSubIdConf: 
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::PSCoord: Created subscription id" 
		 " (subId=%d,SubKey=%d)"
		 " Return code: %d.",
		 subId,
		 subKey,
		 err);
      break;
    }
    case GrepEvent::GrepSS_SubCreateConf: 
    {
      const int subId   = theData[2];
      const int subKey  = theData[3];
      const int err     = theData[4];
      const int nodegrp = theData[5];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::SSCoord: Created subscription using"
		 " (subId=%d,SubKey=%d)" 
		 " in primary system. Primary system has %d nodegroup(s)."
		 " Return code: %d",
		 subId,
		 subKey,
		 nodegrp,
		 err);
      break;
    }
    case GrepEvent::GrepPS_SubCreateConf: 
    {
      const int subId   = theData[2];
      const int subKey  = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::PSCoord: All participants have created "
		 "subscriptions"
		 " using (subId=%d,SubKey=%d)."
		 " Return code: %d",
		 subId,
		 subKey,
		 err);
      break;
    }      
    case GrepEvent::GrepSS_SubStartMetaConf: 
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::SSCoord: Logging started on meta data changes." 
		 " using (subId=%d,SubKey=%d)"
		 " Return code: %d",
		 subId,
		 subKey,
		 err);
      break;
    }
    case GrepEvent::GrepPS_SubStartMetaConf: 
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::PSCoord: All participants have started " 
		 "logging meta data" 
		 " changes on the subscription subId=%d,SubKey=%d) "
		 "(N.I yet)."
		 " Return code: %d",
		 subId,
		 subKey,
		 err);
      break;
    }
    case GrepEvent::GrepSS_SubStartDataConf: {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::SSCoord: Logging started on table data changes " 
		 " using (subId=%d,SubKey=%d)"
		 " Return code: %d",
		 subId,
		 subKey,
		 err);
      break;
    }
    case GrepEvent::GrepPS_SubStartDataConf: 
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::PSCoord: All participants have started logging "
		 "table data changes on the subscription " 
		 "subId=%d,SubKey=%d)."
		 " Return code: %d",
		 subId,
		 subKey,
		 err);
      break;
    }
    case GrepEvent::GrepPS_SubSyncMetaConf: 
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::PSCoord: All participants have started "
		 " synchronization  on meta data (META SCAN) using "
		 "(subId=%d,SubKey=%d)."
		 " Return code: %d",
		 subId,
		 subKey,
		 err);
      break;
    }
    case GrepEvent::GrepSS_SubSyncMetaConf: 
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::SSCoord: Synchronization started (META SCAN) on "
		 " meta data using (subId=%d,SubKey=%d)"
		 " Return code: %d",
		 subId,
		 subKey,
		 err);
      break;
    }
    case GrepEvent::GrepPS_SubSyncDataConf: 
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::PSCoord: All participants have started " 
		 "synchronization "
		 " on table data (DATA SCAN) using (subId=%d,SubKey=%d)."
		 " Return code: %d",
		 subId,
		 subKey,
		 err);
      break;
    }
    case GrepEvent::GrepSS_SubSyncDataConf: 
    {
      const int subId   =  theData[2];
      const int subKey  =  theData[3];
      const int err     =  theData[4];
      const int gci     =  theData[5];
    case 0:
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::SSCoord: Synchronization started (DATA SCAN) on "
		 "table data using (subId=%d,SubKey=%d). GCI = %d"
		 " Return code: %d",
		 subId,
		 subKey,
		 gci,
		 err);
			   "%sEntering single user mode", theNodeId);
      break;
    }      
    case GrepEvent::GrepPS_SubRemoveConf: 
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
    case 1:
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::PSCoord: All participants have removed "
		 "subscription (subId=%d,SubKey=%d). I have cleaned "
		 "up resources I've used."
		 " Return code: %d",
		 subId,
		 subKey,
		 err);
			   "%sEntered single user mode %d", theNodeId, theData[2]);
      break;
    }	
    case GrepEvent::GrepSS_SubRemoveConf: 
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
    case 2:
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::SSCoord: Removed subscription "
		 "(subId=%d,SubKey=%d)"
		 " Return code: %d",
		 subId,
		 subKey,
		 err);
			   "%sExiting single user mode", theNodeId);
      break;
    }
    default:
      BaseString::snprintf(m_text, 
		 m_text_len, 
		 "%sUnknown GrepSubscriptonInfo event: %d",
		 theNodeId,
		 theData[1]);
    }
    break;
  }
  
  case EventReport::GrepSubscriptionAlert : 
  {
    GrepEvent::Subscription event  = (GrepEvent::Subscription)theData[1];
    switch(event) 
    { 
    case GrepEvent::GrepSS_CreateSubIdRef: 
    {
      const int subId    = theData[2];
      const int subKey   = theData[3];
      const int err      = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::SSCoord:Error code: %d Error message: %s"
		 " (subId=%d,SubKey=%d)",
		 err,
		 GrepError::getErrorDesc((GrepError::GE_Code)err),
		 subId,
		 subKey);
      break;
    }
    case GrepEvent::GrepSS_SubCreateRef: 
    {
      const int subId   = theData[2];
      const int subKey  = theData[3];
      const int err     = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::SSCoord: FAILED to Created subscription using"
		 " (subId=%d,SubKey=%d)in primary system."
		 " Error code: %d Error Message: %s",
		 subId,
		 subKey,
		 err,
		 GrepError::getErrorDesc((GrepError::GE_Code)err));
      break;
    }
    case GrepEvent::GrepSS_SubStartMetaRef: 
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::SSCoord: Logging failed to start on meta "
		 "data changes." 
		 " using (subId=%d,SubKey=%d)"
		 " Error code: %d Error Message: %s",
		 subId,
		 subKey,
		 err,
		 GrepError::getErrorDesc((GrepError::GE_Code)err));
      break;
    }
    case GrepEvent::GrepSS_SubStartDataRef: 
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::SSCoord: Logging FAILED to start on table data "
		 " changes using (subId=%d,SubKey=%d)"
		 " Error code: %d Error Message: %s",
		 subId,
		 subKey,
		 err,
		 GrepError::getErrorDesc((GrepError::GE_Code)err));
      break;
    }
    case GrepEvent::GrepSS_SubSyncMetaRef: 
    {
      const int subId   = theData[2];
      const int subKey  = theData[3];
      const int err     = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::SSCoord: Synchronization FAILED (META SCAN) on "
		 " meta data using (subId=%d,SubKey=%d)"
		 " Error code: %d Error Message: %s",
		 subId,
		 subKey,
		 err,
		 GrepError::getErrorDesc((GrepError::GE_Code)err));
      break;
    }
    case GrepEvent::GrepSS_SubSyncDataRef: 
    {
      const int subId   =  theData[2];
      const int subKey  =  theData[3];
      const int err     =  theData[4];
      const int gci     =  theData[5];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::SSCoord: Synchronization FAILED (DATA SCAN) on "
		 "table data using (subId=%d,SubKey=%d). GCI = %d"
		 " Error code: %d Error Message: %s", 
		 subId,
		 subKey,
		 gci,
		 err,
		 GrepError::getErrorDesc((GrepError::GE_Code)err));
			   "%sUnknown single user report %d", theNodeId, theData[1]);
      break;
    }
    case GrepEvent::GrepSS_SubRemoveRef: 
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::SSCoord: Failed to remove subscription "
		 "(subId=%d,SubKey=%d). "
		 " Error code: %d Error Message: %s",
		 subId,
		 subKey,
		 err,
		 GrepError::getErrorDesc((GrepError::GE_Code)err)
		 );
      break;
    }	
	
    case GrepEvent::GrepPS_CreateSubIdRef: 
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::PSCoord: Error code: %d Error Message: %s"
		 " (subId=%d,SubKey=%d)",
		 err,
		 GrepError::getErrorDesc((GrepError::GE_Code)err),
		 subId,
		 subKey);
      break;
    }
    case GrepEvent::GrepPS_SubCreateRef: 
    {
      const int subId   = theData[2];
      const int subKey  = theData[3];
      const int err     = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::PSCoord: FAILED to Created subscription using"
		 " (subId=%d,SubKey=%d)in primary system."
		 " Error code: %d Error Message: %s",
		 subId,
		 subKey,
		 err,
		 GrepError::getErrorDesc((GrepError::GE_Code)err));
      break;
    }
    case GrepEvent::GrepPS_SubStartMetaRef: 
    {
      const int subId   = theData[2];
      const int subKey  = theData[3];
      const int err     = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::PSCoord: Logging failed to start on meta "
		 "data changes." 
		 " using (subId=%d,SubKey=%d)"
		 " Error code: %d Error Message: %s",
		 subId,
		 subKey,		       
		 err,
		 GrepError::getErrorDesc((GrepError::GE_Code)err));
    break;
  }      
    case GrepEvent::GrepPS_SubStartDataRef: 
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::PSCoord: Logging FAILED to start on table data "
		 " changes using (subId=%d,SubKey=%d)"
		 " Error code: %d Error Message: %s",
		 subId,
		 subKey,
		 err,
		 GrepError::getErrorDesc((GrepError::GE_Code)err));
      break;
    }
    case GrepEvent::GrepPS_SubSyncMetaRef: 
    {
      const int subId   = theData[2];
      const int subKey  = theData[3];
      const int err     = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::PSCoord: Synchronization FAILED (META SCAN) on "
		 " meta data using (subId=%d,SubKey=%d)"
		 " Error code: %d Error Message: %s",
		 subId,
		 subKey,
		 err,
		 GrepError::getErrorDesc((GrepError::GE_Code)err));
      break;
    }
    case GrepEvent::GrepPS_SubSyncDataRef: 
    {
      const int subId   =  theData[2];
      const int subKey  =  theData[3];
      const int err     =  theData[4];
      const int gci     =  theData[5];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::PSCoord: Synchronization FAILED (DATA SCAN) on "
		 "table data using (subId=%d,SubKey=%d). GCI = %d. "
		 " Error code: %d Error Message: %s",
		 subId,
		 subKey,
		 gci,
		 err,
		 GrepError::getErrorDesc((GrepError::GE_Code)err));
      break;
    }
    case GrepEvent::GrepPS_SubRemoveRef: 
    {
      const int subId  = theData[2];
      const int subKey = theData[3];
      const int err    = theData[4];
      BaseString::snprintf(m_text, m_text_len, 
		 "Grep::PSCoord: Failed to remove subscription "
		 "(subId=%d,SubKey=%d)." 
		 " Error code: %d Error Message: %s",
		 subId,
		 subKey,
		 err,
		 GrepError::getErrorDesc((GrepError::GE_Code)err));
      break;
    }	
    case GrepEvent::Rep_Disconnect:
    {
      const int err       = theData[4];
      const int nodeId    = theData[5];   
      BaseString::snprintf(m_text, m_text_len, 
		 "Rep: Node %d."
		 " Error code: %d Error Message: %s",
		 nodeId,
		 err,
		 GrepError::getErrorDesc((GrepError::GE_Code)err));
      break;
    }	
	
	
    default:
      BaseString::snprintf(m_text, 
		 m_text_len, 
		 "%sUnknown GrepSubscriptionAlert event: %d",
		 theNodeId,
		 theData[1]);
    break;
    }
    break;
  }

  case EventReport::BackupStarted:
    BaseString::snprintf(m_text,
	       m_text_len,
Loading