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
de2c7c72
Commit
de2c7c72
authored
Feb 01, 2006
by
tomas@poseidon.ndb.mysql.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
MySQL Bugs: #16466: DD: SHOW CREATE TABLE does not show TABLESPACE table_space1 STORAGE DISK
parent
f90661e4
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
67 additions
and
26 deletions
+67
-26
mysql-test/r/ndb_dd_basic.result
mysql-test/r/ndb_dd_basic.result
+8
-0
mysql-test/t/ndb_dd_basic.test
mysql-test/t/ndb_dd_basic.test
+2
-0
sql/ha_ndbcluster.cc
sql/ha_ndbcluster.cc
+28
-15
sql/ha_ndbcluster.h
sql/ha_ndbcluster.h
+1
-1
sql/handler.h
sql/handler.h
+2
-2
sql/sql_show.cc
sql/sql_show.cc
+3
-1
storage/ndb/include/ndbapi/NdbDictionary.hpp
storage/ndb/include/ndbapi/NdbDictionary.hpp
+2
-1
storage/ndb/src/ndbapi/NdbDictionary.cpp
storage/ndb/src/ndbapi/NdbDictionary.cpp
+18
-3
storage/ndb/tools/restore/consumer_restore.cpp
storage/ndb/tools/restore/consumer_restore.cpp
+3
-3
No files found.
mysql-test/r/ndb_dd_basic.result
View file @
de2c7c72
...
...
@@ -21,6 +21,14 @@ CREATE TABLE t1
(pk1 INT NOT NULL PRIMARY KEY, b INT NOT NULL, c INT NOT NULL)
TABLESPACE ts1 STORAGE DISK
ENGINE=NDB;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`pk1` int(11) NOT NULL,
`b` int(11) NOT NULL,
`c` int(11) NOT NULL,
PRIMARY KEY (`pk1`)
) TABLESPACE ts1 STORAGE DISK ENGINE=ndbcluster DEFAULT CHARSET=latin1 PARTITION BY KEY ()
INSERT INTO t1 VALUES (0, 0, 0);
SELECT * FROM t1;
pk1 b c
...
...
mysql-test/t/ndb_dd_basic.test
View file @
de2c7c72
...
...
@@ -54,6 +54,8 @@ CREATE TABLE t1
TABLESPACE
ts1
STORAGE
DISK
ENGINE
=
NDB
;
SHOW
CREATE
TABLE
t1
;
INSERT
INTO
t1
VALUES
(
0
,
0
,
0
);
SELECT
*
FROM
t1
;
...
...
sql/ha_ndbcluster.cc
View file @
de2c7c72
...
...
@@ -8905,28 +8905,41 @@ ha_ndbcluster::generate_scan_filter(Ndb_cond_stack *ndb_cond_stack,
/*
get table space info for SHOW CREATE TABLE
*/
char
*
ha_ndbcluster
::
get_tablespace_
create_info
()
char
*
ha_ndbcluster
::
get_tablespace_
name
()
{
const
char
tablespace_key
[]
=
" TABLESPACE "
;
const
char
storage_key
[]
=
" STORAGE DISK"
;
char
*
str
=
0
;
Ndb
*
ndb
=
get_ndb
();
NDBDICT
*
ndbdict
=
ndb
->
getDictionary
();
NdbError
ndberr
;
Uint32
id
;
ndb
->
setDatabaseName
(
m_dbname
);
const
NDBTAB
*
ndbtab
=
ndbdict
->
getTable
(
m_tabname
);
if
(
ndbtab
==
0
)
return
0
;
// TODO retrieve table space name if there is one
{
ndberr
=
ndbdict
->
getNdbError
();
goto
err
;
}
if
(
!
ndbtab
->
getTablespace
(
&
id
))
{
ndberr
=
ndbdict
->
getNdbError
();
goto
err
;
}
{
NdbDictionary
::
Tablespace
ts
=
ndbdict
->
getTablespace
(
id
);
ndberr
=
ndbdict
->
getNdbError
();
if
(
ndberr
.
classification
!=
ndberror_cl_none
)
goto
err
;
return
(
my_strdup
(
ts
.
getName
(),
MYF
(
0
)));
}
err:
if
(
ndberr
.
status
==
NdbError
::
TemporaryError
)
push_warning_printf
(
current_thd
,
MYSQL_ERROR
::
WARN_LEVEL_ERROR
,
ER_GET_TEMPORARY_ERRMSG
,
ER
(
ER_GET_TEMPORARY_ERRMSG
),
ndberr
.
code
,
ndberr
.
message
,
"NDB"
);
else
push_warning_printf
(
current_thd
,
MYSQL_ERROR
::
WARN_LEVEL_ERROR
,
ER_GET_ERRMSG
,
ER
(
ER_GET_ERRMSG
),
ndberr
.
code
,
ndberr
.
message
,
"NDB"
);
return
0
;
const
char
*
tablespace_name
=
"<name>"
;
uint
len
=
sizeof
(
tablespace_key
)
+
strlen
(
tablespace_name
)
+
sizeof
(
storage_key
);
str
=
my_malloc
(
len
,
MYF
(
0
));
strxnmov
(
str
,
len
,
tablespace_key
,
tablespace_name
,
storage_key
,
NullS
);
return
(
str
);
}
/*
...
...
sql/ha_ndbcluster.h
View file @
de2c7c72
...
...
@@ -701,7 +701,7 @@ static void set_tabname(const char *pathname, char *tabname);
uint
set_up_partition_info
(
partition_info
*
part_info
,
TABLE
*
table
,
void
*
tab
);
char
*
get_tablespace_
create_info
();
char
*
get_tablespace_
name
();
int
set_range_data
(
void
*
tab
,
partition_info
*
part_info
);
int
set_list_data
(
void
*
tab
,
partition_info
*
part_info
);
int
complemented_pk_read
(
const
byte
*
old_data
,
byte
*
new_data
,
...
...
sql/handler.h
View file @
de2c7c72
...
...
@@ -1713,8 +1713,8 @@ class handler :public Sql_alloc
{
return
FALSE
;
}
virtual
char
*
get_foreign_key_create_info
()
{
return
(
NULL
);}
/* gets foreign key create string from InnoDB */
virtual
char
*
get_tablespace_
create_info
()
{
return
(
NULL
);}
/* gets tablespace
create string
from handler */
virtual
char
*
get_tablespace_
name
()
{
return
(
NULL
);}
/* gets tablespace
name
from handler */
/* used in ALTER TABLE; 1 if changing storage engine is allowed */
virtual
bool
can_switch_engines
()
{
return
1
;
}
/* used in REPLACE; is > 0 if table is referred by a FOREIGN KEY */
...
...
sql/sql_show.cc
View file @
de2c7c72
...
...
@@ -1140,9 +1140,11 @@ store_create_info(THD *thd, TABLE_LIST *table_list, String *packet,
to the CREATE TABLE statement
*/
if
((
for_str
=
file
->
get_tablespace_
create_info
()))
if
((
for_str
=
file
->
get_tablespace_
name
()))
{
packet
->
append
(
" TABLESPACE "
);
packet
->
append
(
for_str
,
strlen
(
for_str
));
packet
->
append
(
" STORAGE DISK"
);
my_free
(
for_str
,
MYF
(
0
));
}
...
...
storage/ndb/include/ndbapi/NdbDictionary.hpp
View file @
de2c7c72
...
...
@@ -783,7 +783,7 @@ public:
void
setTablespace
(
const
char
*
name
);
void
setTablespace
(
const
class
Tablespace
&
);
const
char
*
getTablespace
()
const
;
Uint32
getTablespaceId
(
)
const
;
bool
getTablespace
(
Uint32
*
id
=
0
,
Uint32
*
version
=
0
)
const
;
/**
* Get table object type
...
...
@@ -1736,6 +1736,7 @@ public:
int
createTablespace
(
const
Tablespace
&
);
int
dropTablespace
(
const
Tablespace
&
);
Tablespace
getTablespace
(
const
char
*
name
);
Tablespace
getTablespace
(
Uint32
tablespaceId
);
int
createDatafile
(
const
Datafile
&
,
bool
overwrite_existing
=
false
);
int
dropDatafile
(
const
Datafile
&
);
...
...
storage/ndb/src/ndbapi/NdbDictionary.cpp
View file @
de2c7c72
...
...
@@ -600,10 +600,16 @@ NdbDictionary::Table::createTableInDb(Ndb* pNdb, bool equalOk) const {
return
pNdb
->
getDictionary
()
->
createTable
(
*
this
);
}
Uint32
NdbDictionary
::
Table
::
getTablespace
Id
(
)
const
bool
NdbDictionary
::
Table
::
getTablespace
(
Uint32
*
id
,
Uint32
*
version
)
const
{
return
m_impl
.
m_tablespace_id
;
if
(
m_impl
.
m_tablespace_id
==
RNIL
)
return
false
;
if
(
id
)
*
id
=
m_impl
.
m_tablespace_id
;
if
(
version
)
*
version
=
m_impl
.
m_version
;
return
true
;
}
void
...
...
@@ -1687,6 +1693,15 @@ NdbDictionary::Dictionary::getTablespace(const char * name){
return
tmp
;
}
NdbDictionary
::
Tablespace
NdbDictionary
::
Dictionary
::
getTablespace
(
Uint32
tablespaceId
){
NdbDictionary
::
Tablespace
tmp
;
m_impl
.
m_receiver
.
get_filegroup
(
NdbTablespaceImpl
::
getImpl
(
tmp
),
NdbDictionary
::
Object
::
Tablespace
,
tablespaceId
);
return
tmp
;
}
int
NdbDictionary
::
Dictionary
::
createDatafile
(
const
Datafile
&
df
,
bool
force
){
return
m_impl
.
createDatafile
(
NdbDatafileImpl
::
getImpl
(
df
),
force
);
...
...
storage/ndb/tools/restore/consumer_restore.cpp
View file @
de2c7c72
...
...
@@ -658,11 +658,11 @@ BackupRestore::table(const TableS & table){
NdbDictionary
::
Table
copy
(
*
table
.
m_dictTable
);
copy
.
setName
(
split
[
2
].
c_str
());
if
(
copy
.
getTablespaceId
()
!=
RNIL
)
Uint32
id
;
if
(
copy
.
getTablespace
(
&
id
))
{
Uint32
id
=
copy
.
getTablespaceId
();
debug
<<
"Connecting "
<<
name
<<
" to tablespace oldid: "
<<
id
<<
flush
;
NdbDictionary
::
Tablespace
*
ts
=
m_tablespaces
[
copy
.
getTablespaceId
()
];
NdbDictionary
::
Tablespace
*
ts
=
m_tablespaces
[
id
];
debug
<<
" newid: "
<<
ts
->
getObjectId
()
<<
endl
;
copy
.
setTablespace
(
*
ts
);
}
...
...
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