---
title: "Release 2.2 | SurrealDB"
description: "Bug fix: Fixed Live Queries document issue Security advisories: Unauthorized Data Exposure via LIVE Query Subscriptions"
url: https://surrealdb.com/releases/2.2
---

Back to top

[Version 2.2.8](https://surrealdb.com/releases/2.2#release-2-2-8)

[Version 2.2.7](https://surrealdb.com/releases/2.2#release-2-2-7)

[Version 2.2.6](https://surrealdb.com/releases/2.2#release-2-2-6)

[Version 2.2.5](https://surrealdb.com/releases/2.2#release-2-2-5)

[Version 2.2.4](https://surrealdb.com/releases/2.2#release-2-2-4)

[Version 2.2.3](https://surrealdb.com/releases/2.2#release-2-2-3)

[Version 2.2.2](https://surrealdb.com/releases/2.2#release-2-2-2)

[Version 2.2.1](https://surrealdb.com/releases/2.2#release-2-2-1)

[Version 2.2.0](https://surrealdb.com/releases/2.2#release-2-2-0)

[Home](https://surrealdb.com/)

[Releases](https://surrealdb.com/releases)

2.2

# Release 2.2

9 patch releases · Latest 2.2.8 on Sep 11, 2025

[Newer release line available: 2.3 →](https://surrealdb.com/releases/2.3)

Bug fix: Fixed Live Queries document issue Security advisories: Unauthorized Data Exposure via LIVE Query Subscriptions

## 2.2.8

Released on Sep 11, 2025

Bug fix:

- [Fixed Live Queries document issue](https://github.com/surrealdb/surrealdb/pull/6261)

Security advisories:

- [Unauthorized Data Exposure via LIVE Query Subscriptions](https://github.com/surrealdb/surrealdb/security/advisories/GHSA-7vm2-j586-vcvc)

Upgrade or install

## Get SurrealDB v2.2.8

Pick how you want to install or upgrade. SurrealDB Studio can update connected instances in place, or choose a platform below to copy a CLI command for v2.2.8.

SurrealDB Cloud

macOS

Linux

Windows

Docker

Already installed

You can upgrade your SurrealDB Cloud instance to v2.2.8 effortlessly through SurrealDB Studio.

1. Open the [SurrealDB Studio](https://studio.surrealdb.com/current/instances)
2. Select your organisation and instance
3. On the dashboard, click on the "Upgrade" button
4. Your instance will be updated and restarted automatically

[Full install guide](https://surrealdb.com/surrealdb/install)

## 2.2.7

Released on Jul 9, 2025

Bug fixes:

- [Ensure session variables are attached to `DEFINE API` execution context](https://github.com/surrealdb/surrealdb/pull/6158)
- [The standard index should not fail if a value already exists](https://github.com/surrealdb/surrealdb/pull/6163)

Newer patch available

## Upgrade to 2.2.8

You are viewing the 2.2.7 changelog. A newer patch in this release line is available - we recommend running 2.2.8 for the latest fixes and improvements.

[View 2.2.8 release notes](https://surrealdb.com/releases/2.2#release-2-2-8)

## 2.2.6

Released on Jun 26, 2025

Bug fixes:

- [TIKV client update to `0.3.0-surreal.3`](https://github.com/surrealdb/surrealdb/pull/6010)
- [Implements DNS resolution on `Context::check_allowed_net`](https://github.com/surrealdb/surrealdb/pull/6101)

Workflow improvements:

- [Added support for log files, json log format, and advanced log span filtering](https://github.com/surrealdb/surrealdb/pull/6048)
- [Improved metrics consistency](https://github.com/surrealdb/surrealdb/pull/6073)
- [Added support for Docker container timezone customisation](https://github.com/surrealdb/surrealdb/pull/6106)
- [Ensured errors are caught when checking permissions for LQ](https://github.com/surrealdb/surrealdb/pull/6109)
- [Ensured NS/DB is set; Ensure transaction is committed or cancelled](https://github.com/surrealdb/surrealdb/pull/5962)

Security advisories:

- [Bypass of deny-net flags via DNS resolution](https://github.com/surrealdb/surrealdb/security/advisories/GHSA-m3c3-78fh-w3w7)

Newer patch available

## Upgrade to 2.2.8

You are viewing the 2.2.6 changelog. A newer patch in this release line is available - we recommend running 2.2.8 for the latest fixes and improvements.

[View 2.2.8 release notes](https://surrealdb.com/releases/2.2#release-2-2-8)

## 2.2.5

Released on Jun 19, 2025

Workflow improvements:

- [Improved metrics consistency](https://github.com/surrealdb/surrealdb/pull/6073)
- [Reject resolution of IP addresses resolving to denied IP address when doing HTTP request](https://github.com/surrealdb/surrealdb/pull/6052)

Newer patch available

## Upgrade to 2.2.8

You are viewing the 2.2.5 changelog. A newer patch in this release line is available - we recommend running 2.2.8 for the latest fixes and improvements.

[View 2.2.8 release notes](https://surrealdb.com/releases/2.2#release-2-2-8)

## 2.2.4

Released on Jun 17, 2025

Workflow improvements:

- [Improved import memory usage](https://github.com/surrealdb/surrealdb/pull/6027)
- [Context cancellation check in prepare mock](https://github.com/surrealdb/surrealdb/pull/6029)
- [Changed default RocksDB configuration options](https://github.com/surrealdb/surrealdb/pull/6045)

Newer patch available

## Upgrade to 2.2.8

You are viewing the 2.2.4 changelog. A newer patch in this release line is available - we recommend running 2.2.8 for the latest fixes and improvements.

[View 2.2.8 release notes](https://surrealdb.com/releases/2.2#release-2-2-8)

## 2.2.3

Released on May 13, 2025

Bug fixes:

- [Fixed escape issue on index specification](https://github.com/surrealdb/surrealdb/pull/5833)
- [Fixed invalid "*" value for SURREAL_CAPS_ALLOW_ARBITRARY_QUERY | ALLOW_EXPERIMENTAL]([https://github.com/surrealdb/surrealdb/pull/5890](https://github.com/surrealdb/surrealdb/pull/5890))
- [Fixed select broken with index on count / where](https://github.com/surrealdb/surrealdb/pull/5837)

Newer patch available

## Upgrade to 2.2.8

You are viewing the 2.2.3 changelog. A newer patch in this release line is available - we recommend running 2.2.8 for the latest fixes and improvements.

[View 2.2.8 release notes](https://surrealdb.com/releases/2.2#release-2-2-8)

## 2.2.2

Released on Apr 10, 2025

Bug fixes:

- [Check limit to string::replace with regular expressions](https://github.com/surrealdb/surrealdb/pull/5635)
- [Fixes long running FOR loops, adds script timeouts, improves HTTP redirect security, and optimises task yielding for better performance](https://github.com/surrealdb/surrealdb/pull/5597)
- [Implements SURREAL_FILE_ALLOWLIST](https://github.com/surrealdb/surrealdb/pull/5600)
- [Improve error handling on value conversion (RPC / HTTP/SQL endpoint) (#5647)](https://github.com/surrealdb/surrealdb/pull/5647)
- [Introduces Regex size limit configuration (#5638)](https://github.com/surrealdb/surrealdb/pull/5638)
- [Backport Allocation tracking - 2.2.x (#5662)](https://github.com/surrealdb/surrealdb/pull/5662)
- [Add memory limit threshold check to all statements (#5704) (#5736)](https://github.com/surrealdb/surrealdb/commit/d55f104dc583d3bc04cf6a8a977235408e894718)
- [Add deal-store datasets to the upgrade test (#5738)](https://github.com/surrealdb/surrealdb/pull/5738)
- [Update branch name and pin Rust version for clippy and tests (#5768)](https://github.com/surrealdb/surrealdb/pull/5768)

Security Advisories:

- [Uncaught exception in Net module leads to database crash](https://github.com/surrealdb/surrealdb/security/advisories/GHSA-rq86-9m6r-cm3g)
- [Server-takeover via SurrealQL injection on backup import](https://github.com/surrealdb/surrealdb/security/advisories/GHSA-ccj3-5p93-8p42)
- [Memory exhaustion via nested functions and scripts](https://github.com/surrealdb/surrealdb/security/advisories/GHSA-m7rc-8w7m-r9qr)
- [Local file read of 2-column TSV files via analyzers](https://github.com/surrealdb/surrealdb/security/advisories/GHSA-2cvj-g5r5-jrrg)
- [Memory exhaustion via string::replace using regex](https://github.com/surrealdb/surrealdb/security/advisories/GHSA-3633-g6mg-p6qq)
- [No JavaScript script function default timeout could facilitate DoS](https://github.com/surrealdb/surrealdb/security/advisories/GHSA-3824-qmfq-2qv7)
- [CPU exhaustion via custom functions result in total DoS](https://github.com/surrealdb/surrealdb/security/advisories/GHSA-pxw4-94j3-v9pf)
- [Bypass of deny-net flags via redirect results in SSRF](https://github.com/surrealdb/surrealdb/security/advisories/GHSA-5q9x-554g-9jgg)

Newer patch available

## Upgrade to 2.2.8

You are viewing the 2.2.2 changelog. A newer patch in this release line is available - we recommend running 2.2.8 for the latest fixes and improvements.

[View 2.2.8 release notes](https://surrealdb.com/releases/2.2#release-2-2-8)

## 2.2.1

Released on Feb 18, 2025

Features:

- [Allowed configuring experimental features in Rust SDK and CLI](https://github.com/surrealdb/surrealdb/pull/5547)
- [Introduced CLI Export customisation](https://github.com/surrealdb/surrealdb/pull/5556)

Bug fixes:

- [Ensured idiom fetching uses the LQ context](https://github.com/surrealdb/surrealdb/pull/5530)
- [Refactored capabilities to reduce allocations](https://github.com/surrealdb/surrealdb/pull/5533)
- [Ensured crates integrity](https://github.com/surrealdb/surrealdb/pull/5539)
- [Improved `DEFINE API` implementation](https://github.com/surrealdb/surrealdb/pull/5538)
- [Fixed `DEFINE API` stored key](https://github.com/surrealdb/surrealdb/pull/5540)
- [Improved `array::fill`](https://github.com/surrealdb/surrealdb/pull/5540)
- [Ensured `NONE` values are maintained in arrays](https://github.com/surrealdb/surrealdb/pull/5506)

Newer patch available

## Upgrade to 2.2.8

You are viewing the 2.2.1 changelog. A newer patch in this release line is available - we recommend running 2.2.8 for the latest fixes and improvements.

[View 2.2.8 release notes](https://surrealdb.com/releases/2.2#release-2-2-8)

## 2.2.0

Released on Feb 11, 2025

Features:

- [Added shortest path queries](https://github.com/surrealdb/surrealdb/pull/5267)
- [Added support for graph clauses](https://github.com/surrealdb/surrealdb/pull/5424)
- [Added `object::is_empty()` function](https://github.com/surrealdb/surrealdb/pull/5303)
- [Added variable support for shortest path queries](https://github.com/surrealdb/surrealdb/pull/5330)
- [Added support of keys only logic with index iterators](https://github.com/surrealdb/surrealdb/pull/5338)
- [Added `SURREAL_COUNT_BATCH_SIZE` env variable](https://github.com/surrealdb/surrealdb/pull/5369)
- [Added `type::is::range()` method and idiom `.is_range()` method](https://github.com/surrealdb/surrealdb/pull/5203)
- [Added support for memory threshold limits](https://github.com/surrealdb/surrealdb/pull/5221)
- [Added environment variables to disable tracing and metrics](https://github.com/surrealdb/surrealdb/pull/5223)
- [Added support for datetimes for `rand::time` function](https://github.com/surrealdb/surrealdb/pull/5202)
- [Added support of compound indexes on AND queries](https://github.com/surrealdb/surrealdb/pull/5185)
- [Enabled allocation tracking](https://github.com/surrealdb/surrealdb/pull/5277)
- [Added `DEFAULT ALWAYS` clause](https://github.com/surrealdb/surrealdb/pull/5456)
- [Implemented `FETCH` for live queries](https://github.com/surrealdb/surrealdb/pull/5442)

Bug fixes:

- [Fixed Index is corrupted - TreeNode out of bounds](https://github.com/surrealdb/surrealdb/pull/5313)
- [Enabled ANSI code support on Windows](https://github.com/surrealdb/surrealdb/pull/5341)
- [Fixed (-$param) failed bug in Parser](https://github.com/surrealdb/surrealdb/pull/5358)
- [Fixed index_hnsw bench](https://github.com/surrealdb/surrealdb/pull/5366)
- [Allowed escape characters inside mathematical angle bracket escaped idents](https://github.com/surrealdb/surrealdb/pull/5262)
- [Fixed allocator on Windows](https://github.com/surrealdb/surrealdb/pull/5299)
- [Fixed parse buffer not properly growing](https://github.com/surrealdb/surrealdb/pull/5398)
- [Reintroduced id selection behaviour](https://github.com/surrealdb/surrealdb/pull/5413)
- [Fixed design for live queries cache](https://github.com/surrealdb/surrealdb/pull/5390)
- [Fixed array::transpose() not adding NONE at non-existent indexes when transposing arrays of varying length](https://github.com/surrealdb/surrealdb/pull/5433)
- [Fixed concurrent index creation with overwrite](https://github.com/surrealdb/surrealdb/pull/5482)
- [Ensure INSERT IGNORE does not throw error](https://github.com/surrealdb/surrealdb/pull/5520)

Optimisations:

- [Introduced language testing suite](https://github.com/surrealdb/surrealdb/pull/5165)
- [Added cross-transaction caching to database and table statements](https://github.com/surrealdb/surrealdb/pull/5460)
- [Disallow mismatched field types](https://github.com/surrealdb/surrealdb/pull/5461)
- [Skip processing documents when START is specified](https://github.com/surrealdb/surrealdb/pull/5463)
- [Added minor optimisations for SELECT count() FROM table GROUP ALL queries](https://github.com/surrealdb/surrealdb/pull/5295)
- [Implemented priority queue for queries with ORDER and LIMIT](https://github.com/surrealdb/surrealdb/pull/5321)
- [Improved error messages for HTTP database functions](https://github.com/surrealdb/surrealdb/pull/5325)
- [Reworked query streaming and error reporting](https://github.com/surrealdb/surrealdb/pull/5326)
- [Disabled `PARALLEL` option](https://github.com/surrealdb/surrealdb/pull/5334)
- [Added file URL handling and tests for store initialisation](https://github.com/surrealdb/surrealdb/pull/5340)
- [Added default limit for max open files with rocksdb storage engine](https://github.com/surrealdb/surrealdb/pull/5205)
- [Removed `-log trace` from Docker instructions](https://github.com/surrealdb/surrealdb/pull/5207)
- [Increased Rust memory allocation, parallelism information and RocksDB block cache size](https://github.com/surrealdb/surrealdb/pull/5227)
- [Added initial support for improved retryable transaction errors](https://github.com/surrealdb/surrealdb/pull/5184)
- [Simplified field processing logic](https://github.com/surrealdb/surrealdb/pull/5244)
- [Optimised transaction multi-get function interface](https://github.com/surrealdb/surrealdb/pull/5239)
- [Optimised RocksDB key-value gets](https://github.com/surrealdb/surrealdb/pull/5270)
- [Added `stdout` and `stderr` log splitting](https://github.com/surrealdb/surrealdb/pull/5271)
- [Added tests for other SDKs in CI](https://github.com/surrealdb/surrealdb/pull/5405)
- [Moved all experimental features to experimental capabilities](https://github.com/surrealdb/surrealdb/pull/5394)
- [Streamlined FoundationDB features](https://github.com/surrealdb/surrealdb/pull/5416)
- [Improved RocksDB block cache configuration](https://github.com/surrealdb/surrealdb/pull/5417)
- [Remove naive concurrency rate limiter in WebSocket](https://github.com/surrealdb/surrealdb/pull/5452)
- [Added dedicated threadpool for storage engine operations](https://github.com/surrealdb/surrealdb/pull/5453)
- [Skip strategy down to scanner for `START` queries](https://github.com/surrealdb/surrealdb/pull/5470)
- [Allow chaining path operations](https://github.com/surrealdb/surrealdb/pull/5471)
- [Implement support for RPC protocol versioning](https://github.com/surrealdb/surrealdb/pull/5513)
- [Switch to tokio::mpsc from async_channel in WebSocket](https://github.com/surrealdb/surrealdb/pull/5517)
- [Allow configurable background flush syncing](https://github.com/surrealdb/surrealdb/pull/5522)

SurrealKV:

- [Expose surrealkv config options as env variable](https://github.com/surrealdb/surrealdb/pull/5297)
- [Enable data durability configuration on RocksDB and SurrealKV](https://github.com/surrealdb/surrealdb/pull/5466)

Workflow improvements:

- [Fixed nightly version prefix](https://github.com/surrealdb/surrealdb/pull/5348)
- [Added `Tx::count()`, `Tr::count()`, and `kvs::count()` methods](https://github.com/surrealdb/surrealdb/pull/5351)
- [Fixed `make check` and `cargo make ci-check-wasm` commands](https://github.com/surrealdb/surrealdb/pull/5352)
- [Made all count/group use transaction::count method](https://github.com/surrealdb/surrealdb/pull/5354)
- [Documented core as internal only and remove doc(hidden)](https://github.com/surrealdb/surrealdb/pull/5194)
- [Added support for minimum number of tokio worker threads](https://github.com/surrealdb/surrealdb/pull/5211)
- [Removed development panic backtrace on transaction drop](https://github.com/surrealdb/surrealdb/pull/5217)
- [Fixed clippy warnings](https://github.com/surrealdb/surrealdb/pull/5218)
- [Added Compute args for idiom methods](https://github.com/surrealdb/surrealdb/pull/5200)
- [Ensured Windows builds have a default allocator](https://github.com/surrealdb/surrealdb/pull/5236)
- [Optimised `Options` and `Auth` core engine internals](https://github.com/surrealdb/surrealdb/pull/5239)
- [Added error logging for `make sql` and `make repl`](https://github.com/surrealdb/surrealdb/pull/5274)
- [Added Goodbye message to terminal before exiting](https://github.com/surrealdb/surrealdb/pull/5402)
- [Improved Issue templates](https://github.com/surrealdb/surrealdb/pull/5454)
- [Fixed GitHub issue labeling](https://github.com/surrealdb/surrealdb/pull/5457)

Experimental:

- [Changed bearer key storage and verification to only use hashes](https://github.com/surrealdb/surrealdb/pull/5342)
- [Implement refresh tokens for record users](https://github.com/surrealdb/surrealdb/pull/5230)
- [Added functions to GraphQL](https://github.com/surrealdb/surrealdb/pull/5279)
- [Added Record references to GraphQL](https://github.com/surrealdb/surrealdb/pull/5300)

Breaking changes:

- [array::transpose() now adds NONE at non-existent indexes when arrays vary in length](https://github.com/surrealdb/surrealdb/pull/5433).

Newer patch available

## Upgrade to 2.2.8

You are viewing the 2.2.0 changelog. A newer patch in this release line is available - we recommend running 2.2.8 for the latest fixes and improvements.

[View 2.2.8 release notes](https://surrealdb.com/releases/2.2#release-2-2-8)

Our newsletter

Get tutorials, AI agent recipes, webinars, and early product updates in your inbox every two weeks

Newer release line

2.3

Updated Sep 19, 2025

[Newer release line](https://surrealdb.com/releases/2.3)

Older release line

2.1

Updated Sep 11, 2025

[Older release line](https://surrealdb.com/releases/2.1)

[All releases](https://surrealdb.com/releases)

GET STARTED

## Start building with SurrealDB

The unified data layer for AI. Simplify your stack. Reduce complexity. Build faster.

![Samsung](https://surrealdb.com/assets/static/4c58b81e7b3c9466.C_Hv0eml.svg)![NVIDIA](https://surrealdb.com/assets/static/nvidia.DaIEuMil.svg)![Apple](https://surrealdb.com/assets/static/f7dc2519e0d212bc.Cn8MYAK7.svg)![Verizon](https://surrealdb.com/assets/static/18b99996c689000f.B5PQ-nI9.svg)![Tencent](https://surrealdb.com/assets/static/401d8346058682c8.DqM87mst.svg)

SOC 2 Type 2

GDPR

Cyber Essentials Plus

ISO 27001

[Start free with SurrealDB](https://studio.surrealdb.com/current/instances/deploy) [Learn more](https://surrealdb.com/docs/what-is-surrealdb)

```json
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://surrealdb.com"},{"@type":"ListItem","position":2,"name":"Releases","item":"https://surrealdb.com/releases"},{"@type":"ListItem","position":3,"name":"2.2","item":"https://surrealdb.com/releases/2.2"}]}
```

```json
{"@context":"https://schema.org","@type":"TechArticle","headline":"SurrealDB 2.2 release notes","description":"Bug fix: Fixed Live Queries document issue Security advisories: Unauthorized Data Exposure via LIVE Query Subscriptions","datePublished":"2025-09-11T00:00:00.000Z","dateModified":"2025-09-11T00:00:00.000Z","url":"https://surrealdb.com/releases/2.2","mainEntityOfPage":{"@type":"WebPage","@id":"https://surrealdb.com/releases/2.2"},"author":{"@type":"Organization","name":"SurrealDB","url":"https://surrealdb.com"},"publisher":{"@type":"Organization","name":"SurrealDB","logo":{"@type":"ImageObject","url":"https://surrealdb.com/assets/static/logo.BG7_TG2b.svg"}},"about":{"@type":"SoftwareApplication","name":"SurrealDB","applicationCategory":"DeveloperApplication","operatingSystem":"Linux, macOS, Windows","softwareVersion":"2.2"}}
```

```json
{"@context":"https://schema.org","@type":"Organization","name":"SurrealDB","url":"https://surrealdb.com","logo":"https://surrealdb.com/assets/static/logo.BG7_TG2b.svg","description":"SurrealDB is the unified data layer for AI. A multi-model database for documents, graphs, vectors, and time-series.","foundingDate":"2022","legalName":"SurrealDB Ltd","identifier":{"@type":"PropertyValue","propertyID":"GB-COH","value":"13615201"},"address":{"@type":"PostalAddress","streetAddress":"3rd Floor, 1 Ashley Road","addressLocality":"Altrincham","addressRegion":"Cheshire","postalCode":"WA14 2DT","addressCountry":"GB"},"contactPoint":[{"@type":"ContactPoint","contactType":"customer support","email":"support@surrealdb.com","url":"https://surrealdb.com/contact","availableLanguage":"English"},{"@type":"ContactPoint","contactType":"sales","email":"info@surrealdb.com","url":"https://surrealdb.com/contact","availableLanguage":"English"},{"@type":"ContactPoint","contactType":"security","email":"security@surrealdb.com","url":"https://surrealdb.com/.well-known/security.txt","availableLanguage":"English"},{"@type":"ContactPoint","contactType":"legal","email":"legal@surrealdb.com","url":"https://surrealdb.com/legal","availableLanguage":"English"}],"hasCertification":[{"@type":"Certification","name":"SOC 2 Type 2"},{"@type":"Certification","name":"GDPR"},{"@type":"Certification","name":"Cyber Essentials Plus"},{"@type":"Certification","name":"ISO 27001"}],"owns":[{"@type":"SoftwareApplication","name":"SurrealDB","url":"https://surrealdb.com/surrealdb"},{"@type":"SoftwareApplication","name":"Agent Memory","url":"https://surrealdb.com/agent-memory"}],"knowsAbout":["multi-model databases","document databases","graph databases","vector search","time-series databases","SurrealQL","Agent Memory","real-time databases","embedded databases","context layer","graph ontology","distributed database","knowledge graphs","distributed transaction protocols","highly-scalable databases"],"sameAs":["https://www.wikidata.org/wiki/Q124316308","https://github.com/surrealdb/surrealdb","https://twitter.com/surrealdb","https://www.youtube.com/@surrealdb","https://www.linkedin.com/company/surrealdb","https://discord.gg/surrealdb","https://www.reddit.com/r/surrealdb","https://www.instagram.com/surrealdb","https://medium.com/surrealdb","https://dev.to/surrealdb"]}
```
