L2-Technology / sensei

A lightning node implementation for everyone
https://l2.technology/sensei
Other
198 stars 39 forks source link

replace database impl/rusqlite with SeaORM #55

Closed johncantrell97 closed 2 years ago

johncantrell97 commented 2 years ago

SeaORM built on top of sqlx provides async and rust-native driver implementations for sqlite, mysql, and postgres. It provides connection pooling and a migration solution.

It will resolve a lot of the pain I've been feeling in the database layer of Sensei and provide some opinions on how to make it both more maintainable, testable, and easier to use across any sql backend.

Feels like a decently large project to undertake but I think it's important to get this right while it's still easy to rip out the existing database code.