I posted this because I'm interested to hear from anyone using it - how has it worked out for you?

I note it's written in C++ which is a bit of a surprise - I'd expected Rust or Golang.

Interesting as well is is AGPL - licensing is always contentious:

https://github.com/scylladb/scylla/blob/master/LICENSE.AGPL

If you are building a database engine that strongly prioritizes performance, and Scylla does position itself that way, then C++ is the only practical choice today for many people, depending on the details. It isn't that C++ is great, though modern versions are pretty nice, but that it wins by default.

Garbage collected languages like Golang and high-performance database kernels are incompatible because the GC interferes with core design elements of high-performance database kernels. In addition to a significant loss of performance, it introduces operational edge cases you don't have to deal with in non-GC languages.

Rust has an issue unique to Rust in the specific case of high-performance database kernels. The internals of high-performance databases are full of structures, behaviors, and safety semantics that Rust's safety checking infrastructure is not designed to reason about. Consequently, to use Rust in a way that produces equivalent performance requires marking most of the address space as "unsafe". And while you could do this, Rust is currently less expressive than modern C++ for this type of code anyway, so it isn't ergonomic either.

C++ is just exceptionally ergonomic for writing high-performance database kernels compared to the alternatives at the moment.

I always love your take even if I don't agree, SpaceCurve was a phenomenal system, one of the most pragmatic, high performance, easy to use MPP database systems I have ever used. We never met btw, was just a user.

But I think you are wrong about Rust not having the right machinery for making high performance dbs. Two examples are Noria and Materialize

https://github.com/mit-pdos/noria

and it its 50k lines, in the immediate codebase, there are 40 uses of unsafe.

In Materialize's 125k of Rust, there are 76 direct uses of unsafe.

https://github.com/MaterializeInc/materialize