moor icon indicating copy to clipboard operation
moor copied to clipboard

A rewrite of the classic LambdaMOO server; but in Rust and on a modern tech stack

Results 78 moor issues
Sort by recently updated
recently updated
newest added

should be way more efficient for the most common case of fixed\-size tuples\. https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/db/src/rdb/paging/tuple_box.rs#L15 ```rust // this program. If not, see . // // TODO: add fixed-size slotted page impl...

todo

Likewise at insert, support splitting slots\. https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/db/src/rdb/paging/slotted_page.rs#L379 ```rust let mut header = self.header_mut(); header.as_mut().sub_used(slot_size); // TODO: join adjacent free tuple slots. // Likewise at insert, support splitting slots. let is_empty...

todo

portion\. https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/db/src/rdb/paging/slotted_page.rs#L365 ```rust } fn remove_slot(&self, slot_id: SlotId) -> Result { // TODO: slots at start of content-length can be removed by shrinking the content-length // portion. let mut index_entry...

todo

/ could live in the page header maybe https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/db/src/rdb/paging/page_storage.rs#L71 ```rust /// Each page is a fixed size. /// Uses io_uring to do the writes async. Reads are synchronous /// ///...

todo

/ the durability guarantees are, at least approximately, correct\. https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/db/src/rdb/paging/page_storage.rs#L68 ```rust /// Each page is a fixed size. /// Uses io_uring to do the writes async. Reads are synchronous ///...

todo

https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/db/src/rdb/paging/page_storage.rs#L67 ```rust /// Each page is a fixed size. /// Uses io_uring to do the writes async. Reads are synchronous /// /// TODO: deleted pages are not destroyed, they are...

todo

/ page id is re\-used, the old data could be read\. https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/db/src/rdb/paging/page_storage.rs#L65 ```rust /// Each page is a fixed size. /// Uses io_uring to do the writes async. Reads are...

todo

https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/db/src/rdb/paging/page_storage.rs#L40 ```rust /// The size of the submission queue for the io_uring, in requests. /// We currently do not have any way to handle backpressure, so we will not be...

todo

A battery of tests is going to be needed on this, to verify the ACIDity\. https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/db/src/rdb/paging/page_storage.rs#L15 ```rust // this program. If not, see . // // TODO: Robustness testing and...

todo

transaction, so we need some kind of signal from above that they have changed\. https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/db/src/rdb/paging/cold_storage.rs#L193 ```rust // Where we stick all the page mutations we're going to write out. let...

todo