Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
add evolving to all apis
  • Loading branch information
stefankandic committed Jul 1, 2024
commit 92845559d001eccc92c0885a41faba5c47efa106
Original file line number Diff line number Diff line change
Expand Up @@ -385,6 +385,7 @@ object AlwaysFalse extends AlwaysFalse {
/**
* Base class for collation aware string filters.
*/
@Evolving
abstract class CollatedFilter() extends Filter {

/** The corresponding non-collation aware filter. */
Expand All @@ -396,60 +397,70 @@ abstract class CollatedFilter() extends Filter {
}

/** Collation aware equivalent of [[EqualTo]]. */
@Evolving
case class CollatedEqualTo(attribute: String, value: Any, dataType: DataType)
extends CollatedFilter {
override def correspondingFilter: Filter = EqualTo(attribute, value)
}

/** Collation aware equivalent of [[EqualNullSafe]]. */
@Evolving
case class CollatedEqualNullSafe(attribute: String, value: Any, dataType: DataType)
extends CollatedFilter {
override def correspondingFilter: Filter = EqualNullSafe(attribute, value)
}

/** Collation aware equivalent of [[GreaterThan]]. */
@Evolving
case class CollatedGreaterThan(attribute: String, value: Any, dataType: DataType)
extends CollatedFilter {
override def correspondingFilter: Filter = GreaterThan(attribute, value)
}

/** Collation aware equivalent of [[GreaterThanOrEqual]]. */
@Evolving
case class CollatedGreaterThanOrEqual(attribute: String, value: Any, dataType: DataType)
extends CollatedFilter {
override def correspondingFilter: Filter = GreaterThanOrEqual(attribute, value)
}

/** Collation aware equivalent of [[LessThan]]. */
@Evolving
case class CollatedLessThan(attribute: String, value: Any, dataType: DataType)
extends CollatedFilter {
override def correspondingFilter: Filter = LessThan(attribute, value)
}

/** Collation aware equivalent of [[LessThanOrEqual]]. */
@Evolving
case class CollatedLessThanOrEqual(attribute: String, value: Any, dataType: DataType)
extends CollatedFilter {
override def correspondingFilter: Filter = LessThanOrEqual(attribute, value)
}

/** Collation aware equivalent of [[In]]. */
@Evolving
case class CollatedIn(attribute: String, values: Array[Any], dataType: DataType)
extends CollatedFilter {
override def correspondingFilter: Filter = In(attribute, values)
}

/** Collation aware equivalent of [[StringStartsWith]]. */
@Evolving
case class CollatedStringStartsWith(attribute: String, value: String, dataType: DataType)
extends CollatedFilter {
override def correspondingFilter: Filter = StringStartsWith(attribute, value)
}

/** Collation aware equivalent of [[StringEndsWith]]. */
@Evolving
case class CollatedStringEndsWith(attribute: String, value: String, dataType: DataType)
extends CollatedFilter {
override def correspondingFilter: Filter = StringEndsWith(attribute, value)
}

/** Collation aware equivalent of [[StringContains]]. */
@Evolving
case class CollatedStringContains(attribute: String, value: String, dataType: DataType)
extends CollatedFilter {
override def correspondingFilter: Filter = StringContains(attribute, value)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ abstract class CollatedFilterPushDownToParquetSuite extends QueryTest
expectedRowCount = 2)
}

test("mix or and and") {
test("mix OR and AND") {
testPushDown(
filterString = s"$collatedCol = 'aaa' AND ($nonCollatedCol = 'aaa' OR $collatedCol = 'aaa')",
expectedPushedFilters = Seq(IsNotNull(collatedCol)),
Expand Down Expand Up @@ -221,7 +221,7 @@ abstract class CollatedFilterPushDownToParquetSuite extends QueryTest
}
}

class V1CollatedFilterPushDownToParquetSuite extends CollatedFilterPushDownToParquetSuite {
class CollatedFilterPushDownToParquetV1Suite extends CollatedFilterPushDownToParquetSuite {
override protected def sparkConf: SparkConf =
super
.sparkConf
Expand Down Expand Up @@ -249,7 +249,7 @@ class V1CollatedFilterPushDownToParquetSuite extends CollatedFilterPushDownToPar
}
}

class V2CollatedFilterPushDownToParquetSuite extends CollatedFilterPushDownToParquetSuite {
class CollatedFilterPushDownToParquetV2Suite extends CollatedFilterPushDownToParquetSuite {
override protected def sparkConf: SparkConf =
super
.sparkConf
Expand Down