Moving RedisJSON to a new codebase written in Rust

Dear RedisJSON community members,

We at Redis Labs have been working for a while on some exciting improvements to RedisJSON, which we’d like to share!

First of all, we migrated the codebase from C to Rust. This allows all of us to benefit from one of Rust’s central feature: safe code. Memory management is now verified by the compiler, to avoid those ubiquitous security vulnerabilities you’ve all heard about, such as buffer overflows and remote code execution attacks. In addition, the move to Rust allows us to work on developing new features at a higher velocity than before.

The new codebase already brings some new features:

  • Support for the de-facto standard JSONPath. While the original RedisJSON supported a query syntax quite similar to JSONPath, it was still a bit different. This release includes full RedisJSON support, along with backward compatibility with the old query syntax.

Future work in progress:

  • We have started working on support for RediSearch integration. While not complete yet, the initial support exists in the codebase and can be tested by those who like bleeding edge technology.

The code is available in the usual place:

https://github.com/RedisJSON/RedisJSON

We’d love to hear your thoughts, and feel free to submit pull requests!

The RedisJSON team: Guy Korland, Pieter Cailliau, Gavrie Philipson.

4 Likes

This is great news. Can’t wait to use the new JSONPath improvements.

2 Likes

This is really good news. There has been some internal grumbling around the differences in the past and this will remove those quirks and differences. Nice work.

1 Like

Thanks! It’s great to hear from you, and we’re hard at work on the next releases.