mariadb/ndb/include/mgmapi/ndb_logevent.h

619 lines
18 KiB
C
Raw Normal View History

/* Copyright (C) 2003 MySQL AB
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
#ifndef NDB_LOGEVENT_H
#define NDB_LOGEVENT_H
2005-01-19 08:14:52 +01:00
/** @addtogroup MGM_C_API
* @{
*/
#include "mgmapi_config_parameters.h"
#ifdef __cplusplus
extern "C" {
#endif
2005-01-19 08:14:52 +01:00
/**
* Available log events grouped by @ref ndb_mgm_event_category
*/
enum Ndb_logevent_type {
2005-01-19 08:14:52 +01:00
NDB_LE_ILLEGAL_TYPE = -1,
/** NDB_MGM_EVENT_CATEGORY_CONNECTION */
NDB_LE_Connected = 0,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_CONNECTION */
NDB_LE_Disconnected = 1,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_CONNECTION */
NDB_LE_CommunicationClosed = 2,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_CONNECTION */
NDB_LE_CommunicationOpened = 3,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_CONNECTION */
NDB_LE_ConnectedApiVersion = 51,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_CHECKPOINT */
NDB_LE_GlobalCheckpointStarted = 4,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_CHECKPOINT */
NDB_LE_GlobalCheckpointCompleted = 5,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_CHECKPOINT */
NDB_LE_LocalCheckpointStarted = 6,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_CHECKPOINT */
NDB_LE_LocalCheckpointCompleted = 7,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_CHECKPOINT */
NDB_LE_LCPStoppedInCalcKeepGci = 8,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_CHECKPOINT */
NDB_LE_LCPFragmentCompleted = 9,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STARTUP */
NDB_LE_NDBStartStarted = 10,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STARTUP */
NDB_LE_NDBStartCompleted = 11,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STARTUP */
NDB_LE_STTORRYRecieved = 12,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STARTUP */
NDB_LE_StartPhaseCompleted = 13,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STARTUP */
NDB_LE_CM_REGCONF = 14,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STARTUP */
NDB_LE_CM_REGREF = 15,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STARTUP */
NDB_LE_FIND_NEIGHBOURS = 16,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STARTUP */
NDB_LE_NDBStopStarted = 17,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STARTUP */
NDB_LE_NDBStopAborted = 18,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STARTUP */
NDB_LE_StartREDOLog = 19,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STARTUP */
NDB_LE_StartLog = 20,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STARTUP */
NDB_LE_UNDORecordsExecuted = 21,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_NODE_RESTART */
NDB_LE_NR_CopyDict = 22,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_NODE_RESTART */
NDB_LE_NR_CopyDistr = 23,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_NODE_RESTART */
NDB_LE_NR_CopyFragsStarted = 24,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_NODE_RESTART */
NDB_LE_NR_CopyFragDone = 25,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_NODE_RESTART */
NDB_LE_NR_CopyFragsCompleted = 26,
/* NODEFAIL */
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_NODE_RESTART */
NDB_LE_NodeFailCompleted = 27,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_NODE_RESTART */
NDB_LE_NODE_FAILREP = 28,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_NODE_RESTART */
NDB_LE_ArbitState = 29,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_NODE_RESTART */
NDB_LE_ArbitResult = 30,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_NODE_RESTART */
NDB_LE_GCP_TakeoverStarted = 31,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_NODE_RESTART */
NDB_LE_GCP_TakeoverCompleted = 32,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_NODE_RESTART */
NDB_LE_LCP_TakeoverStarted = 33,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_NODE_RESTART */
NDB_LE_LCP_TakeoverCompleted = 34,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STATISTIC */
NDB_LE_TransReportCounters = 35,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STATISTIC */
NDB_LE_OperationReportCounters = 36,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STATISTIC */
NDB_LE_TableCreated = 37,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STATISTIC */
NDB_LE_UndoLogBlocked = 38,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STATISTIC */
NDB_LE_JobStatistic = 39,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STATISTIC */
NDB_LE_SendBytesStatistic = 40,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STATISTIC */
NDB_LE_ReceiveBytesStatistic = 41,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_STATISTIC */
NDB_LE_MemoryUsage = 50,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_ERROR */
NDB_LE_TransporterError = 42,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_ERROR */
NDB_LE_TransporterWarning = 43,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_ERROR */
NDB_LE_MissedHeartbeat = 44,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_ERROR */
NDB_LE_DeadDueToHeartbeat = 45,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_ERROR */
NDB_LE_WarningEvent = 46,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_INFO */
NDB_LE_SentHeartbeat = 47,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_INFO */
NDB_LE_CreateLogBytes = 48,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_INFO */
NDB_LE_InfoEvent = 49,
/* GREP */
NDB_LE_GrepSubscriptionInfo = 52,
NDB_LE_GrepSubscriptionAlert = 53,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_BACKUP */
NDB_LE_BackupStarted = 54,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_BACKUP */
NDB_LE_BackupFailedToStart = 55,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_BACKUP */
NDB_LE_BackupCompleted = 56,
2005-01-19 08:14:52 +01:00
/** NDB_MGM_EVENT_CATEGORY_BACKUP */
NDB_LE_BackupAborted = 57
};
2005-01-19 08:14:52 +01:00
/**
* Log event severities (used to filter the cluster log,
* ndb_mgm_set_clusterlog_severity_filter(), and filter listening to events
* ndb_mgm_listen_event())
*/
enum ndb_mgm_event_severity {
NDB_MGM_ILLEGAL_EVENT_SEVERITY = -1,
/* Must be a nonnegative integer (used for array indexing) */
/** Cluster log on */
NDB_MGM_EVENT_SEVERITY_ON = 0,
/** Used in NDB Cluster developement */
NDB_MGM_EVENT_SEVERITY_DEBUG = 1,
/** Informational messages*/
NDB_MGM_EVENT_SEVERITY_INFO = 2,
/** Conditions that are not error condition, but might require handling.
*/
NDB_MGM_EVENT_SEVERITY_WARNING = 3,
/** Conditions that, while not fatal, should be corrected. */
NDB_MGM_EVENT_SEVERITY_ERROR = 4,
/** Critical conditions, like device errors or out of resources */
NDB_MGM_EVENT_SEVERITY_CRITICAL = 5,
/** A condition that should be corrected immediately,
* such as a corrupted system
*/
NDB_MGM_EVENT_SEVERITY_ALERT = 6,
/* must be next number, works as bound in loop */
/** All severities */
NDB_MGM_EVENT_SEVERITY_ALL = 7
};
/**
* Log event categories, used to set filter level on the log events using
* ndb_mgm_set_clusterlog_loglevel() and ndb_mgm_listen_event()
*/
enum ndb_mgm_event_category {
/**
* Invalid log event category
*/
NDB_MGM_ILLEGAL_EVENT_CATEGORY = -1,
/**
* Log events during all kinds of startups
*/
NDB_MGM_EVENT_CATEGORY_STARTUP = CFG_LOGLEVEL_STARTUP,
/**
* Log events during shutdown
*/
NDB_MGM_EVENT_CATEGORY_SHUTDOWN = CFG_LOGLEVEL_SHUTDOWN,
/**
* Statistics log events
*/
NDB_MGM_EVENT_CATEGORY_STATISTIC = CFG_LOGLEVEL_STATISTICS,
/**
* Log events related to checkpoints
*/
NDB_MGM_EVENT_CATEGORY_CHECKPOINT = CFG_LOGLEVEL_CHECKPOINT,
/**
* Log events during node restart
*/
NDB_MGM_EVENT_CATEGORY_NODE_RESTART = CFG_LOGLEVEL_NODERESTART,
/**
* Log events related to connections between cluster nodes
*/
NDB_MGM_EVENT_CATEGORY_CONNECTION = CFG_LOGLEVEL_CONNECTION,
/**
* Backup related log events
*/
NDB_MGM_EVENT_CATEGORY_BACKUP = CFG_LOGLEVEL_BACKUP,
/**
* Congestion related log events
*/
NDB_MGM_EVENT_CATEGORY_CONGESTION = CFG_LOGLEVEL_CONGESTION,
#ifndef DOXYGEN_SHOULD_SKIP_INTERNAL
/**
* Loglevel debug
*/
NDB_MGM_EVENT_CATEGORY_DEBUG = CFG_LOGLEVEL_DEBUG,
#endif
/**
* Uncategorized log events (severity info)
*/
NDB_MGM_EVENT_CATEGORY_INFO = CFG_LOGLEVEL_INFO,
/**
* Uncategorized log events (severity warning or higher)
*/
NDB_MGM_EVENT_CATEGORY_ERROR = CFG_LOGLEVEL_ERROR,
#ifndef DOXYGEN_SHOULD_SKIP_INTERNAL
NDB_MGM_MIN_EVENT_CATEGORY = CFG_MIN_LOGLEVEL,
NDB_MGM_MAX_EVENT_CATEGORY = CFG_MAX_LOGLEVEL
#endif
};
/**
* Structure to store and retrieve log event information.
* @see @ref secSLogEvents
*/
struct ndb_logevent {
/** NdbLogEventHandle (to be used for comparing only)
* set in ndb_logevent_get_next()
*/
void *handle;
/** Which event */
enum Ndb_logevent_type type;
/** Time when log event was registred at the management server */
unsigned time;
/** Category of log event */
enum ndb_mgm_event_category category;
/** Severity of log event */
enum ndb_mgm_event_severity severity;
/** Level (0-15) of log event */
unsigned level;
/** Node ID of the node that reported the log event */
unsigned source_nodeid;
/** Union of log event specific data. Use @ref type to decide
* which struct to use
*/
union {
/* CONNECT */
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned node;
} Connected;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned node;
} Disconnected;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned node;
} CommunicationClosed;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned node;
} CommunicationOpened;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned node;
unsigned version;
} ConnectedApiVersion;
/* CHECKPOINT */
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned gci;
} GlobalCheckpointStarted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned gci;
} GlobalCheckpointCompleted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned lci;
unsigned keep_gci;
unsigned restore_gci;
} LocalCheckpointStarted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned lci;
} LocalCheckpointCompleted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned data;
} LCPStoppedInCalcKeepGci;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned node;
unsigned table_id;
unsigned fragment_id;
} LCPFragmentCompleted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned acc_count;
unsigned tup_count;
} UndoLogBlocked;
/* STARTUP */
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned version;
} NDBStartStarted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned version;
} NDBStartCompleted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
} STTORRYRecieved;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned phase;
unsigned starttype;
} StartPhaseCompleted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned own_id;
unsigned president_id;
unsigned dynamic_id;
} CM_REGCONF;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned own_id;
unsigned other_id;
unsigned cause;
} CM_REGREF;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned own_id;
unsigned left_id;
unsigned right_id;
unsigned dynamic_id;
} FIND_NEIGHBOURS;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned stoptype;
} NDBStopStarted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
} NDBStopAborted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned node;
unsigned keep_gci;
unsigned completed_gci;
unsigned restorable_gci;
} StartREDOLog;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned log_part;
unsigned start_mb;
unsigned stop_mb;
unsigned gci;
} StartLog;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned block;
unsigned data1;
unsigned data2;
unsigned data3;
unsigned data4;
unsigned data5;
unsigned data6;
unsigned data7;
unsigned data8;
unsigned data9;
unsigned data10;
} UNDORecordsExecuted;
/* NODERESTART */
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
} NR_CopyDict;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
} NR_CopyDistr;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned dest_node;
} NR_CopyFragsStarted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned dest_node;
unsigned table_id;
unsigned fragment_id;
} NR_CopyFragDone;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned dest_node;
} NR_CopyFragsCompleted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned block; /* 0 = all */
unsigned failed_node;
unsigned completing_node; /* 0 = all */
} NodeFailCompleted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned failed_node;
unsigned failure_state;
} NODE_FAILREP;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned code; /* code & state << 16 */
unsigned arbit_node;
unsigned ticket_0;
unsigned ticket_1;
2005-01-19 08:14:52 +01:00
/* TODO */
} ArbitState;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned code; /* code & state << 16 */
unsigned arbit_node;
unsigned ticket_0;
unsigned ticket_1;
2005-01-19 08:14:52 +01:00
/* TODO */
} ArbitResult;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
} GCP_TakeoverStarted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
} GCP_TakeoverCompleted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
} LCP_TakeoverStarted;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned state;
} LCP_TakeoverCompleted;
/* STATISTIC */
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned trans_count;
unsigned commit_count;
unsigned read_count;
unsigned simple_read_count;
unsigned write_count;
unsigned attrinfo_count;
unsigned conc_op_count;
unsigned abort_count;
unsigned scan_count;
unsigned range_scan_count;
} TransReportCounters;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned ops;
} OperationReportCounters;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned table_id;
} TableCreated;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned mean_loop_count;
} JobStatistic;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned to_node;
unsigned mean_sent_bytes;
} SendBytesStatistic;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned from_node;
unsigned mean_received_bytes;
} ReceiveBytesStatistic;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
int gth;
unsigned page_size_kb;
unsigned pages_used;
unsigned pages_total;
unsigned block;
} MemoryUsage;
/* ERROR */
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned to_node;
unsigned code;
} TransporterError;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned to_node;
unsigned code;
} TransporterWarning;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned node;
unsigned count;
} MissedHeartbeat;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned node;
} DeadDueToHeartbeat;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
/* TODO */
} WarningEvent;
/* INFO */
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned node;
} SentHeartbeat;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
unsigned node;
} CreateLogBytes;
/** Log event specific data for for corresponding NDB_LE_ log event */
2005-01-19 08:14:52 +01:00
struct {
/* TODO */
} InfoEvent;
/** Log event data for @ref NDB_LE_BackupStarted */
struct {
unsigned starting_node;
unsigned backup_id;
} BackupStarted;
/** Log event data @ref NDB_LE_BackupFailedToStart */
struct {
unsigned starting_node;
unsigned error;
} BackupFailedToStart;
/** Log event data @ref NDB_LE_BackupCompleted */
struct {
unsigned starting_node;
unsigned backup_id;
unsigned start_gci;
unsigned stop_gci;
unsigned n_records;
unsigned n_log_records;
unsigned n_bytes;
unsigned n_log_bytes;
} BackupCompleted;
/** Log event data @ref NDB_LE_BackupAborted */
struct {
unsigned starting_node;
unsigned backup_id;
unsigned error;
} BackupAborted;
#ifndef DOXYGEN_FIX
};
#else
} <union>;
#endif
};
enum ndb_logevent_handle_error {
NDB_LEH_NO_ERROR,
NDB_LEH_READ_ERROR,
NDB_LEH_MISSING_EVENT_SPECIFIER,
NDB_LEH_UNKNOWN_EVENT_TYPE,
NDB_LEH_UNKNOWN_EVENT_VARIABLE,
NDB_LEH_INTERNAL_ERROR
};
#ifdef __cplusplus
}
#endif
2005-01-19 08:14:52 +01:00
/** @} */
#endif