Skip to content

fix(#992): optimize rt-without-atoms XSL with xsl:key - #1168

Open
ImilB wants to merge 1 commit into
objectionary:masterfrom
ImilB:fix-992
Open

fix(#992): optimize rt-without-atoms XSL with xsl:key #1168
ImilB wants to merge 1 commit into
objectionary:masterfrom
ImilB:fix-992

Conversation

@ImilB

@ImilB ImilB commented Jul 30, 2026

Copy link
Copy Markdown

Closes #992.
Problem

The rt-without-atoms XSL transformation exceeds 100ms threshold on large XMIR files (~128-129ms).
Root Cause

The check not(//o[eo:atom(.)]) scans the entire document when no atom is found.
eo:atom(.) = exists($o/o[@name=$eo:lambda]) performs a child lookup per element.
When the XMIR file has no atoms, every element is visited, making the cost O(n × degree).
Solution

@volodya-lombrozo

Copy link
Copy Markdown
Member

/benchmark

@github-actions

Copy link
Copy Markdown
Contributor

⚠️ The /benchmark run failed. See the failed workflow run for details.

@ImilB

ImilB commented Jul 31, 2026

Copy link
Copy Markdown
Author

@volodya-lombrozo Why is the benchmark not running? Could it be due to a problem not in the benchmark test itself or in the logic changes, but in the GitHub Actions configuration?

@ImilB

ImilB commented Aug 1, 2026

Copy link
Copy Markdown
Author

@volodya-lombrozo Could you please let me know if you can merge my projects today? I really need this to move forward. Thanks in advance!

@volodya-lombrozo

Copy link
Copy Markdown
Member

/benchmark

@github-actions

github-actions Bot commented Aug 2, 2026

Copy link
Copy Markdown
Contributor

⚠️ The /benchmark run failed. See the failed workflow run for details.

@volodya-lombrozo

Copy link
Copy Markdown
Member

@ImilB You need to rebase current branch on master to make benchmarks work

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.

rt-without-atoms XSL transformation performance issue with large XMIR files

2 participants