The C# Database Class embedded classes and structures
For an overview see page C# Classes
Embedded classes and structures:
/// Actual loaded runtime information
public struct RuntimeInfo
{
public byte mco_version_major;
public byte mco_version_minor;
public short mco_build_number;
public byte mco_size_t;
public byte mco_offs_t;
public bool uint4_supported;
public bool float_supported;
public byte mco_checklevel;
public bool evaluation_version;
public bool large_database_supported;
public bool collation_supported;
public bool heap31_supported;
public bool bin_serialization_supported;
public bool fixedrec_supported;
public bool statistics_supported;
public bool events_supported;
public bool save_load_supported;
public bool object_initialization_supported;
public bool direct_index_field_access_supported;
public bool multiprocess_access_supported;
public bool object_repack_supported;
public bool transaction_logging_supported;
public bool cluster_supported;
public bool high_availability_supported;
public bool ha_multicast_supported;
public bool ha_incremental_replication_supported;
public bool binary_schema_evolution_supported;
public bool unicode_supported;
public bool wchar_supported;
public bool recovery_supported;
public bool disk_supported;
public bool direct_pointers_supported;
public bool persistent_object_supported;
public bool xml_import_export_supported;
public bool user_defined_index_supported;
public bool multifile_supported;
public bool multifile_descriptor_supported;
public bool two_phase_commit_supported;
public bool rtree_supported;
public bool tree_based_hash;
public bool tmgr_mvcc_async_cleanup;
public bool concurent_disk_btree;
public bool open_cursor_goto_first;
public bool smart_index_insert;
public bool btree_leaf_lock;
public bool null_statistics;
public bool implicit_runtime_start;
public bool bufferized_sync_iostream;
public bool async_replication;
public bool fast_transaction_list;
public bool extendable_dirty_page_bitmap;
public byte mursiw_policy;
public byte sync_capabilities;
public byte char_comparison_policy;
public long stream_buffer_size;
public short max_db_instances;
public byte max_db_name_length;
public byte max_extends;
public long tl_page_buffer_size;
public short ha_max_replicas;
public long ha_transmit_buffer_size;
public long ha_syncronization_buffer_size;
public long default_redo_log_limit;
public byte mvcc_critical_sections;
public byte mvcc_per_index_locks;
public short con_disk_page_cache_size;
public byte small_con_cache_threshold;
public long extendable_dirty_page_bitmap_limit;
public byte max_vista_sessions;
public bool concurrent_write_transactions;
public byte encryption_support;
public bool backup_support;
public String mco_revision;
public byte mco_process_t;
public long mco_database_default_map_address;
}
public struct BackupInfo {
public int ProtocolVersion;
public BackupType Type;
public int Flags;
public int BackupNo;
public long Timestamp;
public long Size;
public long Offset;
public int Crc;
public long TransNo;
public int MemPageSize;
public int DiskPageSize;
public long NPagesTotal;
public String DbName;
public String Label;
}
public struct HAChannelInfo
{
public String ProtocolType;
public long BytesSent;
public long BytesRcvd;
public bool SupportUnreliable;
public bool AsyncMode;
}
public struct ClusterNodeParams
{
public String Addr;
public int QRank;
}
public struct ClusterWindow
{
public int Length;
public int BSize;
public int Timeout;
}
public struct ClusterNodeInfo
{
public String Addr;
public int QRank;
public int NodeId;
}
public class ClusterTCPParams : Database.ClusterNWParams
{
public int SocketSendBuf;
public int SocketRecvBuf;
public int ConnectTimeout;
public int ConnectInterval;
public int SocketDomain;
public int KeepAliveTime;
public int KeepAliveProbes;
public int CompressionLevel;
public Database.SSLParameters SSLParameters;
public ClusterTCPParams();
}
public class ClusterMPIParams : Database.ClusterNWParams
{
public int Flags;
public ClusterMPIParams()
}
public class ClusterParams
{
public ClusterNodeParams[] Nodes;
public int NodeId;
public int ConnPoolFactor;
public int SyncMsgObjects;
public int SyncMsgSize;
public int ClusterSendBuf;
public int ClusterRecvBuf;
public int Mode;
public ClusterWindow Window;
public ClusterQuorumDelegate QuorumDelegate;
public ClusterNotifyDelegate NotifyDelegate;
public ClusterNWParams NWParams;
public ClusterParams(ClusterNodeParams[] nodes, int nodeId);
}
public struct ClusterInfo
{
public int RTransCommit;
public int RTransRollback;
public long BytesSent;
public long BytesRecv;
public int ActiveNodeNum;
public int NodeId;
}
public class Parameters {...}
/// An abstract database device (a volatile or non-volatile memory resource).
public abstract class Device
{
/// The assignment of this device.
public enum Kind
{
/// This device is used for database data (disk or memory).
Data,
/// This device is used for the disk cache.
DiskCache,
/// This device is used for the transaction log.
TransactionLog,
/// This device is used as async buffer for HA.
AsyncBuffer,
/// This device is used as pipe buffer for TL.
PipeBuffer
}
}
/// An in-process private memory segment (allocated using malloc).
public class PrivateMemoryDevice : Database.Device
{
/// The private in-process memory device constructor.
/// kind - the device assignment
/// size - the region size
public PrivateMemoryDevice(Device.Kind kind, long size);
public long Size;
public IntPtr AllocatedMemory;
}
/// A shared memory region (allocated using mmap or a similar system call).
public class SharedMemoryDevice : Database.Device
{
/// The shared memory device constructor.
///
/// kind - the device assignment.
/// name - the segment name.
/// hint - the proposed region.
/// size - the region size.
public SharedMemoryDevice(Device.Kind kind, String name, IntPtr hint, long size);
public String Name;
public IntPtr Hint;
public long Size;
}
/// An Operating System file device.
public class FileDevice : Database.Device
{
/// The file device constructor.
///
/// kind - the device assignment.
/// path - the file path.
public FileDevice(Device.Kind kind, String path);
public String Path;
}
/// A multifile segment. A multifile consists of several physical files. The
/// size of each segment except the last is fixed, the last segment can be
/// extended indefinitely.
public class MultiFileDevice : Database.FileDevice
{
/// The multifile device constructor.
///
/// kind - the device assignment.
/// path - the file path.
/// size - the multifile segment size (ignored for last segment).
public MultiFileDevice(Device.Kind kind, String path, long size);
public long Size;
}
/// A RAID segment.
public class RaidDevice : Database.FileDevice
{
/// The RAID device constructor.
///
/// kind - the device assignment.
/// path - the file path.
/// raidLevel - 0 - (RAID-0: striping) or 1 (RAID-1: mirroring).
public RaidDevice(Device.Kind kind, String path, int raidLevel);
public int RaidLevel;
}