mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
ndb - bug#16341
create tablespace/logfile group should "back out changes" mysql-test/r/ndb_dd_ddl.result: add testcase for bug#16341 mysql-test/t/ndb_dd_ddl.test: add testcase for bug#16341 sql/ha_ndbcluster.cc: If create data/undo file fails, check if filegroup is same version, and if it is drop it (wo/ checking error) storage/ndb/include/kernel/signaldata/CreateFilegroup.hpp: add version to createfileconf storage/ndb/include/ndbapi/NdbDictionary.hpp: Add NdbDictionary::ObjectId, that can be used to get [ id, version ] during create (only for DD object so far) storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp: add version to createfileconf storage/ndb/src/ndbapi/NdbDictionary.cpp: Add NdbDictionary::ObjectId, that can be used to get [ id, version ] during create (only for DD object so far) storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp: Add NdbDictionary::ObjectId, that can be used to get [ id, version ] during create (only for DD object so far) storage/ndb/src/ndbapi/NdbDictionaryImpl.hpp: Add NdbDictionary::ObjectId, that can be used to get [ id, version ] during create (only for DD object so far)
This commit is contained in:
@ -163,6 +163,31 @@ public:
|
||||
};
|
||||
};
|
||||
|
||||
class Dictionary; // Forward declaration
|
||||
|
||||
class ObjectId : public Object
|
||||
{
|
||||
public:
|
||||
ObjectId();
|
||||
virtual ~ObjectId();
|
||||
|
||||
/**
|
||||
* Get status of object
|
||||
*/
|
||||
virtual Status getObjectStatus() const;
|
||||
|
||||
/**
|
||||
* Get version of object
|
||||
*/
|
||||
virtual int getObjectVersion() const;
|
||||
|
||||
virtual int getObjectId() const;
|
||||
|
||||
private:
|
||||
friend class Dictionary;
|
||||
class NdbDictObjectImpl & m_impl;
|
||||
};
|
||||
|
||||
class Table; // forward declaration
|
||||
class Tablespace; // forward declaration
|
||||
// class NdbEventOperation; // forward declaration
|
||||
@ -1781,20 +1806,20 @@ public:
|
||||
* @{
|
||||
*/
|
||||
|
||||
int createLogfileGroup(const LogfileGroup &);
|
||||
int createLogfileGroup(const LogfileGroup &, ObjectId* = 0);
|
||||
int dropLogfileGroup(const LogfileGroup&);
|
||||
LogfileGroup getLogfileGroup(const char * name);
|
||||
|
||||
int createTablespace(const Tablespace &);
|
||||
int createTablespace(const Tablespace &, ObjectId* = 0);
|
||||
int dropTablespace(const Tablespace&);
|
||||
Tablespace getTablespace(const char * name);
|
||||
Tablespace getTablespace(Uint32 tablespaceId);
|
||||
|
||||
int createDatafile(const Datafile &, bool overwrite_existing = false);
|
||||
int createDatafile(const Datafile &, bool overwrite_existing = false, ObjectId* = 0);
|
||||
int dropDatafile(const Datafile&);
|
||||
Datafile getDatafile(Uint32 node, const char * path);
|
||||
|
||||
int createUndofile(const Undofile &, bool overwrite_existing = false);
|
||||
int createUndofile(const Undofile &, bool overwrite_existing = false, ObjectId * = 0);
|
||||
int dropUndofile(const Undofile&);
|
||||
Undofile getUndofile(Uint32 node, const char * path);
|
||||
|
||||
|
Reference in New Issue
Block a user