Skip to content

Conversation

@skaslev
Copy link
Collaborator

@skaslev skaslev commented Oct 27, 2025

The PR is follow up on #14200 where we prefer storing iterators on the stack
rather than allocating on the heap. Here we continue this for iterators over
hashes, lists, sets and kvstores.

Quicklist's iterators are still using heap allocation and will be addressed
soon. The reason is that NULL is perfectly valid quicklist iterator value and
handling this would be better reviewed separately from the mostly mechanical
changes here.

@sundb
Copy link
Collaborator

sundb commented Oct 28, 2025

The version has been frozen. waiting for the release?

@skaslev skaslev force-pushed the ht-set-iter-no-alloc branch from 6be9280 to 3de0686 Compare October 29, 2025 06:19
@sundb sundb added this to Redis 8.4 Oct 29, 2025
@sundb sundb moved this from Todo to In Review in Redis 8.4 Oct 30, 2025
@skaslev skaslev force-pushed the ht-set-iter-no-alloc branch from 3de0686 to 7c18666 Compare October 31, 2025 13:17
@skaslev skaslev force-pushed the ht-set-iter-no-alloc branch from 7c18666 to 3f8a7e1 Compare November 1, 2025 15:01
@skaslev skaslev changed the title Avoid allocation when iterating over hashes, lists and sets Avoid allocation when iterating over hashes, kvstores, lists and sets Nov 1, 2025
@skaslev skaslev changed the title Avoid allocation when iterating over hashes, kvstores, lists and sets Avoid allocation when iterating over hashes, lists, sets and kvstores Nov 1, 2025
@sundb sundb added this to Redis 8.6 Nov 6, 2025
@sundb sundb removed this from Redis 8.4 Nov 6, 2025
@github-project-automation github-project-automation bot moved this to Todo in Redis 8.6 Nov 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants