Skip to content

Conversation

@romange
Copy link
Collaborator

@romange romange commented Jan 28, 2026

Implements the symmetric cooloff logic for QList tiering that walks from both ends of the list and offloads nodes beyond the threshold. Fixes memory handling bugs in move operator and null pointer check.

Important: everything is done in dry-run - no actual tiering happens.

Changes:

  • Implement symmetric cooloff in CoolOff() for balanced tiering
  • Fix InsertNode() null pointer check when insert_opt is AFTER
  • Fix move operator to properly reset num_offloaded_nodes_
  • Add Stats::operator+= for cross-shard aggregation
  • Add Prometheus metrics for list reads and tiering events
  • Add list_tiering_threshold flag for configuration

Copilot AI review requested due to automatic review settings January 28, 2026 22:41
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.

@augmentcode
Copy link

augmentcode bot commented Jan 28, 2026

🤖 Augment PR Summary

Summary: Improves list tiering support in QList and extends observability around list access/tiering.

Changes:

  • Implements symmetric CoolOff() traversal to offload interior list nodes from both ends beyond the configured depth threshold
  • Fixes move-assignment state handling for num_offloaded_nodes_ and hardens InsertNode() ID calculation when inserting AFTER with a null old_node
  • Adds QList::Stats::operator+= and aggregates per-thread qlist stats into server metrics
  • Exports new Prometheus counters for list reads and tiered list offload/onload events
  • Adds --list_tiering_threshold flag to enable/configure list tiering at promotion time

🤖 Was this summary useful? React with 👍 or 👎

Copy link

@augmentcode augmentcode bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review completed. 2 suggestions posted.

Fix All in Augment

Comment augment review to trigger a new review at any time.

Implements the symmetric cooloff logic for QList tiering that walks
from both ends of the list and offloads nodes beyond the threshold.
Fixes memory handling bugs in move operator and null pointer check.

Changes:
- Implement symmetric cooloff in CoolOff() for balanced tiering
- Fix InsertNode() null pointer check when insert_opt is AFTER
- Fix move operator to properly reset num_offloaded_nodes_
- Add Stats::operator+= for cross-shard aggregation
- Add Prometheus metrics for list reads and tiering events
- Add list_tiering_threshold flag for configuration
- Fix typo: "overlaoding" -> "overloading"

Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
Signed-off-by: Roman Gershman <[email protected]>
Copilot AI review requested due to automatic review settings January 29, 2026 16:29
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.

Co-authored-by: Copilot <[email protected]>
Signed-off-by: Roman Gershman <[email protected]>
Copilot AI review requested due to automatic review settings January 29, 2026 16:44
Co-authored-by: Copilot <[email protected]>
Signed-off-by: Roman Gershman <[email protected]>
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.

@romange romange merged commit 99a1516 into main Jan 30, 2026
10 checks passed
@romange romange deleted the Pr3 branch January 30, 2026 08:25
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.

3 participants