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
ed100ff8
Commit
ed100ff8
authored
18 years ago
by
jonas@perch.ndb.mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge perch.ndb.mysql.com:/home/jonas/src/50-work
into perch.ndb.mysql.com:/home/jonas/src/51-work
parents
9d03c59c
92581183
Branches unavailable
Tags unavailable
No related merge requests found
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
15 additions
and
64 deletions
+15
-64
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp
+14
-5
storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp
storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp
+1
-3
storage/ndb/src/ndbapi/NdbScanOperation.cpp
storage/ndb/src/ndbapi/NdbScanOperation.cpp
+0
-56
No files found.
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp
View file @
ed100ff8
...
...
@@ -8529,11 +8529,20 @@ void Dbdih::openingTableErrorLab(Signal* signal, FileRecordPtr filePtr)
/* WE FAILED IN OPENING A FILE. IF THE FIRST FILE THEN TRY WITH THE */
/* DUPLICATE FILE, OTHERWISE WE REPORT AN ERROR IN THE SYSTEM RESTART. */
/* ---------------------------------------------------------------------- */
ndbrequire
(
filePtr
.
i
==
tabPtr
.
p
->
tabFile
[
0
]);
if
(
filePtr
.
i
==
tabPtr
.
p
->
tabFile
[
0
])
{
filePtr
.
i
=
tabPtr
.
p
->
tabFile
[
1
];
ptrCheckGuard
(
filePtr
,
cfileFileSize
,
fileRecord
);
openFileRw
(
signal
,
filePtr
);
filePtr
.
p
->
reqStatus
=
FileRecord
::
OPENING_TABLE
;
}
else
{
char
buf
[
256
];
BaseString
::
snprintf
(
buf
,
"Error opening DIH schema files for table: %d"
,
tabPtr
.
i
);
progError
(
__LINE__
,
NDBD_EXIT_AFS_NO_SUCH_FILE
,
buf
);
}
}
//Dbdih::openingTableErrorLab()
void
Dbdih
::
readingTableLab
(
Signal
*
signal
,
FileRecordPtr
filePtr
)
...
...
This diff is collapsed.
Click to expand it.
storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp
View file @
ed100ff8
...
...
@@ -12789,19 +12789,17 @@ void Dblqh::lastWriteInFileLab(Signal* signal)
void
Dblqh
::
writePageZeroLab
(
Signal
*
signal
)
{
if
(
false
&&
logPartPtr
.
p
->
logPartState
==
LogPartRecord
::
FILE_CHANGE_PROBLEM
)
if
(
logPartPtr
.
p
->
logPartState
==
LogPartRecord
::
FILE_CHANGE_PROBLEM
)
{
if
(
logPartPtr
.
p
->
firstLogQueue
==
RNIL
)
{
jam
();
logPartPtr
.
p
->
logPartState
=
LogPartRecord
::
IDLE
;
ndbout_c
(
"resetting logPartState to IDLE"
);
}
else
{
jam
();
logPartPtr
.
p
->
logPartState
=
LogPartRecord
::
ACTIVE
;
ndbout_c
(
"resetting logPartState to ACTIVE"
);
}
}
...
...
This diff is collapsed.
Click to expand it.
storage/ndb/src/ndbapi/NdbScanOperation.cpp
View file @
ed100ff8
...
...
@@ -1574,62 +1574,6 @@ NdbScanOperation::close_impl(TransporterFacade* tp, bool forceSend,
return
-
1
;
}
bool
holdLock
=
false
;
if
(
theSCAN_TABREQ
)
{
ScanTabReq
*
req
=
CAST_PTR
(
ScanTabReq
,
theSCAN_TABREQ
->
getDataPtrSend
());
holdLock
=
ScanTabReq
::
getHoldLockFlag
(
req
->
requestInfo
);
}
/**
* When using locks, force close of scan directly
*/
if
(
holdLock
&&
theError
.
code
==
0
&&
(
m_sent_receivers_count
+
m_conf_receivers_count
+
m_api_receivers_count
))
{
NdbApiSignal
tSignal
(
theNdb
->
theMyRef
);
tSignal
.
setSignal
(
GSN_SCAN_NEXTREQ
);
Uint32
*
theData
=
tSignal
.
getDataPtrSend
();
Uint64
transId
=
theNdbCon
->
theTransactionId
;
theData
[
0
]
=
theNdbCon
->
theTCConPtr
;
theData
[
1
]
=
1
;
theData
[
2
]
=
transId
;
theData
[
3
]
=
(
Uint32
)
(
transId
>>
32
);
tSignal
.
setLength
(
4
);
int
ret
=
tp
->
sendSignal
(
&
tSignal
,
nodeId
);
if
(
ret
)
{
setErrorCode
(
4008
);
return
-
1
;
}
/**
* If no receiver is outstanding...
* set it to 1 as execCLOSE_SCAN_REP resets it
*/
m_sent_receivers_count
=
m_sent_receivers_count
?
m_sent_receivers_count
:
1
;
while
(
theError
.
code
==
0
&&
(
m_sent_receivers_count
+
m_conf_receivers_count
))
{
int
return_code
=
poll_guard
->
wait_scan
(
WAITFOR_SCAN_TIMEOUT
,
nodeId
,
forceSend
);
switch
(
return_code
){
case
0
:
break
;
case
-
1
:
setErrorCode
(
4008
);
case
-
2
:
m_api_receivers_count
=
0
;
m_conf_receivers_count
=
0
;
m_sent_receivers_count
=
0
;
theNdbCon
->
theReleaseOnClose
=
true
;
return
-
1
;
}
}
return
0
;
}
/**
* Wait for outstanding
*/
...
...
This diff is collapsed.
Click to expand it.
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