File tree Expand file tree Collapse file tree 1 file changed +10
-8
lines changed
sql/core/src/main/scala/org/apache/spark/sql/execution/datasources/parquet Expand file tree Collapse file tree 1 file changed +10
-8
lines changed Original file line number Diff line number Diff line change @@ -57,16 +57,18 @@ private[sql] object ParquetFilters {
5757 v : java.lang.String ,
5858 mode : StringFilter .Mode ) extends UserDefinedPredicate [Binary ] with Serializable {
5959
60+ private val compare = mode match {
61+ case StringFilter .STARTS_WITH =>
62+ (x : java.lang.String ) => x.startsWith(v)
63+ case StringFilter .ENDS_WITH =>
64+ (x : java.lang.String ) => x.endsWith(v)
65+ case StringFilter .CONTAINS =>
66+ (x : java.lang.String ) => x.contains(v)
67+ }
68+
6069 override def keep (value : Binary ): Boolean = {
6170 val str = value.toStringUsingUTF8()
62- mode match {
63- case StringFilter .STARTS_WITH =>
64- str.startsWith(v)
65- case StringFilter .ENDS_WITH =>
66- str.endsWith(v)
67- case StringFilter .CONTAINS =>
68- str.contains(v)
69- }
71+ compare(str)
7072 }
7173
7274 override def canDrop (statistics : Statistics [Binary ]): Boolean = false
You can’t perform that action at this time.
0 commit comments