Commit c57b7736 authored by unknown's avatar unknown
Browse files

Merge mleich@bk-internal.mysql.com:/home/bk/mysql-4.1

into mysql.com:/home/matthias/Arbeit/mysql-4.1/src

parents fed6df70 7b592c9e
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -340,7 +340,6 @@ static const char* helpTextDebug =
#ifdef ERROR_INSERT
"<id> ERROR <errorNo>                  Inject error into NDB node\n"
#endif
"<id> TRACE <traceNo>                  Set trace number\n"
"<id> LOG [BLOCK = {ALL|<block>+}]     Set logging on in & out signals\n"
"<id> LOGIN [BLOCK = {ALL|<block>+}]   Set logging on in signals\n"
"<id> LOGOUT [BLOCK = {ALL|<block>+}]  Set logging on out signals\n"
+38 −1
Original line number Diff line number Diff line
@@ -119,7 +119,8 @@ int CommandInterpreter::readAndExecute() {


static const CommandInterpreter::CommandFunctionPair commands[] = {
  { "LOGIN", &CommandInterpreter::executeLogIn }
  { "TRACE", &CommandInterpreter::executeTrace }
  ,{ "LOGIN", &CommandInterpreter::executeLogIn }
  ,{ "LOGOUT", &CommandInterpreter::executeLogOut }
  ,{ "LOGOFF", &CommandInterpreter::executeLogOff }
};
@@ -306,3 +307,39 @@ void CommandInterpreter::executeLogOff(int processId,
  }

}

void CommandInterpreter::executeTrace(int processId, 
				      const char* parameters, bool all) {

  (void)all;  // Don't want compiler warning

  if (emptyString(parameters)) {
    ndbout << "Missing trace number." << endl;
    return;
  }

  char* newpar = strdup(parameters);
  char* firstParameter = strtok(newpar, " ");


  int traceNo;
  if (! convert(firstParameter, traceNo)) {
    ndbout << "Expected an integer." << endl;
    free(newpar);
    return;
  }

  char* allAfterFirstParameter = strtok(NULL, "\0");  

  if (! emptyString(allAfterFirstParameter)) {
    ndbout << "Nothing expected after trace number." << endl;
    free(newpar);
    return;
  }

  int result = _mgmtSrvr.setTraceNo(processId, traceNo);
  if (result != 0) {
    ndbout << get_error_text(result) << endl;
  }
  free(newpar);
}
+1 −0
Original line number Diff line number Diff line
@@ -63,6 +63,7 @@ private:
			       Vector<BaseString>& blocks);

public:
  void executeTrace(int processId, const char* parameters, bool all);
  void executeLogIn(int processId, const char* parameters, bool all);
  void executeLogOut(int processId, const char* parameters, bool all);
  void executeLogOff(int processId, const char* parameters, bool all);