Quantcast
Channel: Ayende @ Rahien
Browsing all 166 articles
Browse latest View live
↧

Partial writes, IO_Uring and safety

In my previous post, I discussed how Linux will silently truncate a big write (> 2 GB) for you. That is expected by the interface of write(). The problem is that this behavior also applies when you...

View Article


Image may be NSFW.
Clik here to view.

RavenDB 7.1: Next-Gen Pagers

Even though RavenDB 7.0 isn’t quite out of the gate yet (expect the release very soon), I want to start talking about the RavenDB 7.1 release. This release is going to represent the biggest change in...

View Article


RavenDB 7.1: Write modes

In the previous post, I talked about a massive amount of effort (2+ months of work) and about 25,000 lines of code changes. The only purpose of this task was to remove two locks from the system. During...

View Article

RavenDB 7.1: Reclaiming disk space

After describing in detail the major refactoring we did for how RavenDB (via Voron, its storage engine) has gone through, there is one question remaining. What’s the point? The code is a lot simpler,...

View Article

Image may be NSFW.
Clik here to view.

RavenDB 7.1: Shared Journals

I wrote before about a surprising benchmark that we ran to discover the limitations of modern I/O systems. Modern disks such as NVMe have impressive capacity and amazing performance for everyday usage....

View Article


Image may be NSFW.
Clik here to view.

On the role of design documents

When we build a new feature in RavenDB, we either have at least some idea about what we want to build or we are doing something that is pure speculation. In either case, we will usually spend only a...

View Article
Browsing all 166 articles
Browse latest View live