HELGE SVERREAll-stack Developer
Bergen, Norwayv13.0
est. 2012  |  300+ repos  |  4000+ contributions
Theme:
SurrealDB 3.0: What's Really New? (Beyond the Speed Hype)
February 11, 2026

The Obligatory Rant

I saw this tweet yesterday:

"Mark your calendar." "We'll unveil." "Reshapes the way you..." — I'm so tired of this.

Every software company does this now. A vague teaser tweet, a countdown, a livestream date, a hype reel — all to tell you what's in a release that already has public beta tags on GitHub. Your time is worth more than sitting through a marketing livestream to find out what changed in a database you use. The information is right there in the repo, in the release notes, in the migration guide. It's open source. You can just... go look.

So that's what I did. I pointed Grok at the GitHub repo, the beta changelogs, and the migration docs, and asked it to summarize everything that's actually new in 3.0. No hype, no "unveiling," no calendar-marking required. You can do this yourself for any open source project — it takes about two minutes and you get dense, straight facts. People are busy. These are tools we use to get work done, not fandoms. Just give us the info.

Here's the full picture.


SurrealDB 3.0 hits general availability on February 17, 2026, following a series of betas (latest: v3.0.0-beta.4 released February 10, 2026). The marketing leans hard on "faster, smarter, more powerful" — but here's what actually changed: the multi-model engine (documents + graphs + vectors + full-text + time-series + relational) has been hardened for production. Experimental features from 2.x are now stable, legacy cruft has been cleaned out, schema tools for derived data have been added, and auth/security/observability all got a polish pass.

It's evolutionary rather than revolutionary — SurrealDB leveled up for reliability and scale, it's not a brand-new database. But the cumulative list of new features, breaking changes, and DX improvements is substantial.

New & Stabilized Features

Many experimental capabilities from 2.x become first-class citizens, with real additions:

  • COMPUTED fields — Full replacement for the old <future> type. Define derived fields that compute on read (e.g., age from birth_date). Cleaner schema, no stored futures.
  • None type — Proper distinct value (different from null in some contexts).
  • Improved Set type & syntax — Ordered, auto-deduplicated literals (e.g., {1,2,1} becomes {1,2}).
  • COUNT indexes — Constant-time count() on large tables.
  • Enhanced full-text search — Multiple writers, OR operations, better compound/range scans.
  • ALTER FIELD / updated ALTER TABLE — Granular schema changes.
  • ALTER INDEX ... PREPARE REMOVE — Safely drop indexes without surprises.
  • Default namespace/database handling — Less boilerplate for simple setups.
  • Stabilized record references — Better field-based refs (no longer experimental).
  • Graph & recursive query polish — More stability for deep traversals (key for AI reasoning / knowledge graphs).
  • HNSW vector index defaults — 32-bit floats (smaller footprint), plus hash-based deduplication.
  • Auth improvements — Rate limiting (AuthLimit), permissions on DEFINE API.
  • Distributed sequences — Reliable global counters in clusters.
  • RPC / SDK enhancements — Client-side transactions, multi-session support, refresh tokens.
  • Observability upgrades — Configurable file/JSON logging, slow-query logging, standardized metrics (including RocksDB).
  • Strict mode per DBDEFINE DATABASE ... STRICT (no global --strict flag).
  • Better error messages — Many statements now error if resources aren't defined (instead of empty results).
  • SurrealDB as pluggable library — Easier embedding/custom datastores.
  • Composable HTTP router — For embedders.
  • CommunityComposer — Removes global config state.

Performance & Optimization Highlights

While the post isn't just about speed, the gains are real and targeted at AI workloads:

  • Significant index scan/order improvements across the board.
  • Better vector handling, graph lookups, transaction stability.
  • Early-stop iteration, batched commits, reduced heap usage, connection pooling, etc.

These make 3.0 noticeably snappier for large-scale real-time, vector-hybrid, and graph-heavy apps.

Breaking Changes & Removals (Prepare to Migrate)

3.0 includes several cleanups — some painful:

  • <future> is gone — migrate to COMPUTED (major redesign for dynamic fields).
  • Like/fuzzy operators (~ !~ ?~ *~) removed — use string::similarity::jaro() / distance functions.
  • MTREE vector index gone — switch to HNSW.
  • LET now required for parameters (no bare $var = value).
  • GROUP + SPLIT forbidden together — refactor with subqueries.
  • SEARCH ANALYZER becomes FULLTEXT ANALYZER.
  • rand::guid() becomes rand::id(); type::thing becomes type::record.
  • Stored closures in records disabled by default (can be re-enabled via SURREAL_CAPS_ALLOW_INSECURE_STORABLE_CLOSURES).
  • Legacy SEARCH indexes removed.
  • FoundationDB backend dropped.
  • array::range now supports range syntax (e.g., array::range(1..=5)) alongside the existing (start, count) form.
  • Other: rand::time range adjusted, math functions no longer return NONE, deprecated auth statements gone.

How to Migrate

SurrealDB includes a built-in migration tool for the 2.0 → 3.0 upgrade path, and Surrealist (the official GUI) has migration support in recent versions. The general workflow:

  1. Run migration diagnostics against your 2.x database to identify breaking changes.
  2. Address critical issues — <future> to COMPUTED, MTREE to HNSW, LET additions, analyzer renames, etc.
  3. Export your data in a 3.0-compatible format.
  4. Manually fix anything the tooling can't auto-migrate: futures stored in records, GROUP+SPLIT queries, removed operators, closures.
  5. Import the .surql file into 3.x and verify.

Beta Docker images/tags are available now for testing (surrealdb/surrealdb:beta or specific beta tags). Stable binaries drop February 17.

Bottom Line

SurrealDB 3.0 delivers a more mature, production-ready multi-model database: better schema tools for AI-derived data, cleaned vector/graph foundations, auth/observability/security polish, and serious performance under the hood. If you're not heavily using futures, old operators, MTREE, or FoundationDB, the upgrade should feel mostly additive. If you are, Surrealist makes migration manageable.

Watch the February 17 GA live stream for the official recap — but this is the no-tease changelog essence from the betas.

Excited? Head to surrealdb.com/releases or GitHub releases for the raw details. Test the betas today!




<!-- generated with nested tables and zero regrets -->