Skip to content

HeliosDB Full v8.3.0 Release Notes

HeliosDB Full v8.3.0 Release Notes

Theme: Durable-by-default WAL, PostgreSQL request-path hardening, data-integrity fixes


Highlights

v8.3.0 hardens the PostgreSQL request path, makes acknowledged writes durable by default, fixes two data-integrity issues, and improves throughput on concurrent and filtered workloads.


Behaviour Change: Writes Are Durable by Default

Writes are now fsync-durable when acknowledged, the same trade-off PostgreSQL makes with synchronous_commit = on. Previously an acknowledged write could be lost in a crash. Concurrent writers share one flush (group commit), so durable write throughput scales with client concurrency.

Upgrade note: single-connection, autocommit write latency now includes the disk’s fsync cost (around 16 ms on rotational storage, typically sub-millisecond on NVMe). If you prefer the previous latency profile you can:

  • batch writes in explicit transactions,
  • run concurrent writers (group commit amortises the flush), or
  • opt into fast mode:
Terminal window
HELIOSDB_SYNCHRONOUS_COMMIT=off # acknowledge after write; flush on a short interval

Fast mode bounds the crash-loss window to the WAL flush interval (5 ms by default), which is still strictly safer than the previous behaviour.


Security and Robustness

  • Malformed-input handling: malformed or truncated PostgreSQL protocol messages, and multi-byte input in some SQL preprocessing paths, now return a clean error instead of terminating the connection.
  • Startup handshake timeout: a client must complete startup and authentication within HELIOSDB_STARTUP_TIMEOUT_SECS (default 30). Stalled pre-authentication connections are dropped. Established and idle connections are unaffected.
  • Connection cap: total client connections across all protocols are capped by HELIOSDB_MAX_CONNECTIONS (default 10000). Beyond the cap, new connections are rejected.

Data Integrity

  • PRIMARY KEY uniqueness is now enforced against rows written in earlier server sessions (previously a duplicate could be accepted after a restart).
  • An abnormal client disconnect now rolls back that client’s open transaction.
  • WAL recovery after a crash is a deterministic forward scan, fixing a case where entries could be dropped on replay.

Performance

  • Higher throughput on concurrent reads and writes thanks to reduced per-statement overhead.
  • Faster SELECT … WHERE on non-indexed columns, especially selective and multi-predicate filters. No behaviour change.

Upgrading

No SQL or wire-protocol breaking changes. Review the durability behaviour change above before upgrading latency-sensitive, single-connection write workloads.

New environment variables in this release:

VariableDefaultPurpose
HELIOSDB_SYNCHRONOUS_COMMITonoff acknowledges writes before flushing (fast mode)
HELIOSDB_STARTUP_TIMEOUT_SECS30Seconds allowed for the startup and authentication handshake
HELIOSDB_MAX_CONNECTIONS10000Cap on concurrent client connections across all protocols

Licensed customers receive v8.3.0 through their usual distribution channel. For access, contact sales@heliosdb.com.