Skip to content

Avoid boxing ParNew promotion-failure sizes - #1

Open
skrcode wants to merge 1 commit into
Hashim1999164:fix/cache-duration-group-pattern-567from
skrcode:jaipilot/pr-1-QEbHSEmJDv9c
Open

skrcode wants to merge 1 commit into
Hashim1999164:fix/cache-duration-group-pattern-567from
skrcode:jaipilot/pr-1-QEbHSEmJDv9c

Conversation

@skrcode

@skrcode skrcode commented Aug 23, 2026

Copy link
Copy Markdown

This is a one-commit JAIPilot Cloud follow-up on the exact current head of microsoft/gctoolkit#579. It targets the original contributor branch so the change can be folded into that PR.

Change

Replace the temporary ArrayList of boxed Integers with a growable primitive int array, preserving value order and the empty-array result.

Proof

  • Exact parent: 2b427ea, the current Cache duration Pattern in GenerationalHeapParser CMS remark path microsoft/gctoolkit#579 head.
  • Focused tests pin zero, one, and 28 promotion-failure-size blocks and their exact order.
  • The same 3 focused tests and all 124 parser tests passed before and after.
  • A fixed 28-block collection fixture removed 28 boxed Integers plus ArrayList growth; five-trial isolated median moved from 733.82 ms to 537.30 ms over 5,000,000 iterations.
  • The full seven-module reactor passed.

Boundary and disclosure

Regex parsing dominates real log processing, so the end-to-end gain is smaller than the isolated collection fixture. The populated field currently has no downstream reader; this is an internal allocation cleanup. Microsoft CLA handling may require folding or recreating the change under the contributor identity.

JAIPilot Cloud generated and validated the patch in skrcode/gctoolkit#2. I reviewed the exact ancestry, complete two-file diff, proof, and limitations before offering it here.

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