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
679b293a
Commit
679b293a
authored
Jan 10, 2006
by
msvensson@neptunus.(none)
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Bug #13228 open table cache not flushed when table schema changed
- Close open unused handlers when a schema error occurs.
parent
1938052b
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
132 additions
and
0 deletions
+132
-0
mysql-test/r/ndb_alter_table2.result
mysql-test/r/ndb_alter_table2.result
+42
-0
mysql-test/t/ndb_alter_table2.test
mysql-test/t/ndb_alter_table2.test
+83
-0
sql/ha_ndbcluster.cc
sql/ha_ndbcluster.cc
+7
-0
No files found.
mysql-test/r/ndb_alter_table2.result
0 → 100644
View file @
679b293a
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 (
a INT NOT NULL PRIMARY KEY,
b INT NOT NULL
) ENGINE=ndbcluster;
BEGIN;
INSERT INTO t1 VALUES (9410,9412);
BEGIN;
INSERT INTO t1 VALUES (9411,9412);
BEGIN;
INSERT INTO t1 VALUES (9412,9412);
BEGIN;
INSERT INTO t1 VALUES (9413,9412);
BEGIN;
INSERT INTO t1 VALUES (9414,9412);
BEGIN;
INSERT INTO t1 VALUES (9415,9412);
ROLLBACK;
ROLLBACK;
ROLLBACK;
ROLLBACK;
ROLLBACK;
ROLLBACK;
drop table t1;
CREATE TABLE t1 (
a INT NOT NULL PRIMARY KEY,
b INT NOT NULL,
c INT NOT NULL
) ENGINE=ndbcluster;
select * from t1;
ERROR HY000: Got error 241 'Invalid schema object version' from ndbcluster
select * from t1;
a b c
select * from t1;
a b c
select * from t1;
a b c
select * from t1;
a b c
select * from t1;
a b c
drop table t1;
mysql-test/t/ndb_alter_table2.test
0 → 100644
View file @
679b293a
--
source
include
/
have_ndb
.
inc
--
source
include
/
have_multi_ndb
.
inc
--
source
include
/
not_embedded
.
inc
--
disable_warnings
DROP
TABLE
IF
EXISTS
t1
;
--
enable_warnings
connect
(
con1
,
localhost
,
root
,,
test
);
connect
(
con2
,
localhost
,
root
,,
test
);
connect
(
con3
,
localhost
,
root
,,
test
);
connect
(
con4
,
localhost
,
root
,,
test
);
connect
(
con5
,
localhost
,
root
,,
test
);
connect
(
con6
,
localhost
,
root
,,
test
);
CREATE
TABLE
t1
(
a
INT
NOT
NULL
PRIMARY
KEY
,
b
INT
NOT
NULL
)
ENGINE
=
ndbcluster
;
connection
con1
;
BEGIN
;
INSERT
INTO
t1
VALUES
(
9410
,
9412
);
connection
con2
;
BEGIN
;
--
send
INSERT
INTO
t1
VALUES
(
9411
,
9412
);
connection
con3
;
BEGIN
;
--
send
INSERT
INTO
t1
VALUES
(
9412
,
9412
);
connection
con4
;
BEGIN
;
--
send
INSERT
INTO
t1
VALUES
(
9413
,
9412
);
connection
con5
;
BEGIN
;
--
send
INSERT
INTO
t1
VALUES
(
9414
,
9412
);
connection
con6
;
BEGIN
;
--
send
INSERT
INTO
t1
VALUES
(
9415
,
9412
);
connection
con1
;
sleep
1
;
ROLLBACK
;
connection
con2
;
reap
;
ROLLBACK
;
connection
con3
;
reap
;
ROLLBACK
;
connection
con4
;
reap
;
ROLLBACK
;
connection
con5
;
reap
;
ROLLBACK
;
connection
con6
;
reap
;
ROLLBACK
;
connection
server2
;
drop
table
t1
;
CREATE
TABLE
t1
(
a
INT
NOT
NULL
PRIMARY
KEY
,
b
INT
NOT
NULL
,
c
INT
NOT
NULL
)
ENGINE
=
ndbcluster
;
connection
server1
;
--
error
1296
select
*
from
t1
;
select
*
from
t1
;
select
*
from
t1
;
select
*
from
t1
;
select
*
from
t1
;
select
*
from
t1
;
drop
table
t1
;
sql/ha_ndbcluster.cc
View file @
679b293a
...
@@ -510,6 +510,13 @@ int ha_ndbcluster::ndb_err(NdbTransaction *trans)
...
@@ -510,6 +510,13 @@ int ha_ndbcluster::ndb_err(NdbTransaction *trans)
case
NdbError
:
:
SchemaError
:
case
NdbError
:
:
SchemaError
:
invalidate_dictionary_cache
(
TRUE
);
invalidate_dictionary_cache
(
TRUE
);
/* Close other open handlers not used by any thread */
TABLE_LIST
table_list
;
bzero
((
char
*
)
&
table_list
,
sizeof
(
table_list
));
table_list
.
db
=
m_dbname
;
table_list
.
alias
=
table_list
.
table_name
=
m_tabname
;
close_cached_tables
(
current_thd
,
0
,
&
table_list
);
if
(
err
.
code
==
284
)
if
(
err
.
code
==
284
)
{
{
/*
/*
...
...
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