mariadb/storage/ndb/include/kernel/signaldata/LqhFrag.hpp
unknown 8af5860ee4 ndb - Fix strange SR problems
uninit variable


storage/ndb/include/kernel/signaldata/LqhFrag.hpp:
  Correct signal length
2006-01-23 14:15:35 +01:00

255 lines
4.8 KiB
C++

/* 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 LQH_FRAG_HPP
#define LQH_FRAG_HPP
#include "SignalData.hpp"
class AddFragReq {
/**
* Sender(s)
*/
friend class Dbdih;
/**
* Receiver(s)
*/
friend class Dbdict;
friend bool printADD_FRAG_REQ(FILE *, const Uint32 *, Uint32, Uint16);
public:
STATIC_CONST( SignalLength = 11 );
enum RequestInfo {
CreateInRunning = 0x8000000,
TemporaryTable = 0x00000010
};
private:
Uint32 dihPtr;
Uint32 senderData; // The same data as sent in DIADDTABREQ
Uint32 fragmentId;
Uint32 requestInfo;
Uint32 tableId;
Uint32 nextLCP;
Uint32 nodeId;
Uint32 totalFragments;
Uint32 startGci;
Uint32 tablespaceId;
Uint32 logPartId;
};
class AddFragRef {
/**
* Sender(s)
*/
friend class Dbdict;
/**
* Receiver(s)
*/
friend class Dbdih;
friend bool printADD_FRAG_REF(FILE *, const Uint32 *, Uint32, Uint16);
public:
STATIC_CONST( SignalLength = 1 );
private:
Uint32 dihPtr;
};
class AddFragConf {
/**
* Sender(s)
*/
friend class Dbdict;
/**
* Receiver(s)
*/
friend class Dbdih;
friend bool printADD_FRAG_CONF(FILE *, const Uint32 *, Uint32, Uint16);
public:
STATIC_CONST( SignalLength = 2 );
private:
Uint32 dihPtr;
Uint32 fragId;
};
class LqhFragReq {
/**
* Sender(s)
*/
friend class Dbdict;
/**
* Receiver(s)
*/
friend class Dblqh;
friend bool printLQH_FRAG_REQ(FILE *, const Uint32 *, Uint32, Uint16);
public:
STATIC_CONST( SignalLength = 20 );
enum RequestInfo {
CreateInRunning = 0x8000000,
TemporaryTable = 0x00000010
};
private:
Uint32 senderData;
Uint32 senderRef;
Uint32 fragmentId;
Uint32 requestInfo;
Uint32 maxLoadFactor;
Uint32 minLoadFactor;
Uint32 kValue;
Uint32 schemaVersion;
Uint32 nextLCP;
Uint32 noOfNewAttr; // noOfCharsets in upper half
Uint32 startGci;
Uint32 tableType; // DictTabInfo::TableType
Uint32 primaryTableId; // table of index or RNIL
Uint32 tablespace_id; // RNIL for MM table
Uint16 tableId;
Uint16 localKeyLength;
Uint16 lh3DistrBits;
Uint16 lh3PageBits;
Uint16 noOfAttributes;
Uint16 noOfNullAttributes;
Uint16 noOfPagesToPreAllocate;
Uint16 keyLength;
Uint16 noOfKeyAttr;
Uint8 checksumIndicator;
Uint8 GCPIndicator;
Uint32 logPartId;
};
class LqhFragConf {
/**
* Sender(s)
*/
friend class Dblqh;
/**
* Receiver(s)
*/
friend class Dbdict;
friend bool printLQH_FRAG_CONF(FILE *, const Uint32 *, Uint32, Uint16);
public:
STATIC_CONST( SignalLength = 2 );
private:
Uint32 senderData;
Uint32 lqhFragPtr;
};
class LqhFragRef {
/**
* Sender(s)
*/
friend class Dblqh;
/**
* Receiver(s)
*/
friend class Dbdict;
friend bool printLQH_FRAG_REF(FILE *, const Uint32 *, Uint32, Uint16);
public:
STATIC_CONST( SignalLength = 2 );
private:
Uint32 senderData;
Uint32 errorCode;
};
class LqhAddAttrReq {
/**
* Sender(s)
*/
friend class Dbdict;
/**
* Receiver(s)
*/
friend class Dblqh;
friend bool printLQH_ADD_ATTR_REQ(FILE *, const Uint32 *, Uint32, Uint16);
public:
STATIC_CONST( HeaderLength = 4 );
STATIC_CONST( EntryLength = 3 );
STATIC_CONST( MAX_ATTRIBUTES = 6 );
struct Entry {
Uint32 attrId; // for index, includes primary attr id << 16
Uint32 attrDescriptor; // 2 words type info
Uint32 extTypeInfo;
};
private:
Uint32 lqhFragPtr;
Uint32 noOfAttributes;
Uint32 senderData;
Uint32 senderAttrPtr;
Entry attributes[MAX_ATTRIBUTES];
};
class LqhAddAttrRef {
/**
* Sender(s)
*/
friend class Dblqh;
/**
* Receiver(s)
*/
friend class Dbdict;
friend bool printLQH_ADD_ATTR_REF(FILE *, const Uint32 *, Uint32, Uint16);
public:
STATIC_CONST( SignalLength = 2 );
private:
Uint32 senderData;
Uint32 errorCode;
};
class LqhAddAttrConf {
/**
* Sender(s)
*/
friend class Dblqh;
/**
* Receiver(s)
*/
friend class Dbdict;
friend bool printLQH_ADD_ATTR_CONF(FILE *, const Uint32 *, Uint32, Uint16);
public:
STATIC_CONST( SignalLength = 3 );
private:
Uint32 senderData;
Uint32 senderAttrPtr;
Uint32 fragId;
};
#endif