Add filter pushdown API for contains and endsWith
This PR adds filter pushing down api for endsWith (like %x) and contains (like %x%). Before this PR, iceberg only support pushdown startWith filter. Spark parquet supports pushdown endWiths and contains.
This PR is the first part, the next PR will complete the related implementation of spark and fileFormat.
The origin PR is https://github.com/apache/iceberg/pull/9683 , I split it into two PRs and add some UT. Please take a look @amogh-jahagirdar
@amogh-jahagirdar Hi, if you have time, please take a look~
Sorry for the delay @yabola , got busy with some other work, I haven't forgotten about this PR! When my time frees up I'll review this.
@amogh-jahagirdar Hi, please take a look if you have time~
@sujithjay @rdblue could you also take a look since you implements startWith~
Spark on parquet also support endsWith and contains
https://github.com/apache/spark/blob/356830ada6c6ebbf54e7852c37266c32bfa137ea/sql/core/src/main/scala/org/apache/spark/sql/execution/datasources/parquet/ParquetFilters.scala#L816-L844