V1.1.0
Version information
-
Release date: January 30, 2026
-
Version: V1.1.0
-
RPM version: seekdb-1.1.0.0-100000142026013001
New features
macOS build support
As of V1.1.0, seekdb supports native builds and local development on macOS 15 and later.
For installation on macOS, see Deploy seekdb by using package managers.
FORK TABLE (experimental)
V1.1.0 introduces FORK TABLE, which lets you create a copy of a table without a full data copy. Unlike CTAS (Create Table As Select), FORK TABLE reuses table-level storage and uses copy-on-write so that creation time and resource use stay low regardless of data size, while preserving consistent semantics.
For a full description of FORK TABLE, see Fork a table.
In V1.1.0, FORK TABLE is experimental. Use it with caution and avoid relying on it in production until it is promoted to a stable feature in a later release.
Typical use cases:
-
AI coding and safe test data: AI code assistants generate SQL, ORM code, and data APIs from table structure and sample data, and may need to change schema or data.
FORK TABLEgives AI a dedicated copy of your data so it can learn and experiment on realistic structure and distribution; once changes are validated, you can apply them to the production table. -
Multi-version knowledge bases: When the live knowledge base is serving users and you need to update many FAQ or document entries in the background, you may want to keep multiple versions until new content is validated.
FORK TABLElets you copy the live knowledge base quickly, update the forked table offline without affecting the online service, and then promote the new version (for example withRENAME TABLE) when ready. -
Shared and private knowledge: When multiple customers or business lines share a common AI knowledge base but need some content to be private or customized, you can fork from a single "master" table into multiple tables, add private documents and customizations per fork, and control access and release separately.
-
A/B testing: Create multiple variants from the same production snapshot to compare different indexes, parameters, or SQL patterns without paying the cost of full copies.
-
Offline DDL and change validation: For risky changes (column type changes, schema changes), fork the table first, run and validate the change on the fork, then apply to the original table to avoid unexpected impact on production.
-
CI/CD validation: Add a
FORK TABLEstep to your pipeline so that before releasing code to production, you can run tests against a production-like snapshot without touching live data.
Syntax: FORK TABLE source_table TO destination_table;
Behavior: Creates destination_table from a snapshot of source_table. Both tables can be read and written independently. You can use DROP TABLE or RENAME TABLE to roll back or promote a version.
Performance: Fork typically completes in hundreds of milliseconds.
Storage optimizations
V1.1.0 lowers minimum resource requirements for data storage, CLOG storage, and system log storage so that seekdb is easier to run in resource-constrained environments.
-
Data file allocation: seekdb pre-allocates data file space at startup. Under light load, actual usage can be on the order of tens of MB; a large default was wasting disk. In V1.1.0, the default data file size is reduced from 2 GB to 32 MB. The default auto-extend behavior is also changed: instead of a fixed 2 GB step, the system now uses an adaptive step. When the data file is under 1 GB, it doubles using the current file size as the step; once the file reaches 1 GB, the step is 1 GB. You can override this with the
datafile_sizeanddatafile_nextconfiguration options. -
CLOG disk usage: Previously, CLOG was often configured with a 10 GB default (some deployment tools or container images used 2 GB), and that space was pre-allocated at startup, which was heavy for small environments. V1.1.0 changes the default CLOG disk size to half of
memory_limitwith a minimum of 2 GB, and improves allocation and reclaim so that checkpoint SCN advancement reclaims old log space and keeps CLOG usage low. For larger setups that need to retain more CLOG, you can tunelog_disk_sizeandlog_disk_utilization_threshold. -
System log disk usage: The default system log level is changed from WDIAG to WARN, and the default number of retained log files is reduced from 4 to 2, so less is written to disk and I/O is lower. seekdb supports seven log levels, from most to least verbose:
DEBUG → TRACE → WDIAG → EDIAG → INFO → WARN → ERROR. DEBUG, TRACE, WDIAG, and EDIAG are diagnostic levels for development and troubleshooting; INFO, WARN, and ERROR are aimed at DBAs and operators for monitoring and incident response. The new default WARN reduces noise and storage. You can change the level withsyslog_leveland the number of retained files withmax_syslog_file_count.
Memory management improvements
V1.1.0 refines memory management so that seekdb behaves well across different deployment sizes (small or large memory, standalone or co-located with other services).
-
Dynamic memory usage: The
memory_limitparameter caps how much memory seekdb uses; the default is now 2 GB. Under normal operation the process stays within this limit. During one-off high-memory phases (e.g., compaction, bulk load, large sorts), seekdb may temporarily exceed the limit if the system has free memory, which improves stability and throughput on smaller instances. For large datasets or higher performance, increasememory_limitas needed. -
Configurable hard memory limit: A new option
memory_hard_limitsets a strict upper bound on seekdb memory. The default is 0, meaning 90% of system memory is used as the hard limit; you can set an explicit value. This prevents runaway allocation and is especially useful when seekdb runs alongside other components so that it does not starve them.
Configuration changes
| Configuration option | Change type | Description |
|---|---|---|
| _advance_checkpoint_interval | New | Controls how often CLOG checkpoint is advanced. Default is 10m (every 10 minutes). Set to 0 to disable. |
| memory_hard_limit | New | Maximum memory seekdb may use. Default 0 means 90% of system memory. |
| memory_limit | Default changed | Soft memory limit. Default changed from 0M to 2G. |
| syslog_level | Default changed | System log level. Default changed from WDIAG to WARN. |
| log_disk_size | Default changed | Maximum disk space for CLOG files. Default changed from 10G to 0 (0 = half of memory_limit, minimum 2G). |
| log_disk_utilization_threshold | Default changed | CLOG utilization threshold (relative to log_disk_size) at which log reclaim starts. Default changed from 80 to 0 (0 = reclaim old logs promptly). |
| datafile_size | Default changed | Initial data file size. Default changed from 2G to 32M. |
| datafile_next | Default changed | Data file auto-extend step. Default changed from 2G to 0 (0 = adaptive: double until 1G, then 1G steps). |
| max_syslog_file_count | Default changed | Number of system log files to retain. Default changed from 4 to 2. |
Bug fixes
Vector index fixes
- Fixed timer-based scans in vector indexes that could cause high CPU usage (176a6e13)
- Fixed IVF similarity data loss (f443e5ac)
- ObPluginVectorIndexHelper now uses the hard memory limit (e9dd7c54)
- Expressions are now supported in
DBMS_HYBRID_SEARCH.GET_SQL(ae256978)
Semantic index fixes
- Fixed semantic index creation failure and embedding failure on very long data (c9495bac)
- Fixed hybrid vector index LLM invocation errors (222f653f)
Other fixes
- Reduced IK parser load time (87ab54c3)
- Fixed direct load transaction state mismatch (a0511d92)
- Fixed
st_intersects/st_coversperformance issues (fc805e45) - Fixed issues related to storage optimization (019838e0)
- Fixed auto-increment sequence lifecycle handling (94228ef3)
- Fixed compaction state abnormalities (27736694)
- Fixed DAG task error code being overwritten by ob cancel (8252547f)
- Added fsync before reading macro blocks during SSTable build (7f8bddf3)
- SQL memory tracker now uses the hard memory limit (a27dea95)
- Refactored I/O callback threads to use ObLinkQueueThreadPool (c42e5f71)
Upgrade notes
In-place upgrade from 1.0.x to 1.1.0 is not supported. To move to 1.1.0, use a logical migration with OBDUMPER/OBLOADER or mysqldump.
For step-by-step upgrade procedures, see:
Related components
| Category | Component | Version | Notes |
|---|---|---|---|
| SDK | pyseekdb | V1.1.0 | |
| SDK | seekdb-js | V1.1.0 | |
| Data import/export | OBDUMPER/OBLOADER | V4.3.5 | Direct load not supported |
| Web development tool | ODC | V4.4.1 BP1 |