Skip to content

fix: crash caused by uninitialized discrete vector ptrs on Windows#580

Open
LINxiansheng wants to merge 2 commits intomasterfrom
issue/2026041400115407624
Open

fix: crash caused by uninitialized discrete vector ptrs on Windows#580
LINxiansheng wants to merge 2 commits intomasterfrom
issue/2026041400115407624

Conversation

@LINxiansheng
Copy link
Copy Markdown
Member

Task Description

When ObExpr::init_vector is called for the VEC_DISCRETE format, it clears the null bitmap but leaves the ptrs and lens arrays uninitialized. For column-reference expressions where eval_vector is a no-op, downstream operators (such as sort and window function) read these stale pointers. This causes access violations on Windows, where freed memory is reclaimed more aggressively.

Solution Description

The fix zero-initializes the ptrs and lens arrays within init_vector when the format is VEC_DISCRETE.

Passed Regressions

Core test suite.

Upgrade Compatibility

No specific compatibility concerns noted.

Other Information

Release Note

Fixed an issue where uninitialized vector pointer/length arrays could cause access violations in downstream operators on Windows.

@ob-robot ob-robot force-pushed the issue/2026041400115407624 branch from 7ae954f to 2971f5a Compare April 17, 2026 09:55
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