summaryrefslogtreecommitdiff
path: root/sql/ha_ndbcluster.cc
diff options
context:
space:
mode:
authorgni/root@ts3-168.ts.cn.tlan <>2006-12-01 11:35:05 +0800
committergni/root@ts3-168.ts.cn.tlan <>2006-12-01 11:35:05 +0800
commit24b1feea030183466f6194435892a4becebca7c1 (patch)
tree2d210d7ba7c5b7b685586322a29bac3a241fb78e /sql/ha_ndbcluster.cc
parent4b7e0b5fd915efe1d1bbc449dd8585f9d97b0a9d (diff)
parent95478c16da96ff4af0c8419da68719f0e4a7150f (diff)
downloadmariadb-git-24b1feea030183466f6194435892a4becebca7c1.tar.gz
Merge ts3-168.ts.cn.tlan:/home/ngb/mysql/mysql-5.1/mysql-5.1-new-ndb-bj
into ts3-168.ts.cn.tlan:/home/ngb/mysql/mysql-5.1/mysql-5.1-new-ndb
Diffstat (limited to 'sql/ha_ndbcluster.cc')
-rw-r--r--sql/ha_ndbcluster.cc25
1 files changed, 25 insertions, 0 deletions
diff --git a/sql/ha_ndbcluster.cc b/sql/ha_ndbcluster.cc
index 0fc884f8e68..78032b9ac12 100644
--- a/sql/ha_ndbcluster.cc
+++ b/sql/ha_ndbcluster.cc
@@ -4825,10 +4825,18 @@ int ha_ndbcluster::create(const char *name,
}
if (info->store_on_disk)
+ {
if (info->tablespace)
tab.setTablespace(info->tablespace);
else
tab.setTablespace("DEFAULT-TS");
+ }
+ else if (info->tablespace)
+ {
+ tab.setTablespace(info->tablespace);
+ info->store_on_disk = true; //if use tablespace, that also means store on disk
+ }
+
// No primary key, create shadow key as 64 bit, auto increment
if (form->s->primary_key == MAX_KEY)
{
@@ -6537,6 +6545,23 @@ int ndbcluster_find_files(handlerton *hton, THD *thd,
hash_free(&ok_tables);
hash_free(&ndb_tables);
+
+ // Delete schema file from files
+ if (!strcmp(db, NDB_REP_DB))
+ {
+ uint count = 0;
+ while (count++ < files->elements)
+ {
+ file_name = (char *)files->pop();
+ if (!strcmp(file_name, NDB_SCHEMA_TABLE))
+ {
+ DBUG_PRINT("info", ("skip %s.%s table, it should be hidden to user",
+ NDB_REP_DB, NDB_SCHEMA_TABLE));
+ continue;
+ }
+ files->push_back(file_name);
+ }
+ }
} // extra bracket to avoid gcc 2.95.3 warning
DBUG_RETURN(0);
}