2004-04-14 10:53:21 +02:00
|
|
|
/* 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 = 9 );
|
|
|
|
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
|
|
|
|
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 = 25 );
|
|
|
|
|
|
|
|
enum RequestInfo {
|
|
|
|
CreateInRunning = 0x8000000,
|
|
|
|
TemporaryTable = 0x00000010
|
|
|
|
};
|
|
|
|
|
|
|
|
private:
|
|
|
|
Uint32 senderData;
|
|
|
|
Uint32 senderRef;
|
|
|
|
Uint32 fragmentId;
|
|
|
|
Uint32 requestInfo;
|
|
|
|
Uint32 tableId;
|
|
|
|
Uint32 localKeyLength;
|
|
|
|
Uint32 maxLoadFactor;
|
|
|
|
Uint32 minLoadFactor;
|
|
|
|
Uint32 kValue;
|
|
|
|
Uint32 lh3DistrBits;
|
|
|
|
Uint32 lh3PageBits;
|
|
|
|
Uint32 noOfAttributes;
|
|
|
|
Uint32 noOfNullAttributes;
|
|
|
|
Uint32 noOfPagesToPreAllocate;
|
|
|
|
Uint32 schemaVersion;
|
|
|
|
Uint32 keyLength;
|
|
|
|
Uint32 nextLCP;
|
|
|
|
Uint32 noOfKeyAttr;
|
2004-09-16 12:57:15 +02:00
|
|
|
Uint32 noOfNewAttr; // noOfCharsets in upper half
|
2004-04-14 10:53:21 +02:00
|
|
|
Uint32 checksumIndicator;
|
|
|
|
Uint32 noOfAttributeGroups;
|
|
|
|
Uint32 GCPIndicator;
|
|
|
|
Uint32 startGci;
|
|
|
|
Uint32 tableType; // DictTabInfo::TableType
|
|
|
|
Uint32 primaryTableId; // table of index or RNIL
|
|
|
|
};
|
|
|
|
|
|
|
|
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
|