| 5 Dec 2025 |
raitobezarius | the recent FUSE passthrough that Darrick Wong sent | 15:36:14 |
aloisw | In reply to @raitobezarius:matrix.org Are you Christian? We need christians to contribute to SQLite Sorry, I fear I don't understand. Wal2 already exists in a separate branch but the author's user name is "dan", not something that would refer to Christian. Also SQLite does not accept external contributions at all I think? | 15:47:37 |
hexa | https://sqlite.org/codeofethics.html | 15:50:16 |
hexa | * I think this refers to various rules here https://sqlite.org/codeofethics.html | 15:50:34 |
hexa |
Prefer nothing more than the love of Christ.
| 15:50:41 |
raitobezarius | i didn't know wal2 existed, funny | 15:51:16 |
aloisw | In reply to @hexa:lossy.network I think this refers to various rules here https://sqlite.org/codeofethics.html what | 16:00:24 |
aloisw | So I guess it's referring to the religion and not the name? While I am in fact Christian in that sense, I do get weird vibes from that document (particularly their introduction), and in any case they do not accept external contributions to begin with. | 16:02:16 |
| adam changed their profile picture. | 16:26:10 |
raitobezarius | yeah this was the joke here | 16:38:28 |
just1602 | But did some of the fork of sqlite like libsql or turso could fix the issue we face with sqlite? | 16:40:42 |
| adam changed their profile picture. | 16:43:41 |
| 👉@crystallinefire:chat.solarpunk.moe changed their display name from EVA-01 to 👉@crystallinefire:chat.solarpunk.moe. | 17:17:17 |
aloisw | I would rather trust SQLite than a VC-backed fork plastering "AI" over their website to stay around. | 17:52:46 |
aloisw | And I think it's helpful to figure out what our actual issues with SQLite are. "The WAL grows too large" is a <10 line fix, but of course I don't know yet if this is the only problem. | 17:54:24 |
aloisw | Update: RESTART checkpoints with 40000 pages tank the speed even more, since checkpoints happen very often due to nix-eval-jobs growing the WAL so fast. | 18:36:17 |
raitobezarius | hah | 18:47:21 |
aloisw | Yeah the WAL just grows so much faster than the database, even with large WAL sizes checkpointing takes quite long. | 19:01:35 |
aloisw | Page size of 512, WAL size of 1 GiB (lower should also work, only increasing the fsync cost) and RESTART checkpointing looks quite nice with the synthetic test case. There are still stalls, but they are like 7 seconds after 2 minutes. | 19:30:36 |
| 6 Dec 2025 |
Jassuko | Hmmm. The database itself should not be very big, right? What is the consistency requirement for it? I.e. do we really need to care if the system crashes mid-build somewhere as long as the final state or such gets committed properly? | 10:50:42 |
Jassuko | So, do we a actually need WAL, or would it better to just use the restore based journaling? Or if the intermediate steps are not that important to keep as we can just run the builds again after a crash, we could just copy the whole database on tempfs and run the restore checkpointed mode on there where latency on additional file operations would be minimal. And after some things or the whole operation is done, only then copy the relevant state to the db store on disk? | 10:53:56 |
K900 | SQLite can only do multiple concurrent readers in WAL mode | 11:28:30 |
522 it/its ⛯ΘΔ | wait, really? i thought WAL provided one writer and multiple readers, as opposed to one writer or multiple readers | 11:41:46 |
522 it/its ⛯ΘΔ | that's what https://sqlite.org/wal.html implies | 11:42:10 |
Martin Häcker | Hey, we had a discussion in the bugtracker about adding nix develop —print-phases which was rejected on the grounds that nixpkgs would need to provide the infra for that. I provided a pull request to nixpkgs to provide that which got favorable reviews, but could perhaps use one more - or someone who dares merge it (as it will trigger a rebuild of everything).
I was hoping there are some people here on the channel wo think this useful and would be willing to help?
| 11:42:41 |
522 it/its ⛯ΘΔ | wal is in general faster though yeah | 11:43:17 |
raitobezarius | In reply to @dont.wanna.tell:matrix.org
Hey, we had a discussion in the bugtracker about adding nix develop —print-phases which was rejected on the grounds that nixpkgs would need to provide the infra for that. I provided a pull request to nixpkgs to provide that which got favorable reviews, but could perhaps use one more - or someone who dares merge it (as it will trigger a rebuild of everything).
I was hoping there are some people here on the channel wo think this useful and would be willing to help?
If all comments are resolved, I will merge it for you :) | 12:10:49 |
aloisw | I expect rollback journal to be disastrously slow with the Lix store database, as it does at least one fsync per commit. You can try out yourself with the use-sqlite-wal setting if you want. | 12:14:13 |
aloisw | We're already running in NORMAL synchronous mode, which sacrifices durability (which is in most cases, including Lix, not a big deal). Turning it off completely can (on most stock filesystems) give you a corrupted database after unclean shutdown which is absolutely not what you want. | 12:16:03 |
aloisw | Yes, this is correct. Rollback journal allows any number of readers but the writer needs exclusive access. | 12:16:40 |