tursodatabase/turso

Incremental computation

Open

#2,350 opened on Jul 30, 2025

View on GitHub
 (0 comments) (2 reactions) (0 assignees)Rust (1,001 forks)github user discovery
enhancementhelp wanted

Repository metrics

Stars
 (19,103 stars)
PR merge metrics
 (PR metrics pending)

Description

I did a proof of concept of using DBSP for incremental view maintenance:

https://github.com/penberg/limbo/tree/incremental

However, we can apply DBSP much more broadly than that. For example, we could do query subscriptions:

conn.observe("SELECT * FROM users WHERE active = 1", |row| {
    let id: i32 = row.get("id").unwrap();
    let name: String = row.get("name").unwrap();
    println!("User {} with id {}", name, id);
});

but also probably triggers.

Although I wrote everything from scratch, we should probably just use the https://crates.io/crates/dbsp crate.

Contributor guide