---
title: "Release 1.4 | SurrealDB"
description: "Bug fixes: Fix problems with if in identifiers after remove and define statements. Fix $value being NONE for DELETE events. Fix CBOR headers. Fix wrong count…"
url: https://surrealdb.com/releases/1.4
---

Back to top

[Version 1.4.2](https://surrealdb.com/releases/1.4#release-1-4-2)

[Version 1.4.0](https://surrealdb.com/releases/1.4#release-1-4-0)

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

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

1.4

# Release 1.4

2 patch releases · Latest 1.4.2 on Apr 20, 2024

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

Bug fixes: Fix problems with if in identifiers after remove and define statements. Fix $value being NONE for DELETE events. Fix CBOR headers. Fix wrong count…

## 1.4.2

Released on Apr 20, 2024

Bug fixes:

- Fix problems with if in identifiers after remove and define statements.
- Fix $value being NONE for DELETE events.
- Fix CBOR headers.
- Fix wrong count when using COUNT with a subquery.
- Fix IN operator should be recognised by the query planner.
- Fix response content-type on /rpc endpoint.
- Fix problems with if in identifiers after remove and define statements.
- Fix $value being NONE for DELETE events.
- Fix CBOR headers
- Fix wrong count when using COUNT with a subquery
- Fix IN operator should be recognised by the query planner
- Fix response content-type on /rpc endpoint

When using the Rust SDK, make sure `surrealdb-core` is up-to-date. If not, you might get back `Revision` errors as a result.

Upgrade or install

## Get SurrealDB v1.4.2

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 v1.4.2.

SurrealDB Cloud

macOS

Linux

Windows

Docker

Already installed

You can upgrade your SurrealDB Cloud instance to v1.4.2 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)

## 1.4.0

Released on Apr 9, 2024

Features:

- Added a warning message about debug builds in CLI start.
- Moved JWKS cache storage to memory.
- Overhauled force implementation.
- Added `DEFINE TABLE ... RELATION`.
- Allowed RPC calls to be made over an HTTP connection, not just WebSocket.
- Allowed the highlighter to only highlight the matching searched token rather than the whole term.
- Added an `INCLUDE ORIGINAL` option to change-feeds.
- Added an `insert` method to the Rust SDK to allow bulk inserts.

Bug fixes:

- Fixed export generating unparsable code with the new parser.
- Eliminated a potential panic in MsgPack format implementation.
- Fixed `string::is::longitude` RegEx.
- Improved CBOR decoding.
- Fixed relation type parsing.
- Fixed handling of empty array on index.
- Allowed legacy headers in CORS.
- Allowed `surreal upgrade` to detect when upgrading to the same version and return early.
- Fixed certain environment variables to allow configuration at runtime.
- Reduced the byte size of datetime and uuid types using CBOR format.
- Fixed `array::group` in a group by query.

Performance improvements:

- Improved query aggregation handling.

### Bulk insert support in the Rust SDK

This was one of the frequently requested features. While this was already possible using the `query` method, this release adds an `insert` method that makes it more convenient.

```rust
db.insert(Resource::from("person"))
    .content(vec![
        User {
            id: thing("person:tobie")?,
            name: "Tobie",
            settings: Settings {
                active: true,
                marketing: false,
            },
        },
        User {
            id: thing("person:jaime")?,
            name: "Jaime",
            settings: Settings {
                active: true,
                marketing: true,
            },
        },
    ])
    .await?;
```

Newer patch available

## Upgrade to 1.4.2

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

[View 1.4.2 release notes](https://surrealdb.com/releases/1.4#release-1-4-2)

Our newsletter

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

Newer release line

1.5

Updated Nov 12, 2024

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

Older release line

1.3

Updated Mar 15, 2024

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

[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":"1.4","item":"https://surrealdb.com/releases/1.4"}]}
```

```json
{"@context":"https://schema.org","@type":"TechArticle","headline":"SurrealDB 1.4 release notes","description":"Bug fixes: Fix problems with if in identifiers after remove and define statements. Fix $value being NONE for DELETE events. Fix CBOR headers. Fix wrong count…","datePublished":"2024-04-20T00:00:00.000Z","dateModified":"2024-04-20T00:00:00.000Z","url":"https://surrealdb.com/releases/1.4","mainEntityOfPage":{"@type":"WebPage","@id":"https://surrealdb.com/releases/1.4"},"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":"1.4"}}
```

```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"]}
```
