Skip to main content
Version: V1.1.0

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.

tip

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 TABLE gives 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 TABLE lets 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 with RENAME 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 TABLE step 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_size and datafile_next configuration 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_limit with 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 tune log_disk_size and log_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 with syslog_level and the number of retained files with max_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_limit parameter 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, increase memory_limit as needed.

  • Configurable hard memory limit: A new option memory_hard_limit sets 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 optionChange typeDescription
_advance_checkpoint_intervalNewControls how often CLOG checkpoint is advanced. Default is 10m (every 10 minutes). Set to 0 to disable.
memory_hard_limitNewMaximum memory seekdb may use. Default 0 means 90% of system memory.
memory_limitDefault changedSoft memory limit. Default changed from 0M to 2G.
syslog_levelDefault changedSystem log level. Default changed from WDIAG to WARN.
log_disk_sizeDefault changedMaximum disk space for CLOG files. Default changed from 10G to 0 (0 = half of memory_limit, minimum 2G).
log_disk_utilization_thresholdDefault changedCLOG utilization threshold (relative to log_disk_size) at which log reclaim starts. Default changed from 80 to 0 (0 = reclaim old logs promptly).
datafile_sizeDefault changedInitial data file size. Default changed from 2G to 32M.
datafile_nextDefault changedData file auto-extend step. Default changed from 2G to 0 (0 = adaptive: double until 1G, then 1G steps).
max_syslog_file_countDefault changedNumber 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_covers performance 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:

CategoryComponentVersionNotes
SDKpyseekdbV1.1.0
SDKseekdb-jsV1.1.0
Data import/exportOBDUMPER/OBLOADERV4.3.5Direct load not supported
Web development toolODCV4.4.1 BP1