AngersZhuuuu commented on a change in pull request #31402:
URL: https://github.com/apache/spark/pull/31402#discussion_r567526579



##########
File path: 
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/windowExpressions.scala
##########
@@ -511,14 +511,17 @@ case class Lag(
 
 abstract class AggregateWindowFunction extends DeclarativeAggregate with 
WindowFunction {
   self: Product =>
-  override val frame: WindowFrame = SpecifiedWindowFrame(RowFrame, 
UnboundedPreceding, CurrentRow)
   override def dataType: DataType = IntegerType
   override def nullable: Boolean = true
   override lazy val mergeExpressions =
     throw QueryExecutionErrors.mergeUnsupportedByWindowFunctionError
 }
 
-abstract class RowNumberLike extends AggregateWindowFunction {
+abstract class SpecifiedFrameAggregateWindowFunction extends 
AggregateWindowFunction {
+  override val frame: WindowFrame = SpecifiedWindowFrame(RowFrame, 
UnboundedPreceding, CurrentRow)
+}
+
+abstract class RowNumberLike extends SpecifiedFrameAggregateWindowFunction {

Review comment:
       > Why we can still use `UnboundedPreceding` for row number-like window 
funcs?
   
   Since I found that some row number like function will change behavior when 
directly remove default frame in AggregateWindowFunction,  So I didi this. I 
need to check more about the behavior between Spark SQL and PostgresSQL




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to