Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
e492e902
Commit
e492e902
authored
May 19, 2004
by
unknown
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Forte compile fixes
BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted
parent
844f7629
Changes
20
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
123 additions
and
52 deletions
+123
-52
BitKeeper/etc/logging_ok
BitKeeper/etc/logging_ok
+1
-0
ndb/config/GuessConfig.sh
ndb/config/GuessConfig.sh
+1
-0
ndb/include/kernel/signaldata/CreateEvnt.hpp
ndb/include/kernel/signaldata/CreateEvnt.hpp
+1
-1
ndb/include/kernel/trigger_definitions.h
ndb/include/kernel/trigger_definitions.h
+1
-0
ndb/include/util/Bitmask.hpp
ndb/include/util/Bitmask.hpp
+12
-3
ndb/src/common/util/md5_hash.cpp
ndb/src/common/util/md5_hash.cpp
+1
-1
ndb/src/kernel/blocks/dbdict/Dbdict.cpp
ndb/src/kernel/blocks/dbdict/Dbdict.cpp
+11
-5
ndb/src/kernel/blocks/dbdict/Dbdict.hpp
ndb/src/kernel/blocks/dbdict/Dbdict.hpp
+16
-16
ndb/src/kernel/blocks/dbtux/Dbtux.hpp
ndb/src/kernel/blocks/dbtux/Dbtux.hpp
+33
-1
ndb/src/kernel/blocks/trix/Trix.hpp
ndb/src/kernel/blocks/trix/Trix.hpp
+9
-8
ndb/src/ndbapi/DictCache.hpp
ndb/src/ndbapi/DictCache.hpp
+2
-1
ndb/src/ndbapi/NdbDictionary.cpp
ndb/src/ndbapi/NdbDictionary.cpp
+1
-1
ndb/src/ndbapi/NdbDictionaryImpl.cpp
ndb/src/ndbapi/NdbDictionaryImpl.cpp
+2
-2
ndb/src/rep/SignalQueue.hpp
ndb/src/rep/SignalQueue.hpp
+1
-1
ndb/src/rep/adapters/ExtNDB.cpp
ndb/src/rep/adapters/ExtNDB.cpp
+6
-3
ndb/src/rep/adapters/ExtNDB.hpp
ndb/src/rep/adapters/ExtNDB.hpp
+7
-3
ndb/src/rep/transfer/TransPS.cpp
ndb/src/rep/transfer/TransPS.cpp
+3
-2
ndb/src/rep/transfer/TransPS.hpp
ndb/src/rep/transfer/TransPS.hpp
+7
-1
ndb/src/rep/transfer/TransSS.cpp
ndb/src/rep/transfer/TransSS.cpp
+3
-2
ndb/src/rep/transfer/TransSS.hpp
ndb/src/rep/transfer/TransSS.hpp
+5
-1
No files found.
BitKeeper/etc/logging_ok
View file @
e492e902
...
@@ -112,6 +112,7 @@ mwagner@work.mysql.com
...
@@ -112,6 +112,7 @@ mwagner@work.mysql.com
mydev@mysql.com
mydev@mysql.com
mysql@home.(none)
mysql@home.(none)
mysqldev@build.mysql2.com
mysqldev@build.mysql2.com
mysqldev@mysql.com
ndbdev@ndbmaster.mysql.com
ndbdev@ndbmaster.mysql.com
nick@mysql.com
nick@mysql.com
nick@nick.leippe.com
nick@nick.leippe.com
...
...
ndb/config/GuessConfig.sh
View file @
e492e902
...
@@ -105,6 +105,7 @@ parse_arguments "$@"
...
@@ -105,6 +105,7 @@ parse_arguments "$@"
echo
"NDB_COMPILER :=
$NDB_COMPILER
"
echo
"NDB_COMPILER :=
$NDB_COMPILER
"
echo
"NDB_VERSION :=
$NDB_VERSION
"
echo
"NDB_VERSION :=
$NDB_VERSION
"
echo
"NDB_SCI :=
$NDB_SCI
"
echo
"NDB_SCI :=
$NDB_SCI
"
echo
"NDB_SHM :=
$NDB_SHM
"
echo
"NDB_ODBC :=
$NDB_ODBC
"
echo
"NDB_ODBC :=
$NDB_ODBC
"
echo
"TERMCAP_LIB :=
$TERMCAP_LIB
"
echo
"TERMCAP_LIB :=
$TERMCAP_LIB
"
echo
"PACKAGE :=
$PACKAGE
"
echo
"PACKAGE :=
$PACKAGE
"
...
...
ndb/include/kernel/signaldata/CreateEvnt.hpp
View file @
e492e902
...
@@ -250,7 +250,7 @@ struct CreateEvntReq {
...
@@ -250,7 +250,7 @@ struct CreateEvntReq {
return
tmp
;
return
tmp
;
}
}
void
setAttrListBitmask
(
const
AttributeMask
&
val
)
{
void
setAttrListBitmask
(
const
AttributeMask
&
val
)
{
m_attrListBitmask
=
val
;
AttributeMask
::
assign
(
m_attrListBitmask
.
data
,
val
)
;
}
}
Uint32
getEventType
()
const
{
Uint32
getEventType
()
const
{
return
m_eventType
;
return
m_eventType
;
...
...
ndb/include/kernel/trigger_definitions.h
View file @
e492e902
...
@@ -17,6 +17,7 @@
...
@@ -17,6 +17,7 @@
#ifndef NDB_TRIGGER_DEFINITIONS_H
#ifndef NDB_TRIGGER_DEFINITIONS_H
#define NDB_TRIGGER_DEFINITIONS_H
#define NDB_TRIGGER_DEFINITIONS_H
#include <ndb_global.h>
#include "ndb_limits.h"
#include "ndb_limits.h"
#ifndef MIN
#ifndef MIN
...
...
ndb/include/util/Bitmask.hpp
View file @
e492e902
...
@@ -331,11 +331,12 @@ public:
...
@@ -331,11 +331,12 @@ public:
*/
*/
struct
Data
{
struct
Data
{
Uint32
data
[
size
];
Uint32
data
[
size
];
#if 0
Data & operator=(const Bitmask<size> & src) {
Data & operator=(const Bitmask<size> & src) {
src.assign(size, data);
src.assign(size, data);
return *this;
return *this;
}
}
#endif
};
};
private:
private:
...
@@ -348,12 +349,13 @@ public:
...
@@ -348,12 +349,13 @@ public:
/**
/**
* assign - Set all bits in <em>dst</em> to corresponding in <em>src/<em>
* assign - Set all bits in <em>dst</em> to corresponding in <em>src/<em>
*/
*/
void
assign
(
const
Bitmask
<
size
>::
Data
&
src
);
void
assign
(
const
typename
Bitmask
<
size
>::
Data
&
src
);
/**
/**
* assign - Set all bits in <em>dst</em> to corresponding in <em>src/<em>
* assign - Set all bits in <em>dst</em> to corresponding in <em>src/<em>
*/
*/
static
void
assign
(
Uint32
dst
[],
const
Uint32
src
[]);
static
void
assign
(
Uint32
dst
[],
const
Uint32
src
[]);
static
void
assign
(
Uint32
dst
[],
const
Bitmask
<
size
>
&
src
);
void
assign
(
const
Bitmask
<
size
>
&
src
);
void
assign
(
const
Bitmask
<
size
>
&
src
);
/**
/**
...
@@ -480,7 +482,14 @@ Bitmask<size>::assign(Uint32 dst[], const Uint32 src[])
...
@@ -480,7 +482,14 @@ Bitmask<size>::assign(Uint32 dst[], const Uint32 src[])
template
<
unsigned
size
>
template
<
unsigned
size
>
inline
void
inline
void
Bitmask
<
size
>::
assign
(
const
Bitmask
<
size
>::
Data
&
src
)
Bitmask
<
size
>::
assign
(
Uint32
dst
[],
const
Bitmask
<
size
>
&
src
)
{
BitmaskImpl
::
assign
(
size
,
dst
,
src
.
rep
.
data
);
}
template
<
unsigned
size
>
inline
void
Bitmask
<
size
>::
assign
(
const
typename
Bitmask
<
size
>::
Data
&
src
)
{
{
assign
(
rep
.
data
,
src
.
data
);
assign
(
rep
.
data
,
src
.
data
);
}
}
...
...
ndb/src/common/util/md5_hash.cpp
View file @
e492e902
...
@@ -48,7 +48,7 @@ void byteReverse(unsigned char *buf, unsigned longs);
...
@@ -48,7 +48,7 @@ void byteReverse(unsigned char *buf, unsigned longs);
*/
*/
void
byteReverse
(
unsigned
char
*
buf
,
unsigned
longs
)
void
byteReverse
(
unsigned
char
*
buf
,
unsigned
longs
)
{
{
u
int32
t
;
U
int32
t
;
do
{
do
{
t
=
(
Uint32
)
((
unsigned
)
buf
[
3
]
<<
8
|
buf
[
2
])
<<
16
|
t
=
(
Uint32
)
((
unsigned
)
buf
[
3
]
<<
8
|
buf
[
2
])
<<
16
|
((
unsigned
)
buf
[
1
]
<<
8
|
buf
[
0
]);
((
unsigned
)
buf
[
1
]
<<
8
|
buf
[
0
]);
...
...
ndb/src/kernel/blocks/dbdict/Dbdict.cpp
View file @
e492e902
...
@@ -14,6 +14,8 @@
...
@@ -14,6 +14,8 @@
along with this program; if not, write to the Free Software
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
#include <ndb_global.h>
#define DBDICT_C
#define DBDICT_C
#include "Dbdict.hpp"
#include "Dbdict.hpp"
...
@@ -7760,8 +7762,9 @@ Dbdict::createEventComplete_RT_USER_GET(Signal* signal,
...
@@ -7760,8 +7762,9 @@ Dbdict::createEventComplete_RT_USER_GET(Signal* signal,
#endif
#endif
NodeReceiverGroup
rg
(
DBDICT
,
c_aliveNodes
);
NodeReceiverGroup
rg
(
DBDICT
,
c_aliveNodes
);
evntRecPtr
.
p
->
m_reqTracker
.
init
<
CreateEvntRef
>
RequestTracker
&
p
=
evntRecPtr
.
p
->
m_reqTracker
;
(
c_counterMgr
,
rg
,
GSN_CREATE_EVNT_REF
,
evntRecPtr
.
i
);
p
.
init
<
CreateEvntRef
>
(
c_counterMgr
,
rg
,
GSN_CREATE_EVNT_REF
,
evntRecPtr
.
i
);
sendSignal
(
rg
,
GSN_CREATE_EVNT_REQ
,
signal
,
CreateEvntReq
::
SignalLength
,
JBB
);
sendSignal
(
rg
,
GSN_CREATE_EVNT_REQ
,
signal
,
CreateEvntReq
::
SignalLength
,
JBB
);
}
}
...
@@ -8109,7 +8112,8 @@ void Dbdict::execSUB_START_REQ(Signal* signal)
...
@@ -8109,7 +8112,8 @@ void Dbdict::execSUB_START_REQ(Signal* signal)
subbPtr
.
p
->
m_senderRef
=
origSenderRef
;
// not sure if API sets correctly
subbPtr
.
p
->
m_senderRef
=
origSenderRef
;
// not sure if API sets correctly
NodeReceiverGroup
rg
(
DBDICT
,
c_aliveNodes
);
NodeReceiverGroup
rg
(
DBDICT
,
c_aliveNodes
);
subbPtr
.
p
->
m_reqTracker
.
init
<
SubStartRef
>
(
c_counterMgr
,
rg
,
GSN_SUB_START_REF
,
subbPtr
.
i
);
RequestTracker
&
p
=
subbPtr
.
p
->
m_reqTracker
;
p
.
init
<
SubStartRef
>
(
c_counterMgr
,
rg
,
GSN_SUB_START_REF
,
subbPtr
.
i
);
SubStartReq
*
req
=
(
SubStartReq
*
)
signal
->
getDataPtrSend
();
SubStartReq
*
req
=
(
SubStartReq
*
)
signal
->
getDataPtrSend
();
...
@@ -8322,7 +8326,8 @@ void Dbdict::execSUB_STOP_REQ(Signal* signal)
...
@@ -8322,7 +8326,8 @@ void Dbdict::execSUB_STOP_REQ(Signal* signal)
#endif
#endif
subbPtr
.
p
->
m_senderRef
=
origSenderRef
;
// not sure if API sets correctly
subbPtr
.
p
->
m_senderRef
=
origSenderRef
;
// not sure if API sets correctly
NodeReceiverGroup
rg
(
DBDICT
,
c_aliveNodes
);
NodeReceiverGroup
rg
(
DBDICT
,
c_aliveNodes
);
subbPtr
.
p
->
m_reqTracker
.
init
<
SubStopRef
>
(
c_counterMgr
,
rg
,
GSN_SUB_STOP_REF
,
subbPtr
.
i
);
RequestTracker
&
p
=
subbPtr
.
p
->
m_reqTracker
;
p
.
init
<
SubStopRef
>
(
c_counterMgr
,
rg
,
GSN_SUB_STOP_REF
,
subbPtr
.
i
);
SubStopReq
*
req
=
(
SubStopReq
*
)
signal
->
getDataPtrSend
();
SubStopReq
*
req
=
(
SubStopReq
*
)
signal
->
getDataPtrSend
();
...
@@ -8609,7 +8614,8 @@ Dbdict::dropEventUTIL_EXECUTE_READ(Signal* signal,
...
@@ -8609,7 +8614,8 @@ Dbdict::dropEventUTIL_EXECUTE_READ(Signal* signal,
parseReadEventSys
(
signal
,
evntRecPtr
.
p
->
m_eventRec
);
parseReadEventSys
(
signal
,
evntRecPtr
.
p
->
m_eventRec
);
NodeReceiverGroup
rg
(
DBDICT
,
c_aliveNodes
);
NodeReceiverGroup
rg
(
DBDICT
,
c_aliveNodes
);
evntRecPtr
.
p
->
m_reqTracker
.
init
<
SubRemoveRef
>
(
c_counterMgr
,
rg
,
GSN_SUB_REMOVE_REF
,
RequestTracker
&
p
=
evntRecPtr
.
p
->
m_reqTracker
;
p
.
init
<
SubRemoveRef
>
(
c_counterMgr
,
rg
,
GSN_SUB_REMOVE_REF
,
evntRecPtr
.
i
);
evntRecPtr
.
i
);
SubRemoveReq
*
req
=
(
SubRemoveReq
*
)
signal
->
getDataPtrSend
();
SubRemoveReq
*
req
=
(
SubRemoveReq
*
)
signal
->
getDataPtrSend
();
...
...
ndb/src/kernel/blocks/dbdict/Dbdict.hpp
View file @
e492e902
...
@@ -101,6 +101,22 @@
...
@@ -101,6 +101,22 @@
#define ZNODE_FAILURE_ERROR 704
#define ZNODE_FAILURE_ERROR 704
#endif
#endif
/**
* Systable NDB$EVENTS_0
*/
#define EVENT_SYSTEM_TABLE_NAME "sys/def/NDB$EVENTS_0"
#define EVENT_SYSTEM_TABLE_LENGTH 6
struct
sysTab_NDBEVENTS_0
{
char
NAME
[
MAX_TAB_NAME_SIZE
];
Uint32
EVENT_TYPE
;
char
TABLE_NAME
[
MAX_TAB_NAME_SIZE
];
Uint32
ATTRIBUTE_MASK
[
MAXNROFATTRIBUTESINWORDS
];
Uint32
SUBID
;
Uint32
SUBKEY
;
};
/**
/**
* DICT - This blocks handles all metadata
* DICT - This blocks handles all metadata
*/
*/
...
@@ -1227,22 +1243,6 @@ private:
...
@@ -1227,22 +1243,6 @@ private:
};
};
typedef
Ptr
<
OpSubEvent
>
OpSubEventPtr
;
typedef
Ptr
<
OpSubEvent
>
OpSubEventPtr
;
/**
* Systable NDB$EVENTS_0
*/
#define EVENT_SYSTEM_TABLE_NAME "sys/def/NDB$EVENTS_0"
#define EVENT_SYSTEM_TABLE_LENGTH 6
struct
sysTab_NDBEVENTS_0
{
char
NAME
[
MAX_TAB_NAME_SIZE
];
Uint32
EVENT_TYPE
;
char
TABLE_NAME
[
MAX_TAB_NAME_SIZE
];
Uint32
ATTRIBUTE_MASK
[
MAXNROFATTRIBUTESINWORDS
];
Uint32
SUBID
;
Uint32
SUBKEY
;
};
static
const
Uint32
sysTab_NDBEVENTS_0_szs
[];
static
const
Uint32
sysTab_NDBEVENTS_0_szs
[];
/**
/**
...
...
ndb/src/kernel/blocks/dbtux/Dbtux.hpp
View file @
e492e902
...
@@ -103,7 +103,9 @@ private:
...
@@ -103,7 +103,9 @@ private:
static
const
unsigned
MaxNodeHandles
=
128
;
// enough for 1 operation
static
const
unsigned
MaxNodeHandles
=
128
;
// enough for 1 operation
#endif
#endif
static
const
unsigned
MaxAttrDataSize
=
2048
;
static
const
unsigned
MaxAttrDataSize
=
2048
;
public:
static
const
unsigned
DescPageSize
=
256
;
static
const
unsigned
DescPageSize
=
256
;
private:
static
const
unsigned
MaxTreeNodeSize
=
MAX_TTREE_NODE_SIZE
;
static
const
unsigned
MaxTreeNodeSize
=
MAX_TTREE_NODE_SIZE
;
static
const
unsigned
ScanBoundSegmentSize
=
7
;
static
const
unsigned
ScanBoundSegmentSize
=
7
;
static
const
unsigned
MaxAccLockOps
=
MAX_PARALLEL_OP_PER_SCAN
;
static
const
unsigned
MaxAccLockOps
=
MAX_PARALLEL_OP_PER_SCAN
;
...
@@ -126,10 +128,13 @@ private:
...
@@ -126,10 +128,13 @@ private:
Data
&
operator
+=
(
size_t
n
);
Data
&
operator
+=
(
size_t
n
);
AttributeHeader
&
ah
()
const
;
AttributeHeader
&
ah
()
const
;
};
};
friend
class
Data
;
/*
/*
* Pointer to constant Uint32 data.
* Pointer to constant Uint32 data.
*/
*/
struct
ConstData
;
friend
struct
ConstData
;
struct
ConstData
{
struct
ConstData
{
private:
private:
const
Uint32
*
m_data
;
const
Uint32
*
m_data
;
...
@@ -173,6 +178,8 @@ private:
...
@@ -173,6 +178,8 @@ private:
* of "original" tuple and tuple version. Uses 2 words to get correct
* of "original" tuple and tuple version. Uses 2 words to get correct
* aligment (one byte is wasted currently).
* aligment (one byte is wasted currently).
*/
*/
struct
TreeEnt
;
friend
struct
TreeEnt
;
struct
TreeEnt
{
struct
TreeEnt
{
TupAddr
m_tupAddr
;
// address of original tuple
TupAddr
m_tupAddr
;
// address of original tuple
Uint16
m_tupVersion
;
// version
Uint16
m_tupVersion
;
// version
...
@@ -202,6 +209,8 @@ private:
...
@@ -202,6 +209,8 @@ private:
* a node is about to be removed. If occupancy is 1, only max entry
* a node is about to be removed. If occupancy is 1, only max entry
* is present but both min and max prefixes are set.
* is present but both min and max prefixes are set.
*/
*/
struct
TreeNode
;
friend
struct
TreeNode
;
struct
TreeNode
{
struct
TreeNode
{
TupAddr
m_link
[
3
];
// link to 0-left child 1-right child 2-parent
TupAddr
m_link
[
3
];
// link to 0-left child 1-right child 2-parent
Uint8
m_side
;
// we are 0-left child 1-right child 2-root
Uint8
m_side
;
// we are 0-left child 1-right child 2-root
...
@@ -228,6 +237,8 @@ private:
...
@@ -228,6 +237,8 @@ private:
* Tree header. There is one in each fragment. Contains tree
* Tree header. There is one in each fragment. Contains tree
* parameters and address of root node.
* parameters and address of root node.
*/
*/
struct
TreeHead
;
friend
struct
TreeHead
;
struct
TreeHead
{
struct
TreeHead
{
Uint8
m_nodeSize
;
// words in tree node
Uint8
m_nodeSize
;
// words in tree node
Uint8
m_prefSize
;
// words in min/max prefix each
Uint8
m_prefSize
;
// words in min/max prefix each
...
@@ -248,6 +259,8 @@ private:
...
@@ -248,6 +259,8 @@ private:
* also represented by position 0 of next node. Includes direction
* also represented by position 0 of next node. Includes direction
* and copy of entry used by scan.
* and copy of entry used by scan.
*/
*/
struct
TreePos
;
friend
struct
TreePos
;
struct
TreePos
{
struct
TreePos
{
TupAddr
m_addr
;
// logical node address
TupAddr
m_addr
;
// logical node address
TupLoc
m_loc
;
// physical address
TupLoc
m_loc
;
// physical address
...
@@ -264,6 +277,8 @@ private:
...
@@ -264,6 +277,8 @@ private:
* Descriptor page. The "hot" metadata for an index is stored as
* Descriptor page. The "hot" metadata for an index is stored as
* a contiguous array of words on some page.
* a contiguous array of words on some page.
*/
*/
struct
DescPage
;
friend
struct
DescPage
;
struct
DescPage
{
struct
DescPage
{
Uint32
m_nextPage
;
Uint32
m_nextPage
;
Uint32
m_numFree
;
// number of free words
Uint32
m_numFree
;
// number of free words
...
@@ -301,6 +316,8 @@ private:
...
@@ -301,6 +316,8 @@ private:
* Complete metadata for one index. The array of attributes has
* Complete metadata for one index. The array of attributes has
* variable size.
* variable size.
*/
*/
struct
DescEnt
;
friend
struct
DescEnt
;
struct
DescEnt
{
struct
DescEnt
{
DescHead
m_descHead
;
DescHead
m_descHead
;
DescAttr
m_descAttr
[
1
];
// variable size data
DescAttr
m_descAttr
[
1
];
// variable size data
...
@@ -329,6 +346,8 @@ private:
...
@@ -329,6 +346,8 @@ private:
* be for an entry we were moved away from. In any case nothing
* be for an entry we were moved away from. In any case nothing
* happens with current entry before lock wait flag is cleared.
* happens with current entry before lock wait flag is cleared.
*/
*/
struct
ScanOp
;
friend
struct
ScanOp
;
struct
ScanOp
{
struct
ScanOp
{
enum
{
enum
{
Undef
=
0
,
Undef
=
0
,
...
@@ -382,6 +401,8 @@ private:
...
@@ -382,6 +401,8 @@ private:
* Ordered index. Top level data structure. The primary table (table
* Ordered index. Top level data structure. The primary table (table
* being indexed) lives in TUP.
* being indexed) lives in TUP.
*/
*/
struct
Index
;
friend
struct
Index
;
struct
Index
{
struct
Index
{
enum
State
{
enum
State
{
NotDefined
=
0
,
NotDefined
=
0
,
...
@@ -412,6 +433,8 @@ private:
...
@@ -412,6 +433,8 @@ private:
* duplicate fragments known to LQH/ACC/TUP. Includes tree header.
* duplicate fragments known to LQH/ACC/TUP. Includes tree header.
* There are no maintenance operation records yet.
* There are no maintenance operation records yet.
*/
*/
struct
Frag
;
friend
struct
Frag
;
struct
Frag
{
struct
Frag
{
Uint32
m_tableId
;
// copy from index level
Uint32
m_tableId
;
// copy from index level
Uint32
m_indexId
;
Uint32
m_indexId
;
...
@@ -458,6 +481,8 @@ private:
...
@@ -458,6 +481,8 @@ private:
* different implementations of index memory access. The cache is
* different implementations of index memory access. The cache is
* committed and released at the end of the operation.
* committed and released at the end of the operation.
*/
*/
struct
NodeHandle
;
friend
struct
NodeHandle
;
struct
NodeHandle
{
struct
NodeHandle
{
enum
Flags
{
enum
Flags
{
// bits 0,1 mark need for left,right prefix
// bits 0,1 mark need for left,right prefix
...
@@ -508,7 +533,6 @@ private:
...
@@ -508,7 +533,6 @@ private:
};
};
typedef
Ptr
<
NodeHandle
>
NodeHandlePtr
;
typedef
Ptr
<
NodeHandle
>
NodeHandlePtr
;
ArrayPool
<
NodeHandle
>
c_nodeHandlePool
;
ArrayPool
<
NodeHandle
>
c_nodeHandlePool
;
friend
class
NodeHandle
;
// parameters for methods
// parameters for methods
...
@@ -528,6 +552,8 @@ private:
...
@@ -528,6 +552,8 @@ private:
/*
/*
* Read index key attributes.
* Read index key attributes.
*/
*/
struct
ReadPar
;
friend
struct
ReadPar
;
struct
ReadPar
{
struct
ReadPar
{
TreeEnt
m_ent
;
// tuple to read
TreeEnt
m_ent
;
// tuple to read
unsigned
m_first
;
// first index attribute
unsigned
m_first
;
// first index attribute
...
@@ -551,6 +577,8 @@ private:
...
@@ -551,6 +577,8 @@ private:
/*
/*
* Tree search for entry.
* Tree search for entry.
*/
*/
struct
SearchPar
;
friend
struct
SearchPar
;
struct
SearchPar
{
struct
SearchPar
{
ConstData
m_data
;
// input index key values
ConstData
m_data
;
// input index key values
TreeEnt
m_ent
;
// input tuple and version
TreeEnt
m_ent
;
// input tuple and version
...
@@ -560,6 +588,8 @@ private:
...
@@ -560,6 +588,8 @@ private:
/*
/*
* Attribute data comparison.
* Attribute data comparison.
*/
*/
struct
CmpPar
;
friend
struct
CmpPar
;
struct
CmpPar
{
struct
CmpPar
{
ConstData
m_data1
;
// full search key
ConstData
m_data1
;
// full search key
ConstData
m_data2
;
// full or prefix data
ConstData
m_data2
;
// full or prefix data
...
@@ -572,6 +602,8 @@ private:
...
@@ -572,6 +602,8 @@ private:
/*
/*
* Scan bound comparison.
* Scan bound comparison.
*/
*/
struct
BoundPar
;
friend
struct
BoundPar
;
struct
BoundPar
{
struct
BoundPar
{
ConstData
m_data1
;
// full bound data
ConstData
m_data1
;
// full bound data
ConstData
m_data2
;
// full or prefix data
ConstData
m_data2
;
// full or prefix data
...
...
ndb/src/kernel/blocks/trix/Trix.hpp
View file @
e492e902
...
@@ -39,6 +39,15 @@ public:
...
@@ -39,6 +39,15 @@ public:
Trix
(
const
class
Configuration
&
conf
);
Trix
(
const
class
Configuration
&
conf
);
virtual
~
Trix
();
virtual
~
Trix
();
public:
// Subscription data, when communicating with SUMA
enum
RequestType
{
TABLE_REORG
=
0
,
INDEX_BUILD
=
1
};
typedef
DataBuffer
<
11
>
AttrOrderBuffer
;
private:
private:
// Private attributes
// Private attributes
...
@@ -87,14 +96,6 @@ private:
...
@@ -87,14 +96,6 @@ private:
Uint16
c_noNodesFailed
;
Uint16
c_noNodesFailed
;
Uint16
c_noActiveNodes
;
Uint16
c_noActiveNodes
;
// Subscription data, when communicating with SUMA
enum
RequestType
{
TABLE_REORG
=
0
,
INDEX_BUILD
=
1
};
typedef
DataBuffer
<
11
>
AttrOrderBuffer
;
AttrOrderBuffer
::
DataBufferPool
c_theAttrOrderBufferPool
;
AttrOrderBuffer
::
DataBufferPool
c_theAttrOrderBufferPool
;
struct
SubscriptionRecord
{
struct
SubscriptionRecord
{
...
...
ndb/src/ndbapi/DictCache.hpp
View file @
e492e902
...
@@ -56,13 +56,14 @@ public:
...
@@ -56,13 +56,14 @@ public:
NdbTableImpl
*
put
(
const
char
*
name
,
NdbTableImpl
*
);
NdbTableImpl
*
put
(
const
char
*
name
,
NdbTableImpl
*
);
void
drop
(
NdbTableImpl
*
);
void
drop
(
NdbTableImpl
*
);
void
release
(
NdbTableImpl
*
);
void
release
(
NdbTableImpl
*
);
p
rivate
:
p
ublic
:
enum
Status
{
enum
Status
{
OK
=
0
,
OK
=
0
,
DROPPED
=
1
,
DROPPED
=
1
,
RETREIVING
=
2
RETREIVING
=
2
};
};
private:
struct
TableVersion
{
struct
TableVersion
{
Uint32
m_version
;
Uint32
m_version
;
Uint32
m_refCount
;
Uint32
m_refCount
;
...
...
ndb/src/ndbapi/NdbDictionary.cpp
View file @
e492e902
...
@@ -234,7 +234,7 @@ NdbDictionary::Table::~Table(){
...
@@ -234,7 +234,7 @@ NdbDictionary::Table::~Table(){
}
}
NdbDictionary
::
Table
&
NdbDictionary
::
Table
&
NdbDictionary
::
Table
::
operator
=
(
const
NdbDictionary
::
Table
::
Table
&
table
)
NdbDictionary
::
Table
::
operator
=
(
const
NdbDictionary
::
Table
&
table
)
{
{
m_impl
.
assign
(
table
.
m_impl
);
m_impl
.
assign
(
table
.
m_impl
);
...
...
ndb/src/ndbapi/NdbDictionaryImpl.cpp
View file @
e492e902
...
@@ -56,8 +56,8 @@ NdbColumnImpl::NdbColumnImpl(NdbDictionary::Column & f)
...
@@ -56,8 +56,8 @@ NdbColumnImpl::NdbColumnImpl(NdbDictionary::Column & f)
init
();
init
();
}
}
NdbColumnImpl
::
NdbColumnImpl
&
NdbColumnImpl
&
NdbColumnImpl
::
operator
=
(
const
NdbColumnImpl
::
NdbColumnImpl
&
col
)
NdbColumnImpl
::
operator
=
(
const
NdbColumnImpl
&
col
)
{
{
m_attrId
=
col
.
m_attrId
;
m_attrId
=
col
.
m_attrId
;
m_name
=
col
.
m_name
;
m_name
=
col
.
m_name
;
...
...
ndb/src/rep/SignalQueue.hpp
View file @
e492e902
...
@@ -53,7 +53,7 @@ public:
...
@@ -53,7 +53,7 @@ public:
template
<
class
T
>
bool
waitFor
(
Vector
<
T
>
&
t
,
template
<
class
T
>
bool
waitFor
(
Vector
<
T
>
&
t
,
T
*&
handler
,
T
*&
handler
,
NdbApiSignal
*&
signal
,
NdbApiSignal
*&
signal
,
Uint32
timeout
=
DEFAULT_TIMEOUT
);
Uint32
timeout
);
/**
/**
* size()
* size()
...
...
ndb/src/rep/adapters/ExtNDB.cpp
View file @
e492e902
...
@@ -186,8 +186,8 @@ public:
...
@@ -186,8 +186,8 @@ public:
};
};
};
};
void
*
extern
"C"
ExtNDB
::
signalExecThread_C
(
void
*
r
)
void
*
signalExecThread_C
(
void
*
r
)
{
{
ExtNDB
*
grepps
=
(
ExtNDB
*
)
r
;
ExtNDB
*
grepps
=
(
ExtNDB
*
)
r
;
...
@@ -198,6 +198,7 @@ ExtNDB::signalExecThread_C(void *r)
...
@@ -198,6 +198,7 @@ ExtNDB::signalExecThread_C(void *r)
return
0
;
return
0
;
}
}
void
void
ExtNDB
::
signalExecThreadRun
()
ExtNDB
::
signalExecThreadRun
()
{
{
...
@@ -233,10 +234,12 @@ ExtNDB::signalExecThreadRun()
...
@@ -233,10 +234,12 @@ ExtNDB::signalExecThreadRun()
sl
.
push_back
(
SigMatch
(
GSN_GREP_SUB_START_REF
,
&
ExtNDB
::
sendSignalRep
));
sl
.
push_back
(
SigMatch
(
GSN_GREP_SUB_START_REF
,
&
ExtNDB
::
sendSignalRep
));
sl
.
push_back
(
SigMatch
(
GSN_GREP_SUB_CREATE_REF
,
&
ExtNDB
::
sendSignalRep
));
sl
.
push_back
(
SigMatch
(
GSN_GREP_SUB_CREATE_REF
,
&
ExtNDB
::
sendSignalRep
));
while
(
1
)
{
while
(
1
)
{
SigMatch
*
handler
=
NULL
;
SigMatch
*
handler
=
NULL
;
NdbApiSignal
*
signal
=
NULL
;
NdbApiSignal
*
signal
=
NULL
;
if
(
m_signalRecvQueue
.
waitFor
(
sl
,
handler
,
signal
))
{
if
(
m_signalRecvQueue
.
waitFor
(
sl
,
handler
,
signal
,
DEFAULT_TIMEOUT
))
{
#if 0
#if 0
RLOG(("Removed signal from queue (GSN: %d, QSize: %d)",
RLOG(("Removed signal from queue (GSN: %d, QSize: %d)",
signal->readSignalNumber(), m_signalRecvQueue.size()));
signal->readSignalNumber(), m_signalRecvQueue.size()));
...
...
ndb/src/rep/adapters/ExtNDB.hpp
View file @
e492e902
...
@@ -34,6 +34,10 @@
...
@@ -34,6 +34,10 @@
#include <rep/storage/GCIContainerPS.hpp>
#include <rep/storage/GCIContainerPS.hpp>
#include "ExtAPI.hpp"
#include "ExtAPI.hpp"
extern
"C"
{
static
void
*
signalExecThread_C
(
void
*
);
}
/**
/**
* @class ExtNDB
* @class ExtNDB
* @brief Class responsible for connection to primary system GREP
* @brief Class responsible for connection to primary system GREP
...
@@ -58,15 +62,15 @@ public:
...
@@ -58,15 +62,15 @@ public:
void
signalErrorHandler
(
NdbApiSignal
*
s
,
Uint32
nodeId
);
void
signalErrorHandler
(
NdbApiSignal
*
s
,
Uint32
nodeId
);
private:
private:
friend
void
*
signalExecThread_C
(
void
*
);
void
signalExecThreadRun
();
static
void
execSignal
(
void
*
signalSender
,
NdbApiSignal
*
signal
,
static
void
execSignal
(
void
*
signalSender
,
NdbApiSignal
*
signal
,
class
LinearSectionPtr
ptr
[
3
]);
class
LinearSectionPtr
ptr
[
3
]);
static
void
execNodeStatus
(
void
*
signalSender
,
NodeId
,
static
void
execNodeStatus
(
void
*
signalSender
,
NodeId
,
bool
alive
,
bool
nfCompleted
);
bool
alive
,
bool
nfCompleted
);
void
signalExecThreadRun
();
static
void
*
signalExecThread_C
(
void
*
);
void
sendSignalRep
(
NdbApiSignal
*
);
void
sendSignalRep
(
NdbApiSignal
*
);
void
sendDisconnectRep
(
Uint32
nodeId
);
void
sendDisconnectRep
(
Uint32
nodeId
);
...
...
ndb/src/rep/transfer/TransPS.cpp
View file @
e492e902
...
@@ -153,8 +153,9 @@ public:
...
@@ -153,8 +153,9 @@ public:
};
};
};
};
extern
"C"
void
*
void
*
TransPS
::
signalExecThread_C
(
void
*
r
)
signalExecThread_C
(
void
*
r
)
{
{
TransPS
*
repps
=
(
TransPS
*
)
r
;
TransPS
*
repps
=
(
TransPS
*
)
r
;
...
@@ -196,7 +197,7 @@ TransPS::signalExecThreadRun()
...
@@ -196,7 +197,7 @@ TransPS::signalExecThreadRun()
while
(
1
)
{
while
(
1
)
{
SigMatch
*
handler
=
NULL
;
SigMatch
*
handler
=
NULL
;
NdbApiSignal
*
signal
=
NULL
;
NdbApiSignal
*
signal
=
NULL
;
if
(
m_signalRecvQueue
.
waitFor
(
sl
,
handler
,
signal
))
{
if
(
m_signalRecvQueue
.
waitFor
(
sl
,
handler
,
signal
,
DEFAULT_TIMEOUT
))
{
#if 0
#if 0
ndbout_c("TransPS: Removed signal from queue (GSN: %d, QSize: %d)",
ndbout_c("TransPS: Removed signal from queue (GSN: %d, QSize: %d)",
signal->readSignalNumber(), m_signalRecvQueue.size());
signal->readSignalNumber(), m_signalRecvQueue.size());
...
...
ndb/src/rep/transfer/TransPS.hpp
View file @
e492e902
...
@@ -35,6 +35,10 @@
...
@@ -35,6 +35,10 @@
#include <rep/rep_version.hpp>
#include <rep/rep_version.hpp>
extern
"C"
{
static
void
*
signalExecThread_C
(
void
*
);
}
/**
/**
* @class TransPS
* @class TransPS
* @brief Responsible for REP-REP interface in Primary System role
* @brief Responsible for REP-REP interface in Primary System role
...
@@ -62,8 +66,10 @@ private:
...
@@ -62,8 +66,10 @@ private:
/**
/**
* SignalQueue executor thread
* SignalQueue executor thread
*/
*/
friend
void
*
signalExecThread_C
(
void
*
);
void
signalExecThreadRun
();
void
signalExecThreadRun
();
static
void
*
signalExecThread_C
(
void
*
);
static
void
execSignal
(
void
*
signalSender
,
NdbApiSignal
*
signal
,
static
void
execSignal
(
void
*
signalSender
,
NdbApiSignal
*
signal
,
class
LinearSectionPtr
ptr
[
3
]);
class
LinearSectionPtr
ptr
[
3
]);
...
...
ndb/src/rep/transfer/TransSS.cpp
View file @
e492e902
...
@@ -165,8 +165,9 @@ public:
...
@@ -165,8 +165,9 @@ public:
};
};
};
};
extern
"C"
void
*
void
*
TransSS
::
signalExecThread_C
(
void
*
r
)
signalExecThread_C
(
void
*
r
)
{
{
TransSS
*
transss
=
(
TransSS
*
)
r
;
TransSS
*
transss
=
(
TransSS
*
)
r
;
...
@@ -243,7 +244,7 @@ TransSS::signalExecThreadRun()
...
@@ -243,7 +244,7 @@ TransSS::signalExecThreadRun()
while
(
1
)
{
while
(
1
)
{
SigMatch
*
handler
=
NULL
;
SigMatch
*
handler
=
NULL
;
NdbApiSignal
*
signal
=
NULL
;
NdbApiSignal
*
signal
=
NULL
;
if
(
m_signalRecvQueue
.
waitFor
(
sl
,
handler
,
signal
))
if
(
m_signalRecvQueue
.
waitFor
(
sl
,
handler
,
signal
,
DEFAULT_TIMEOUT
))
{
{
#if 0
#if 0
ndbout_c("TransSS: Removed signal from queue (GSN: %d, QSize: %d)",
ndbout_c("TransSS: Removed signal from queue (GSN: %d, QSize: %d)",
...
...
ndb/src/rep/transfer/TransSS.hpp
View file @
e492e902
...
@@ -34,6 +34,10 @@
...
@@ -34,6 +34,10 @@
#include <rep/state/RepState.hpp>
#include <rep/state/RepState.hpp>
extern
"C"
{
static
void
*
signalExecThread_C
(
void
*
);
}
/**
/**
* @class TransSS
* @class TransSS
* @brief Responsible for REP-REP interface in Standby System role
* @brief Responsible for REP-REP interface in Standby System role
...
@@ -57,8 +61,8 @@ private:
...
@@ -57,8 +61,8 @@ private:
/***************************************************************************
/***************************************************************************
* Private Methods
* Private Methods
***************************************************************************/
***************************************************************************/
friend
void
*
signalExecThread_C
(
void
*
);
void
signalExecThreadRun
();
///< SignalQueue executor thread
void
signalExecThreadRun
();
///< SignalQueue executor thread
static
void
*
signalExecThread_C
(
void
*
);
static
void
execSignal
(
void
*
executorObj
,
NdbApiSignal
*
signal
,
static
void
execSignal
(
void
*
executorObj
,
NdbApiSignal
*
signal
,
class
LinearSectionPtr
ptr
[
3
]);
class
LinearSectionPtr
ptr
[
3
]);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment