Skip to content

Creation order enumeration and other changes#159

Draft
parched wants to merge 4 commits into
Apollo3zehn:devfrom
parched:creation-order
Draft

Creation order enumeration and other changes#159
parched wants to merge 4 commits into
Apollo3zehn:devfrom
parched:creation-order

Conversation

@parched

@parched parched commented Jun 2, 2026

Copy link
Copy Markdown

Hi @Apollo3zehn in our tool we need to iterate lazily through children in creation order. I tasked AI with implementing this and the results (with some tidy up by myself) are in this PR.

It appears to be working well for us, but I haven't thoroughly tested it yet.

Let me know if you're interested in some, or all, of these commits and I'll tidy it up a bit more (if needed).

parched added 4 commits June 3, 2026 08:34
Enumerate child subtrees before separator records so B-tree v2 records are yielded in sorted order for internal nodes.

This keeps dense name-index iteration correct today and provides the traversal behavior needed for creation-order index iteration.
Return native group children in link creation order when the file tracks that order, covering both compact and dense group storage.

Add efficient child counting without dereferencing children and cover the behavior with dense and compact group tests.
Stream dense link and attribute B-tree records instead of materializing
the full record set before reading heap messages. Avoid per-node record
list allocations during B-tree traversal, and cache the huge-object
B-tree header so huge fractal heap objects can be found with targeted
lookup instead of full enumeration.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant