Skip to content

[C++] Support SimplifyWithGuarantee for is_in expressions #43187

@larry98

Description

@larry98

Describe the enhancement requested

We'd like to use parquet predicate pushdown on is_in expressions, but this currently isn't supported in SimplifyWithGuarantee. We implemented a proof of concept where we sort and deduplicate the is_in expression's value set, then have SimplifyWithGuarantee binary search on the inequality bound and slice the value set accordingly. This works well, but I'm not sure what the correct interface for enabling this code path should be. Our current approach adds a new field to SetLookupOptions which allows the user to declare whether the value set is pre-sorted and deduplicated.

Any thoughts? I'd be happy to put up a PR if we agree on an interface.

Component(s)

C++

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions