Skip to content

perf(grid): compile LIKE/ILIKE RegExp once per filter, not per row #877

Closed

Description

@ZhuchkaTriplesix

Summary

grid_filter_engine builds _likeToRegExp(...) inside the per-row evaluation for LIKE / NOT LIKE / ILIKE / NOT ILIKE. A 5000-row scan recompiles the same pattern 5000 times (AST depth × rows). Filter bar is already debounced 150ms; the scan itself is still O(R × regex compile).

Scope

  • Compile the LIKE regex at parse / bind time and reuse it in the evaluator.
  • Tests: LIKE %foo% still matches; case sensitivity for ILIKE unchanged.

Activity

  1. added
    performanceTheme parser epic label: performance
    data-gridInteractive data grid, cell editor, filtering, groupings
    on Sep 20, 2026
  2. added a commit that references this issue on Sep 25, 2026
  3. ZhuchkaTriplesix commented on Sep 27, 2026

    @ZhuchkaTriplesix
    MemberAuthor

    Resolved by #968 (already merged into dev; not auto-closed since this repo's default branch is main and PRs merge into dev).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

data-gridInteractive data grid, cell editor, filtering, groupingsperformanceTheme parser epic label: performance

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions