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
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
79fd0904
Commit
79fd0904
authored
Apr 18, 2005
by
unknown
Browse files
Options
Browse Files
Download
Plain Diff
Merge mysql.com:/home/jonas/src/mysql-5.0
into mysql.com:/home/jonas/src/mysql-5.0-ndb
parents
8810f563
76fc7235
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
34 additions
and
15 deletions
+34
-15
ndb/src/kernel/blocks/dbdict/Dbdict.cpp
ndb/src/kernel/blocks/dbdict/Dbdict.cpp
+28
-9
ndb/src/ndbapi/Ndbif.cpp
ndb/src/ndbapi/Ndbif.cpp
+4
-4
ndb/test/ndbapi/testIndex.cpp
ndb/test/ndbapi/testIndex.cpp
+2
-2
No files found.
ndb/src/kernel/blocks/dbdict/Dbdict.cpp
View file @
79fd0904
...
...
@@ -9884,11 +9884,20 @@ Dbdict::execBUILDINDXREQ(Signal* signal)
requestType
==
BuildIndxReq
::
RT_ALTER_INDEX
||
requestType
==
BuildIndxReq
::
RT_SYSTEMRESTART
)
{
jam
();
const
bool
isLocal
=
req
->
getRequestFlag
()
&
RequestFlag
::
RF_LOCAL
;
NdbNodeBitmask
receiverNodes
=
c_aliveNodes
;
if
(
isLocal
)
{
receiverNodes
.
clear
();
receiverNodes
.
set
(
getOwnNodeId
());
}
if
(
signal
->
getLength
()
==
BuildIndxReq
::
SignalLength
)
{
jam
();
if
(
getOwnNodeId
()
!=
c_masterNodeId
)
{
if
(
!
isLocal
&&
getOwnNodeId
()
!=
c_masterNodeId
)
{
jam
();
releaseSections
(
signal
);
OpBuildIndex
opBad
;
opPtr
.
p
=
&
opBad
;
...
...
@@ -9901,9 +9910,9 @@ Dbdict::execBUILDINDXREQ(Signal* signal)
}
// forward initial request plus operation key to all
req
->
setOpKey
(
++
c_opRecordSequence
);
NodeReceiverGroup
rg
(
DBDICT
,
c_alive
Nodes
);
NodeReceiverGroup
rg
(
DBDICT
,
receiver
Nodes
);
sendSignal
(
rg
,
GSN_BUILDINDXREQ
,
signal
,
BuildIndxReq
::
SignalLength
+
1
,
JBB
);
signal
,
BuildIndxReq
::
SignalLength
+
1
,
JBB
);
return
;
}
// seize operation record
...
...
@@ -9926,7 +9935,7 @@ Dbdict::execBUILDINDXREQ(Signal* signal)
}
c_opBuildIndex
.
add
(
opPtr
);
// master expects to hear from all
opPtr
.
p
->
m_signalCounter
=
c_alive
Nodes
;
opPtr
.
p
->
m_signalCounter
=
receiver
Nodes
;
buildIndex_sendReply
(
signal
,
opPtr
,
false
);
return
;
}
...
...
@@ -10281,10 +10290,20 @@ Dbdict::buildIndex_sendSlaveReq(Signal* signal, OpBuildIndexPtr opPtr)
req
->
setConnectionPtr
(
opPtr
.
p
->
key
);
req
->
setRequestType
(
opPtr
.
p
->
m_requestType
);
req
->
addRequestFlag
(
opPtr
.
p
->
m_requestFlag
);
opPtr
.
p
->
m_signalCounter
=
c_aliveNodes
;
NodeReceiverGroup
rg
(
DBDICT
,
c_aliveNodes
);
sendSignal
(
rg
,
GSN_BUILDINDXREQ
,
signal
,
BuildIndxReq
::
SignalLength
,
JBB
);
if
(
opPtr
.
p
->
m_requestFlag
&
RequestFlag
::
RF_LOCAL
)
{
opPtr
.
p
->
m_signalCounter
.
clearWaitingFor
();
opPtr
.
p
->
m_signalCounter
.
setWaitingFor
(
getOwnNodeId
());
sendSignal
(
reference
(),
GSN_BUILDINDXREQ
,
signal
,
BuildIndxReq
::
SignalLength
,
JBB
);
}
else
{
opPtr
.
p
->
m_signalCounter
=
c_aliveNodes
;
NodeReceiverGroup
rg
(
DBDICT
,
c_aliveNodes
);
sendSignal
(
rg
,
GSN_BUILDINDXREQ
,
signal
,
BuildIndxReq
::
SignalLength
,
JBB
);
}
}
void
...
...
ndb/src/ndbapi/Ndbif.cpp
View file @
79fd0904
...
...
@@ -454,7 +454,7 @@ Ndb::handleReceivedSignal(NdbApiSignal* aSignal, LinearSectionPtr ptr[3])
tFirstDataPtr
=
int2void
(
tFirstData
);
if
(
tFirstDataPtr
!=
0
){
tOp
=
void2rec_op
(
tFirstDataPtr
);
if
(
tOp
->
checkMagicNumber
()
==
0
)
{
if
(
tOp
->
checkMagicNumber
(
false
)
==
0
)
{
tCon
=
tOp
->
theNdbCon
;
if
(
tCon
!=
NULL
)
{
if
((
tCon
->
theSendStatus
==
NdbTransaction
::
sendTC_OP
)
||
...
...
@@ -467,11 +467,11 @@ Ndb::handleReceivedSignal(NdbApiSignal* aSignal, LinearSectionPtr ptr[3])
}
//if
}
//if
}
//if
}
else
{
}
#ifdef VM_TRACE
ndbout_c
(
"Recevied TCKEY_FAILREF wo/ operation"
);
ndbout_c
(
"Recevied TCKEY_FAILREF wo/ operation"
);
#endif
}
return
;
break
;
}
case
GSN_TCKEYREF
:
...
...
ndb/test/ndbapi/testIndex.cpp
View file @
79fd0904
...
...
@@ -1323,14 +1323,14 @@ TESTCASE("NFNR2_O",
"Test that indexes are correctly maintained during node fail and node restart"
){
TC_PROPERTY
(
"OrderedIndex"
,
1
);
TC_PROPERTY
(
"LoggedIndexes"
,
(
unsigned
)
0
);
TC_PROPERTY
(
"PauseThreads"
,
2
);
TC_PROPERTY
(
"PauseThreads"
,
1
);
INITIALIZER
(
runClearTable
);
INITIALIZER
(
createRandomIndex
);
INITIALIZER
(
createPkIndex
);
INITIALIZER
(
runLoadTable
);
STEP
(
runRestarts
);
STEP
(
runTransactions2
);
STEP
(
runTransactions2
);
//
STEP(runTransactions2);
FINALIZER
(
runVerifyIndex
);
FINALIZER
(
createRandomIndex_Drop
);
FINALIZER
(
createPkIndex_Drop
);
...
...
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