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
1d5969c8
Commit
1d5969c8
authored
Jul 05, 2006
by
tomas@poseidon.ndb.mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-5.1-ndb
parents
1746d418
06ac56e6
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
55 additions
and
31 deletions
+55
-31
mysql-test/t/disabled.def
mysql-test/t/disabled.def
+0
-4
sql/ha_ndbcluster_binlog.cc
sql/ha_ndbcluster_binlog.cc
+16
-3
storage/ndb/include/mgmapi/ndbd_exit_codes.h
storage/ndb/include/mgmapi/ndbd_exit_codes.h
+1
-0
storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp
storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp
+9
-9
storage/ndb/src/kernel/error/ndbd_exit_codes.c
storage/ndb/src/kernel/error/ndbd_exit_codes.c
+2
-0
storage/ndb/src/ndbapi/Ndb.cpp
storage/ndb/src/ndbapi/Ndb.cpp
+27
-15
No files found.
mysql-test/t/disabled.def
View file @
1d5969c8
...
@@ -18,10 +18,6 @@
...
@@ -18,10 +18,6 @@
#im_life_cycle : Bug#20368 2006-06-10 alik im_life_cycle test fails
#im_life_cycle : Bug#20368 2006-06-10 alik im_life_cycle test fails
ndb_autodiscover : BUG#18952 2006-02-16 jmiller Needs to be fixed w.r.t binlog
ndb_autodiscover : BUG#18952 2006-02-16 jmiller Needs to be fixed w.r.t binlog
ndb_autodiscover2 : BUG#18952 2006-02-16 jmiller Needs to be fixed w.r.t binlog
ndb_autodiscover2 : BUG#18952 2006-02-16 jmiller Needs to be fixed w.r.t binlog
ndb_autodiscover3 : BUD#20843 2006-07-04 tomas ndb_autodiscover3 fails randomly
#ndb_binlog_discover : BUG#19395 2006-04-28 tomas/knielsen mysqld does not always detect cluster shutdown
#ndb_cache2 : BUG#18597 2006-03-28 brian simultaneous drop table and ndb statistics update triggers node failure
#ndb_cache_multi2 : BUG#18597 2006-04-10 kent simultaneous drop table and ndb statistics update triggers node failure
ndb_load : BUG#17233 2006-05-04 tomas failed load data from infile causes mysqld dbug_assert, binlog not flushed
ndb_load : BUG#17233 2006-05-04 tomas failed load data from infile causes mysqld dbug_assert, binlog not flushed
partition_03ndb : BUG#16385 2006-03-24 mikael Partitions: crash when updating a range partitioned NDB table
partition_03ndb : BUG#16385 2006-03-24 mikael Partitions: crash when updating a range partitioned NDB table
ps_7ndb : BUG#18950 2006-02-16 jmiller create table like does not obtain LOCK_open
ps_7ndb : BUG#18950 2006-02-16 jmiller create table like does not obtain LOCK_open
...
...
sql/ha_ndbcluster_binlog.cc
View file @
1d5969c8
...
@@ -3442,8 +3442,8 @@ restart:
...
@@ -3442,8 +3442,8 @@ restart:
// wait for the first event
// wait for the first event
thd
->
proc_info
=
"Waiting for first event from ndbcluster"
;
thd
->
proc_info
=
"Waiting for first event from ndbcluster"
;
DBUG_PRINT
(
"info"
,
(
"Waiting for the first event"
));
DBUG_PRINT
(
"info"
,
(
"Waiting for the first event"
));
int
schema_res
=
0
;
int
schema_res
=
0
,
res
=
0
;
Uint64
schema_gci
=
0
;
Uint64
schema_gci
=
0
,
gci
=
0
;
while
(
schema_res
==
0
&&
!
abort_loop
)
while
(
schema_res
==
0
&&
!
abort_loop
)
{
{
schema_res
=
s_ndb
->
pollEvents
(
100
,
&
schema_gci
);
schema_res
=
s_ndb
->
pollEvents
(
100
,
&
schema_gci
);
...
@@ -3452,7 +3452,14 @@ restart:
...
@@ -3452,7 +3452,14 @@ restart:
DBUG_PRINT
(
"info"
,
(
"schema_res: %d schema_gci: %d"
,
schema_res
,
schema_gci
));
DBUG_PRINT
(
"info"
,
(
"schema_res: %d schema_gci: %d"
,
schema_res
,
schema_gci
));
if
(
schema_res
>
0
)
if
(
schema_res
>
0
)
{
{
i_ndb
->
pollEvents
(
0
);
while
(
res
>=
0
&&
gci
<
schema_gci
&&
!
abort_loop
)
{
res
=
i_ndb
->
pollEvents
(
100
,
&
gci
);
}
if
(
gci
>
schema_gci
)
{
schema_gci
=
gci
;
}
i_ndb
->
flushIncompleteEvents
(
schema_gci
);
i_ndb
->
flushIncompleteEvents
(
schema_gci
);
s_ndb
->
flushIncompleteEvents
(
schema_gci
);
s_ndb
->
flushIncompleteEvents
(
schema_gci
);
if
(
schema_gci
<
ndb_latest_handled_binlog_epoch
)
if
(
schema_gci
<
ndb_latest_handled_binlog_epoch
)
...
@@ -3466,6 +3473,12 @@ restart:
...
@@ -3466,6 +3473,12 @@ restart:
ndb_latest_applied_binlog_epoch
=
0
;
ndb_latest_applied_binlog_epoch
=
0
;
ndb_latest_received_binlog_epoch
=
0
;
ndb_latest_received_binlog_epoch
=
0
;
}
}
else
if
(
ndb_latest_applied_binlog_epoch
>
0
)
{
sql_print_warning
(
"NDB Binlog: cluster has reconnected. "
"Changes to the database that occured while "
"disconnected will not be in the binlog"
);
}
if
(
ndb_extra_logging
)
if
(
ndb_extra_logging
)
{
{
sql_print_information
(
"NDB Binlog: starting log at epoch %u"
,
sql_print_information
(
"NDB Binlog: starting log at epoch %u"
,
...
...
storage/ndb/include/mgmapi/ndbd_exit_codes.h
View file @
1d5969c8
...
@@ -71,6 +71,7 @@ typedef ndbd_exit_classification_enum ndbd_exit_classification;
...
@@ -71,6 +71,7 @@ typedef ndbd_exit_classification_enum ndbd_exit_classification;
#define NDBD_EXIT_INDEX_NOTINRANGE 2304
#define NDBD_EXIT_INDEX_NOTINRANGE 2304
#define NDBD_EXIT_ARBIT_SHUTDOWN 2305
#define NDBD_EXIT_ARBIT_SHUTDOWN 2305
#define NDBD_EXIT_POINTER_NOTINRANGE 2306
#define NDBD_EXIT_POINTER_NOTINRANGE 2306
#define NDBD_EXIT_PARTITIONED_SHUTDOWN 2307
#define NDBD_EXIT_SR_OTHERNODEFAILED 2308
#define NDBD_EXIT_SR_OTHERNODEFAILED 2308
#define NDBD_EXIT_NODE_NOT_DEAD 2309
#define NDBD_EXIT_NODE_NOT_DEAD 2309
#define NDBD_EXIT_SR_REDOLOG 2310
#define NDBD_EXIT_SR_REDOLOG 2310
...
...
storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp
View file @
1d5969c8
...
@@ -438,6 +438,7 @@ void Qmgr::execCONNECT_REP(Signal* signal)
...
@@ -438,6 +438,7 @@ void Qmgr::execCONNECT_REP(Signal* signal)
void
void
Qmgr
::
execREAD_NODESCONF
(
Signal
*
signal
)
Qmgr
::
execREAD_NODESCONF
(
Signal
*
signal
)
{
{
jamEntry
();
check_readnodes_reply
(
signal
,
check_readnodes_reply
(
signal
,
refToNode
(
signal
->
getSendersBlockRef
()),
refToNode
(
signal
->
getSendersBlockRef
()),
GSN_READ_NODESCONF
);
GSN_READ_NODESCONF
);
...
@@ -446,6 +447,7 @@ Qmgr::execREAD_NODESCONF(Signal* signal)
...
@@ -446,6 +447,7 @@ Qmgr::execREAD_NODESCONF(Signal* signal)
void
void
Qmgr
::
execREAD_NODESREF
(
Signal
*
signal
)
Qmgr
::
execREAD_NODESREF
(
Signal
*
signal
)
{
{
jamEntry
();
check_readnodes_reply
(
signal
,
check_readnodes_reply
(
signal
,
refToNode
(
signal
->
getSendersBlockRef
()),
refToNode
(
signal
->
getSendersBlockRef
()),
GSN_READ_NODESREF
);
GSN_READ_NODESREF
);
...
@@ -907,9 +909,9 @@ retry:
...
@@ -907,9 +909,9 @@ retry:
char
buf
[
255
];
char
buf
[
255
];
BaseString
::
snprintf
(
buf
,
sizeof
(
buf
),
BaseString
::
snprintf
(
buf
,
sizeof
(
buf
),
"
Partitioned cluster!
check StartPartialTimeout, "
"check StartPartialTimeout, "
"
node %d thinks %d is president, "
"node %d thinks %d is president, "
"
I think president is: %d"
,
"I think president is: %d"
,
nodeId
,
president
,
cpresident
);
nodeId
,
president
,
cpresident
);
ndbout_c
(
buf
);
ndbout_c
(
buf
);
...
@@ -941,7 +943,7 @@ retry:
...
@@ -941,7 +943,7 @@ retry:
CRASH_INSERTION
(
932
);
CRASH_INSERTION
(
932
);
progError
(
__LINE__
,
progError
(
__LINE__
,
NDBD_EXIT_
ARBIT
_SHUTDOWN
,
NDBD_EXIT_
PARTITIONED
_SHUTDOWN
,
buf
);
buf
);
ndbrequire
(
false
);
ndbrequire
(
false
);
...
@@ -2798,7 +2800,7 @@ void Qmgr::failReportLab(Signal* signal, Uint16 aFailedNode,
...
@@ -2798,7 +2800,7 @@ void Qmgr::failReportLab(Signal* signal, Uint16 aFailedNode,
break
;
break
;
case
FailRep
:
:
ZPARTITIONED_CLUSTER
:
case
FailRep
:
:
ZPARTITIONED_CLUSTER
:
{
{
code
=
NDBD_EXIT_
ARBIT
_SHUTDOWN
;
code
=
NDBD_EXIT_
PARTITIONED
_SHUTDOWN
;
char
buf1
[
100
],
buf2
[
100
];
char
buf1
[
100
],
buf2
[
100
];
c_clusterNodes
.
getText
(
buf1
);
c_clusterNodes
.
getText
(
buf1
);
if
(
signal
->
getLength
()
==
FailRep
::
SignalLength
+
FailRep
::
ExtraLength
&&
if
(
signal
->
getLength
()
==
FailRep
::
SignalLength
+
FailRep
::
ExtraLength
&&
...
@@ -2809,16 +2811,14 @@ void Qmgr::failReportLab(Signal* signal, Uint16 aFailedNode,
...
@@ -2809,16 +2811,14 @@ void Qmgr::failReportLab(Signal* signal, Uint16 aFailedNode,
part
.
assign
(
NdbNodeBitmask
::
Size
,
rep
->
partition
);
part
.
assign
(
NdbNodeBitmask
::
Size
,
rep
->
partition
);
part
.
getText
(
buf2
);
part
.
getText
(
buf2
);
BaseString
::
snprintf
(
extra
,
sizeof
(
extra
),
BaseString
::
snprintf
(
extra
,
sizeof
(
extra
),
"Partitioned cluster!"
"Our cluster: %s other cluster: %s"
,
" Our cluster: %s other cluster: %s"
,
buf1
,
buf2
);
buf1
,
buf2
);
}
}
else
else
{
{
jam
();
jam
();
BaseString
::
snprintf
(
extra
,
sizeof
(
extra
),
BaseString
::
snprintf
(
extra
,
sizeof
(
extra
),
"Partitioned cluster!"
"Our cluster: %s"
,
buf1
);
" Our cluster: %s "
,
buf1
);
}
}
msg
=
extra
;
msg
=
extra
;
break
;
break
;
...
...
storage/ndb/src/kernel/error/ndbd_exit_codes.c
View file @
1d5969c8
...
@@ -54,6 +54,8 @@ static const ErrStruct errArray[] =
...
@@ -54,6 +54,8 @@ static const ErrStruct errArray[] =
{
NDBD_EXIT_ARBIT_SHUTDOWN
,
XAE
,
"Node lost connection to other nodes and "
{
NDBD_EXIT_ARBIT_SHUTDOWN
,
XAE
,
"Node lost connection to other nodes and "
"can not form a unpartitioned cluster, please investigate if there are "
"can not form a unpartitioned cluster, please investigate if there are "
"error(s) on other node(s)"
},
"error(s) on other node(s)"
},
{
NDBD_EXIT_PARTITIONED_SHUTDOWN
,
XAE
,
"Partitioned cluster detected. "
"Please check if cluster is already running"
},
{
NDBD_EXIT_POINTER_NOTINRANGE
,
XIE
,
"Pointer too large"
},
{
NDBD_EXIT_POINTER_NOTINRANGE
,
XIE
,
"Pointer too large"
},
{
NDBD_EXIT_SR_OTHERNODEFAILED
,
XRE
,
"Another node failed during system "
{
NDBD_EXIT_SR_OTHERNODEFAILED
,
XRE
,
"Another node failed during system "
"restart, please investigate error(s) on other node(s)"
},
"restart, please investigate error(s) on other node(s)"
},
...
...
storage/ndb/src/ndbapi/Ndb.cpp
View file @
1d5969c8
...
@@ -1025,14 +1025,19 @@ int Ndb::initAutoIncrement()
...
@@ -1025,14 +1025,19 @@ int Ndb::initAutoIncrement()
setDatabaseName
(
"sys"
);
setDatabaseName
(
"sys"
);
setDatabaseSchemaName
(
"def"
);
setDatabaseSchemaName
(
"def"
);
m_sys_tab_0
=
getDictionary
()
->
getTableGlobal
(
"SYSTAB_0"
);
m_sys_tab_0
=
theDictionary
->
getTableGlobal
(
"SYSTAB_0"
);
// Restore current name space
// Restore current name space
setDatabaseName
(
currentDb
.
c_str
());
setDatabaseName
(
currentDb
.
c_str
());
setDatabaseSchemaName
(
currentSchema
.
c_str
());
setDatabaseSchemaName
(
currentSchema
.
c_str
());
if
(
m_sys_tab_0
==
NULL
)
{
assert
(
theDictionary
->
m_error
.
code
!=
0
);
theError
.
code
=
theDictionary
->
m_error
.
code
;
return
-
1
;
}
return
(
m_sys_tab_0
==
NULL
)
;
return
0
;
}
}
int
int
...
@@ -1043,19 +1048,19 @@ Ndb::opTupleIdOnNdb(const NdbTableImpl* table,
...
@@ -1043,19 +1048,19 @@ Ndb::opTupleIdOnNdb(const NdbTableImpl* table,
Uint32
aTableId
=
table
->
m_id
;
Uint32
aTableId
=
table
->
m_id
;
DBUG_PRINT
(
"enter"
,
(
"table=%u value=%llu op=%u"
,
aTableId
,
opValue
,
op
));
DBUG_PRINT
(
"enter"
,
(
"table=%u value=%llu op=%u"
,
aTableId
,
opValue
,
op
));
NdbTransaction
*
tConnection
;
NdbTransaction
*
tConnection
=
NULL
;
NdbOperation
*
tOperation
=
0
;
// Compiler warning if not initialized
NdbOperation
*
tOperation
=
NULL
;
Uint64
tValue
;
Uint64
tValue
;
NdbRecAttr
*
tRecAttrResult
;
NdbRecAttr
*
tRecAttrResult
;
CHECK_STATUS_MACRO
_ZERO
;
CHECK_STATUS_MACRO
;
if
(
initAutoIncrement
())
if
(
initAutoIncrement
()
==
-
1
)
goto
error_
return
;
goto
error_
handler
;
tConnection
=
this
->
startTransaction
();
tConnection
=
this
->
startTransaction
();
if
(
tConnection
==
NULL
)
if
(
tConnection
==
NULL
)
goto
error_
return
;
goto
error_
handler
;
tOperation
=
tConnection
->
getNdbOperation
(
m_sys_tab_0
);
tOperation
=
tConnection
->
getNdbOperation
(
m_sys_tab_0
);
if
(
tOperation
==
NULL
)
if
(
tOperation
==
NULL
)
...
@@ -1065,7 +1070,7 @@ Ndb::opTupleIdOnNdb(const NdbTableImpl* table,
...
@@ -1065,7 +1070,7 @@ Ndb::opTupleIdOnNdb(const NdbTableImpl* table,
{
{
case
0
:
case
0
:
tOperation
->
interpretedUpdateTuple
();
tOperation
->
interpretedUpdateTuple
();
tOperation
->
equal
(
"SYSKEY_0"
,
aTableId
);
tOperation
->
equal
(
"SYSKEY_0"
,
aTableId
);
tOperation
->
incValue
(
"NEXTID"
,
opValue
);
tOperation
->
incValue
(
"NEXTID"
,
opValue
);
tRecAttrResult
=
tOperation
->
getValue
(
"NEXTID"
);
tRecAttrResult
=
tOperation
->
getValue
(
"NEXTID"
);
...
@@ -1130,14 +1135,21 @@ Ndb::opTupleIdOnNdb(const NdbTableImpl* table,
...
@@ -1130,14 +1135,21 @@ Ndb::opTupleIdOnNdb(const NdbTableImpl* table,
DBUG_RETURN
(
0
);
DBUG_RETURN
(
0
);
error_handler:
error_handler:
theError
.
code
=
tConnection
->
theError
.
code
;
this
->
closeTransaction
(
tConnection
);
error_return:
DBUG_PRINT
(
"error"
,
(
"ndb=%d con=%d op=%d"
,
DBUG_PRINT
(
"error"
,
(
"ndb=%d con=%d op=%d"
,
theError
.
code
,
theError
.
code
,
tConnection
?
tConnection
->
theError
.
code
:
-
1
,
tConnection
!=
NULL
?
tConnection
->
theError
.
code
:
-
1
,
tOperation
?
tOperation
->
theError
.
code
:
-
1
));
tOperation
!=
NULL
?
tOperation
->
theError
.
code
:
-
1
));
if
(
theError
.
code
==
0
&&
tConnection
!=
NULL
)
theError
.
code
=
tConnection
->
theError
.
code
;
if
(
theError
.
code
==
0
&&
tOperation
!=
NULL
)
theError
.
code
=
tOperation
->
theError
.
code
;
DBUG_ASSERT
(
theError
.
code
!=
0
);
if
(
tConnection
!=
NULL
)
this
->
closeTransaction
(
tConnection
);
DBUG_RETURN
(
-
1
);
DBUG_RETURN
(
-
1
);
}
}
...
...
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