RuntimeInfo
RuntimeInfo 提供对 SmartEDB 数据库运行时设置的访问。
类定义
public static class 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 boolean uint4_supported;
public boolean float_supported;
public byte mco_checklevel;
public boolean evaluation_version;
public boolean large_database_supported;
public boolean collation_supported;
public boolean heap31_supported;
public boolean bin_serialization_supported;
public boolean fixedrec_supported;
public boolean statistics_supported;
public boolean events_supported;
public boolean save_load_supported;
public boolean object_initialization_supported;
public boolean direct_index_field_access_supported;
public boolean multiprocess_access_supported;
public boolean object_repack_supported;
public boolean transaction_logging_supported;
public boolean cluster_supported;
public boolean high_availability_supported;
public boolean ha_multicast_supported;
public boolean ha_incremental_replication_supported;
public boolean binary_schema_evalution_supported;
public boolean unicode_supported;
public boolean wchar_supported;
public boolean recovery_supported;
public boolean disk_supported;
public boolean direct_pointers_supported;
public boolean persistent_object_supported;
public boolean xml_import_export_supported;
public boolean user_defined_index_supported;
public boolean multifile_supported;
public boolean multifile_descriptor_supported;
public boolean two_phase_commit_supported;
public boolean rtree_supported;
public boolean tree_based_hash;
public boolean tmgr_mvcc_async_cleanup;
public boolean concurent_disk_btree;
public boolean open_cursor_goto_first;
public boolean smart_index_insert;
public boolean btree_leaf_lock;
public boolean null_statistics;
public boolean implicit_runtime_start;
public boolean bufferized_sync_iostream;
public boolean async_replication;
public boolean fast_transaction_list;
public boolean extendable_dirty_page_bitmap;
public byte mursiw_policy;
public byte sync_capabilities;
public byte char_comparison_policy;
public long stream_buffer_size;
public byte 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 byte concurrent_write_transactions;
public byte encryption_support;
public boolean backup_support;
public String mco_revision;
public byte mco_process_t;
};
定义说明
为了帮助您更好地了解 SmartEDB 的功能和配置,以下是各个配置项的详细说明:
mco_version_major
SmartEDB 主版本号,显示 SmartEDB 的主版本号。
mco_version_minor
SmartEDB 次版本号,显示 SmartEDB 的次版本号。
mco_build_number
SmartEDB 构建号,显示 SmartEDB 的构建号。
mco_size_t
根据 x32 或 x64 架构,显示 mco_size_t 变量的大小。
mco_offs_t
根据 x32 或 x64 架构,显示 mco_offs_t 变量的大小。
uint4_supported
uint4 数据类型支持,如果为 true,则表示支持 uint4 数据类型。
float_supported
double/float 数据类型支持,如果为 true,则表示支持 double 和 float 数据类型。
mco_checklevel
运行时检查级别,0 表示非调试库,其他值表示不同的检查级别。
evaluation_version
如果为 true,则表示当前使用的是 SmartEDB 评估包。
large_database_supported
大数据库支持,如果为 true,则表示支持大于 4GB 的数据库(针对 x32 运行时模式)。
collation_supported
外部排序规则支持,如果为 true,则表示支持外部排序规则(索引比较)。
heap31_supported
v3.1 应用程序级堆功能支持,如果为 true,则表示支持 SmartEDB v3.1 应用程序级堆功能。
bin_serialization_supported
二进制或 XML 序列化支持,如果为 true,则表示支持二进制或 XML 序列化。
fixedrec_supported
固定记录分配支持,如果为 true,则表示支持固定记录分配(用于固定大小的对象)。
statistics_supported
统计信息收集支持,如果为 true,则表示启用统计信息收集。
events_supported
同步/异步事件支持,如果为 true,则表示支持同步和异步事件。
save_load_supported
快照保存和加载支持,如果为 true,则表示支持 Connection 方法 saveSnapshot()、saveClass() 和 loadClass()。
object_initialization_supported
新对象字段初始化支持,如果为 true,则表示支持新对象字段初始化(而非零值初始化)。
direct_index_field_access_supported
直接索引字段访问支持,如果为 true,则表示使用索引字段的值而非对象体的值进行优化(持久对象)。
multiprocess_access_supported
多进程访问支持,链接到程序中的常规或共享内存驱动程序。
object_repack_supported
动态对象重组支持,支持动态对象重组功能。已过时,为兼容性保留。
transaction_logging_supported
事务日志记录支持,如果为 true,则表示启用 SmartEDB 事务日志记录。
cluster_supported
集群支持,如果为 true,则表示启用 SmartEDB 集群。
high_availability_supported
高可用性支持,如果为 true,则表示启用 SmartEDB 高可用性。
ha_multicast_supported
高可用性多播通信支持,如果为 true,则表示启用 SmartEDB 高可用性多播通信。
ha_incremental_replication_supported
高可用性增量复制支持,如果为 true,则表示启用 SmartEDB 高可用性增量复制。
binary_schema_evalution_supported
二进制模式下的架构演变支持,如果为 true,则表示启用二进制模式下的架构演变。
unicode_supported
Unicode 支持,如果为 true,则表示支持 Unicode(nchar / nstring 数据类型)。
wchar_supported
WChar 支持,如果为 true,则表示支持 WChar(wchar / wstring 数据类型)。需要 C/C++ 运行时环境。
recovery_supported
恢复支持,已过时,为兼容性保留。
disk_supported
持久对象支持,如果为 true,则表示支持持久对象(vtmem / vtdsk 运行时)。
direct_pointers_supported
直接或偏移指针支持,如果为 true,则表示支持数据库中的直接或偏移指针(DPTR / OFFS 运行时)。
persistent_object_supported
对象持久化支持,如果为 true,则表示支持对象持久化(允许在 IM-OFFS 运行时使用持久化对象)。
xml_import_export_supported
XML 导出/导入支持,如果为 true,则表示支持 XML 数据库导出/导入。
user_defined_index_supported
用户定义索引支持,如果为 true,则表示支持用户定义索引(比较)。
multifile_supported
多文件持久存储支持,如果为 true,则表示支持多文件持久存储。
multifile_descriptor_supported
多文件描述符文件支持,如果为 true,则表示支持多文件描述符文件(mfd 文件)用于多文件持久存储功能。
two_phase_commit_supported
两阶段提交支持,如果为 true,则表示支持两阶段提交。
rtree_supported
rtree 索引实现支持,如果为 true,则表示将 rtree 索引实现代码包含到运行时。
tree_based_hash
基于树的哈希实现支持,如果为 true,则表示支持基于树的哈希实现(用于内部调试)。
tmgr_mvcc_async_cleanup
延迟清理策略,值为 1 表示“延迟清理不需要的对象版本”;值为 0 表示立即清理(表示文件 mcocfg.h 中 MCO_CFG_TMGR_MVCC_ASYNC_CLEANUP 的状态)。
open_cursor_goto_first
游标初始定位,表示新游标初始定位到第一个元素。
smart_index_insert
数据记录预排序,在自愿索引创建过程中对数据记录进行预排序。
smart_index_insert
细粒度锁定,树形索引的细粒度锁定。
bufferized_sync_iostream
HA 传输缓冲区化,表明已启用 HA 传输缓冲区化以进行同步过程。
async_replication
异步复制,异步高可用性复制已启用。
fast_transaction_list
快速事务列表,表示已启用事务列表实现中的树索引(MURSIW)。
fast_transaction_list
脏页映射扩展,持久存储的脏页映射扩展。
mursiw_policy
MURSIW 行为策略,MURSIW TM 行为:0 - 基于优先级的事务队列,1 - 顺序事务队列,2 - 全局同步,3 - 读写锁。
sync_capabilities
同步原语能力,同步原语实现能力,位掩码:1 - 单进程,2 - 多进程原语。
char_comparison_policy
字符比较策略,比较字符方式:0 - 默认,1 - 有符号,2 - 无符号。
stream_buffer_size
流式代码缓冲区大小,在高可用性(HA)、集群(CL)、传输层(TL)等中使用的流式代码缓冲区大小(也适用于流读取器和流写入器函数)。
max_db_instances
最大数据库实例数,运行时支持的最大数据库实例数。
max_db_name_length
最大数据库名称长度,运行时支持的最大数据库名称长度。
max_extends
最大扩展数,数据库内存区域的最大扩展数。
ha_max_replicas
同一时间的最大高可用性副本数,同一时间的最大高可用性副本数。
ha_transmit_buffer_size
从提交发送数据的缓冲区大小,在高可用性中用于从提交发送数据的缓冲区大小,默认为 2K。
ha_syncronization_buffer_size
同步流 IO 缓冲区大小,高可用性同步流 IO 缓冲区大小,默认为 2K。
default_redo_log_limit
重做日志长度限制的默认大小,重做日志长度限制的默认大小,默认为 16M。
mvcc_critical_sections
MVCC 使用的关键段数量,最好是质数。
mvcc_per_index_locks
索引使用的锁数量,最好是质数。
con_disk_page_cache_size
每个连接的页面缓存大小,运行时会预分配一些页面,以便在需要时加快页面分配速度。
small_con_cache_threshold
小连接缓存阈值,如果 con_disk_page_cache_size 大于 small_con_cache_threshold,则使用哈希的每个连接缓存;否则使用数组。
extendable_dirty_page_bitmap_limit
可扩展的脏页位图最大位图大小,如果启用了可扩展的脏页位图,最大位图大小。
max_vista_sessions
Vista 会话的最大数量,仅限 Windows Vista。
concurrent_write_transactions
并发写事务支持,当前事务管理器是否支持并发写事务。
encryption_support
加密算法支持,当前支持的加密算法的编号标识:在 mco.h 中指定:
#define MCO_CFG_NO_ENCRYPTION 0
#define MCO_CFG_RC4_OLD_ENCRYPTION 1
#define MCO_CFG_RC4_ENCRYPTION 2
#define MCO_CFG_AES_ENCRYPTION 3
请注意,值 MCO_CFG_RC4_OLD_ENCRYPTION 表示“不使用页面偏移作为盐的 RC4 加密:仅用于向后兼容”。
backup_support
增量备份支持,如果为 True,则支持“增量备份”功能。
mco_revision
SmartEDB 的修订号。
mco_process_t
进程标识符数据类型的大小,值 sizeof(mco_process_t) - 进程标识符数据类型的大小(以字节为单位)(此数据类型通常用作数据库连接中的上下文,进而用于嗅探器功能)。