Skip to content

Conversation

@jycor
Copy link
Contributor

@jycor jycor commented Aug 6, 2025

The analyzer rule assignExecIndexes will apply a StripRowNode over any joins within a subquery.
The analyzer rule finalizeUnions recursively calls the analyzer (calling assignExecIndexes), resulting in StripRowNodes getting applied twice.
The double stripping results in rows that are too short and panics.

This PR tells the finalizeUnions selector to skip assignExecIndexes, preventing the nested StripRowNodes.
Also has some small formatting and naming clean up.

fixes: dolthub/dolt#9631

Copy link
Contributor

@fulghum fulghum left a comment

Choose a reason for hiding this comment

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

Looks good!

@jycor jycor merged commit bccff37 into main Aug 6, 2025
8 checks passed
@jycor jycor deleted the james/union branch August 6, 2025 20:13
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.

handler caught panic: runtime error: slice bounds out of range on SELECT...EXCEPT query

3 participants