Frontmatter
| id | 9513 |
| title | Optimize Grid Value Banding (startIndex Support) |
| state | Closed |
| labels | enhancementaiperformancegrid |
| assignees | tobiu |
| createdAt | Mar 18, 2026, 4:03 PM |
| updatedAt | Mar 18, 2026, 4:04 PM |
| githubUrl | https://github.com/neomjs/neo/issues/9513 |
| author | tobiu |
| commentsCount | 0 |
| parentIssue | 9511 |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Mar 18, 2026, 4:04 PM |
Optimization sub-task for #9511 and #9512 to improve
collection.BasecalcValueBandsfor large datasets.Changes:
calcValueBandsnow supports an optionalstartIndex. When passed (e.g. fromsplice), the algorithm retrieves the banding state from the preceding item and only recalculates for the affected subset of the array.items[i]) within the calculation loop to prevent crashes when dealing with sparse arrays or buffered data loading.valueBandsMapis no longer fully cleared unless a full recalculation (startIndex === 0) is requested, reducing GC churn.Verified with existing test suite
test/playwright/unit/data/StoreValueBandingCount.spec.mjs.