Piotr Sarna

Results 123 comments of Piotr Sarna

Testing the change automatically will get more complex (as expected), because page 1 of the database contains specific metadata that needs to be updated too, e.g. the total number of...

btw: I need to manage to find a time slot to retest this more thoroughly, because I suspect the routines might need to also update the number of pages the...

edit: I think nPage is fine, but I posted a fix: v2: - release page from the pager unconditionally after taking it, as should always be done once you're done...

I wondered if it should be abstracted away to another virtual table, since it doesn't technically need to touch disk, like other io_methods, but managing free pages is tightly bounded...

On the other hand, it starts to look like a layering violation - page freelist is a property of a pager; I'll experiment with the best place to put such...

The actual implementation is even deeper, in BTree: https://github.com/libsql/libsql/blob/aafe1d5457936a05bca5d312e2fd25f32afeb20b/src/btree.c#L6244 https://github.com/libsql/libsql/blob/aafe1d5457936a05bca5d312e2fd25f32afeb20b/src/btree.c#L6566 @losfair to clarify, you're interested in being able to override the existing hardcoded freelist management, which uses offsets 32 and...

Alright, then I'll take a stab at providing a way for virtualizing the freelist management and send it for peer review as a pull request once done. > > It's...

self-note: the implementation would also need to be very careful to override various sanity checks and assumptions, like this one: https://github.com/libsql/libsql/blob/aafe1d5457936a05bca5d312e2fd25f32afeb20b/src/btree.c#L10731 after a custom implementation is allowed, any assumption about...

Got it, makes perfect sense. I'll continue working on it and ping you once I have something workable.

To be precise, the writes are not stored in memory only (it might have been true in 2015 during that talk perhaps?). There exists a .wal file where writes are...