Skip to content

Commit 64d97f7

Browse files
committed
address_review_comments
1 parent a057ceb commit 64d97f7

2 files changed

Lines changed: 12 additions & 12 deletions

File tree

spark/src/main/scala/org/apache/comet/serde/strings.scala

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,10 @@ import org.apache.comet.serde.QueryPlanSerde.{createBinaryExpr, exprToProtoInter
3333

3434
object CometStringRepeat extends CometExpressionSerde[StringRepeat] {
3535

36+
override def getIncompatibleReasons(): Seq[String] = Seq(
37+
"A negative argument for the number of times to repeat throws an exception" +
38+
" instead of returning an empty string as Spark does")
39+
3640
override def convert(
3741
expr: StringRepeat,
3842
inputs: Seq[Attribute],

spark/src/main/scala/org/apache/comet/serde/unixtime.scala

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -63,18 +63,14 @@ object CometFromUnixTime extends CometExpressionSerde[FromUnixTime] {
6363
val formatExpr = exprToProtoInternal(Literal("%Y-%m-%d %H:%M:%S"), inputs, binding)
6464
val timeZone = exprToProtoInternal(Literal(expr.timeZoneId.orNull), inputs, binding)
6565

66-
expr.format match {
67-
case Literal(fmt, _) if fmt != null && fmt.toString != TimestampFormatter.defaultPattern =>
68-
withInfo(expr, "Datetime pattern format is unsupported")
69-
None
70-
case _ if secExpr.isDefined && formatExpr.isDefined =>
71-
val timestampExpr =
72-
scalarFunctionExprToProto("from_unixtime", Seq(secExpr, timeZone): _*)
73-
val optExpr = scalarFunctionExprToProto("to_char", Seq(timestampExpr, formatExpr): _*)
74-
optExprWithInfo(optExpr, expr, expr.sec, expr.format)
75-
case _ =>
76-
withInfo(expr, expr.sec, expr.format)
77-
None
66+
if (secExpr.isDefined && formatExpr.isDefined) {
67+
val timestampExpr =
68+
scalarFunctionExprToProto("from_unixtime", Seq(secExpr, timeZone): _*)
69+
val optExpr = scalarFunctionExprToProto("to_char", Seq(timestampExpr, formatExpr): _*)
70+
optExprWithInfo(optExpr, expr, expr.sec, expr.format)
71+
} else {
72+
withInfo(expr, expr.sec, expr.format)
73+
None
7874
}
7975
}
8076
}

0 commit comments

Comments
 (0)