NdbDictionary::HashMap Class Reference

Represents a HashMap in an NDB Cluster. More...

#include <NdbDictionary.hpp>

Inheritance diagram for NdbDictionary::HashMap:

NdbDictionary::Object

List of all members.

Public Types

enum  Status {
  New, Changed, Retrieved, Invalid,
  Altered
}
enum  Type {
  TypeUndefined = 0, SystemTable = 1, UserTable = 2, UniqueHashIndex = 3,
  OrderedIndex = 6, HashIndexTrigger = 7, IndexTrigger = 8, SubscriptionTrigger = 9,
  ReadOnlyConstraint = 10, TableEvent = 11, Tablespace = 20, LogfileGroup = 21,
  Datafile = 22, Undofile = 23, ReorgTrigger = 19, HashMap = 24
}
enum  State {
  StateUndefined = 0, StateOffline = 1, StateBuilding = 2, StateDropping = 3,
  StateOnline = 4, StateBackup = 5, StateBroken = 9
}
enum  Store { StoreUndefined = 0, StoreNotLogged = 1, StorePermanent = 2 }
enum  FragmentType {
  FragUndefined = 0, FragSingle = 1, FragAllSmall = 2, FragAllMedium = 3,
  FragAllLarge = 4, DistrKeyHash = 5, DistrKeyLin = 6, UserDefined = 7,
  HashMapPartition = 9
}

Public Member Functions

 HashMap ()
 HashMap (const HashMap &)
virtual ~HashMap ()
void setName (const char *)
const char * getName () const
void setMap (const Uint32 *values, Uint32 len)
Uint32 getMapLen () const
int getMapValues (Uint32 *dst, Uint32 len) const
bool equal (const HashMap &) const
virtual Object::Status getObjectStatus () const
virtual int getObjectVersion () const
virtual int getObjectId () const

Private Member Functions

 HashMap (NdbHashMapImpl &)

Private Attributes

class NdbHashMapImpl & m_impl

Friends

class NdbHashMapImpl


Detailed Description

Represents a HashMap in an NDB Cluster.

Member Enumeration Documentation

Type of fragmentation.

This parameter specifies how data in the table or index will be distributed among the db nodes in the cluster.
The bigger the table the more number of fragments should be used. Note that all replicas count as same "fragment".
For a table, default is FragAllMedium. For a unique hash index, default is taken from underlying table and cannot currently be changed.

Enumerator:
FragUndefined  Fragmentation type undefined or default.
FragSingle  Only one fragment.
FragAllSmall  One fragment per node, default.
FragAllMedium  two fragments per node
FragAllLarge  Four fragments per node.
DistrKeyHash 
DistrKeyLin 
UserDefined 
HashMapPartition 

enum NdbDictionary::Object::State [inherited]

Object state

Enumerator:
StateUndefined  Undefined.
StateOffline  Offline, not usable.
StateBuilding  Building, not yet usable.
StateDropping  Offlining or dropping, not usable.
StateOnline  Online, usable.
StateBackup  Online, being backuped, usable.
StateBroken  Broken, should be dropped and re-created.

Status of object

Enumerator:
New  The object only exist in memory and has not been created in the NDB Kernel
Changed  The object has been modified in memory and has to be commited in NDB Kernel for changes to take effect
Retrieved  The object exist and has been read into main memory from NDB Kernel
Invalid  The object has been invalidated and should not be used
Altered  Table has been altered in NDB kernel but is still valid for usage

enum NdbDictionary::Object::Store [inherited]

Object store

Enumerator:
StoreUndefined  Undefined.
StoreNotLogged  Object or data deleted on system restart.
StorePermanent  Permanent. logged to disk.

enum NdbDictionary::Object::Type [inherited]

Object type

Enumerator:
TypeUndefined  Undefined.
SystemTable  System table.
UserTable  User table (may be temporary).
UniqueHashIndex  Unique un-ordered hash index.
OrderedIndex  Non-unique ordered index.
HashIndexTrigger  Index maintenance, internal.
IndexTrigger  Index maintenance, internal.
SubscriptionTrigger  Backup or replication, internal.
ReadOnlyConstraint  Trigger, internal.
TableEvent  Table event.
Tablespace  Tablespace.
LogfileGroup  Logfile group.
Datafile  Datafile.
Undofile  Undofile.
ReorgTrigger 
HashMap 

Reimplemented in NdbDictionary::Index.


Constructor & Destructor Documentation

NdbDictionary::HashMap::HashMap (  ) 

NdbDictionary::HashMap::HashMap ( const HashMap  ) 

virtual NdbDictionary::HashMap::~HashMap (  )  [virtual]

NdbDictionary::HashMap::HashMap ( NdbHashMapImpl &   )  [private]


Member Function Documentation

bool NdbDictionary::HashMap::equal ( const HashMap  )  const

equal compares *values* only

Uint32 NdbDictionary::HashMap::getMapLen (  )  const

int NdbDictionary::HashMap::getMapValues ( Uint32 *  dst,
Uint32  len 
) const

const char* NdbDictionary::HashMap::getName (  )  const

virtual int NdbDictionary::HashMap::getObjectId (  )  const [virtual]

Get object id

Implements NdbDictionary::Object.

virtual Object::Status NdbDictionary::HashMap::getObjectStatus (  )  const [virtual]

Get object status

Implements NdbDictionary::Object.

virtual int NdbDictionary::HashMap::getObjectVersion (  )  const [virtual]

Get object version

Implements NdbDictionary::Object.

void NdbDictionary::HashMap::setMap ( const Uint32 *  values,
Uint32  len 
)

void NdbDictionary::HashMap::setName ( const char *   ) 


Friends And Related Function Documentation

friend class NdbHashMapImpl [friend]


Member Data Documentation

class NdbHashMapImpl& NdbDictionary::HashMap::m_impl [private]


The documentation for this class was generated from the following file:

MySQL Cluster Database Blog

Based on MySQL Cluster 7.0.6.

This page is for information only and is not maintained by MySQL or Sun Microsystems - use at your own risk. For an upto date view of the API refer to the header files included with your MySQL Cluster distribution or check the MySQL Cluster API Developer Guide.