Garamda commented on code in PR #13511:
URL: https://github.com/apache/datafusion/pull/13511#discussion_r1929539094


##########
datafusion/sqllogictest/test_files/aggregate.slt:
##########
@@ -77,36 +77,38 @@ SELECT approx_distinct(c9) count_c9, 
approx_distinct(cast(c9 as varchar)) count_
 
 # csv_query_approx_percentile_cont_with_weight
 statement error DataFusion error: Error during planning: Error during 
planning: Coercion from \[Utf8, Int8, Float64\] to the signature OneOf(.*) 
failed(.|\n)*
-SELECT approx_percentile_cont_with_weight(c1, c2, 0.95) FROM aggregate_test_100
+SELECT approx_percentile_cont_with_weight(c2, 0.95) WITHIN GROUP (ORDER BY c1) 
FROM aggregate_test_100
 
 statement error DataFusion error: Error during planning: Error during 
planning: Coercion from \[Int16, Utf8, Float64\] to the signature OneOf(.*) 
failed(.|\n)*
-SELECT approx_percentile_cont_with_weight(c3, c1, 0.95) FROM aggregate_test_100
+SELECT approx_percentile_cont_with_weight(c1, 0.95) WITHIN GROUP (ORDER BY c3) 
FROM aggregate_test_100
 
 statement error DataFusion error: Error during planning: Error during 
planning: Coercion from \[Int16, Int8, Utf8\] to the signature OneOf(.*) 
failed(.|\n)*
-SELECT approx_percentile_cont_with_weight(c3, c2, c1) FROM aggregate_test_100
+SELECT approx_percentile_cont_with_weight(c2, c1) WITHIN GROUP (ORDER BY c3) 
FROM aggregate_test_100
 
 # csv_query_approx_percentile_cont_with_histogram_bins
 statement error DataFusion error: External error: This feature is not 
implemented: Tdigest max_size value for 'APPROX_PERCENTILE_CONT' must be UInt > 
0 literal \(got data type Int64\)\.
-SELECT c1, approx_percentile_cont(c3, 0.95, -1000) AS c3_p95 FROM 
aggregate_test_100 GROUP BY 1 ORDER BY 1
+SELECT c1, approx_percentile_cont(0.95, -1000) WITHIN GROUP (ORDER BY c3) AS 
c3_p95 FROM aggregate_test_100 GROUP BY 1 ORDER BY 1
 
 statement error DataFusion error: Error during planning: Error during 
planning: Coercion from \[Int16, Float64, Utf8\] to the signature OneOf(.*) 
failed(.|\n)*
-SELECT approx_percentile_cont(c3, 0.95, c1) FROM aggregate_test_100
+SELECT approx_percentile_cont(0.95, c1) WITHIN GROUP (ORDER BY c3) FROM 
aggregate_test_100
 
 statement error DataFusion error: Error during planning: Error during 
planning: Coercion from \[Int16, Float64, Float64\] to the signature OneOf(.*) 
failed(.|\n)*
-SELECT approx_percentile_cont(c3, 0.95, 111.1) FROM aggregate_test_100
+SELECT approx_percentile_cont(0.95, 111.1) WITHIN GROUP (ORDER BY c3) FROM 
aggregate_test_100
 
 statement error DataFusion error: Error during planning: Error during 
planning: Coercion from \[Float64, Float64, Float64\] to the signature 
OneOf(.*) failed(.|\n)*
-SELECT approx_percentile_cont(c12, 0.95, 111.1) FROM aggregate_test_100
+SELECT approx_percentile_cont(0.95, 111.1) WITHIN GROUP (ORDER BY c12) FROM 
aggregate_test_100
 
 statement error DataFusion error: This feature is not implemented: Percentile 
value for 'APPROX_PERCENTILE_CONT' must be a literal
-SELECT approx_percentile_cont(c12, c12) FROM aggregate_test_100
+SELECT approx_percentile_cont(c12) WITHIN GROUP (ORDER BY c12) FROM 
aggregate_test_100
 
 statement error DataFusion error: This feature is not implemented: Tdigest 
max_size value for 'APPROX_PERCENTILE_CONT' must be a literal
-SELECT approx_percentile_cont(c12, 0.95, c5) FROM aggregate_test_100
+SELECT approx_percentile_cont(0.95, c5) WITHIN GROUP (ORDER BY c12) FROM 
aggregate_test_100
 
 # Not supported over sliding windows
 query error This feature is not implemented: Aggregate can not be used as a 
sliding accumulator because `retract_batch` is not implemented

Review Comment:
   All test cases passed except for this one.
   
   ```
   External error: query is expected to fail with error:
           (regex) This feature is not implemented: Aggregate can not be used 
as a sliding accumulator because `retract_batch` is not implemented
   but got error:
           DataFusion error: Error during planning: Error during planning: 
Coercion from [Float64] to the signature OneOf([Exact([Int8, Float64]), 
Exact([Int8, Float64, Int8]), Exact([Int8, Float64, Int16]), Exact([Int8, 
Float64, Int32]), Exact([Int8, Float64, Int64]), Exact([Int8, Float64, UInt8]), 
Exact([Int8, Float64, UInt16]), Exact([Int8, Float64, UInt32]), Exact([Int8, 
Float64, UInt64]), Exact([Int16, Float64]), Exact([Int16, Float64, Int8]), 
Exact([Int16, Float64, Int16]), Exact([Int16, Float64, Int32]), Exact([Int16, 
Float64, Int64]), Exact([Int16, Float64, UInt8]), Exact([Int16, Float64, 
UInt16]), Exact([Int16, Float64, UInt32]), Exact([Int16, Float64, UInt64]), 
Exact([Int32, Float64]), Exact([Int32, Float64, Int8]), Exact([Int32, Float64, 
Int16]), Exact([Int32, Float64, Int32]), Exact([Int32, Float64, Int64]), 
Exact([Int32, Float64, UInt8]), Exact([Int32, Float64, UInt16]), Exact([Int32, 
Float64, UInt32]), Exact([Int32, Float64, UInt64]), Exact([Int64, Float64]), 
Exact([Int
 64, Float64, Int8]), Exact([Int64, Float64, Int16]), Exact([Int64, Float64, 
Int32]), Exact([Int64, Float64, Int64]), Exact([Int64, Float64, UInt8]), 
Exact([Int64, Float64, UInt16]), Exact([Int64, Float64, UInt32]), Exact([Int64, 
Float64, UInt64]), Exact([UInt8, Float64]), Exact([UInt8, Float64, Int8]), 
Exact([UInt8, Float64, Int16]), Exact([UInt8, Float64, Int32]), Exact([UInt8, 
Float64, Int64]), Exact([UInt8, Float64, UInt8]), Exact([UInt8, Float64, 
UInt16]), Exact([UInt8, Float64, UInt32]), Exact([UInt8, Float64, UInt64]), 
Exact([UInt16, Float64]), Exact([UInt16, Float64, Int8]), Exact([UInt16, 
Float64, Int16]), Exact([UInt16, Float64, Int32]), Exact([UInt16, Float64, 
Int64]), Exact([UInt16, Float64, UInt8]), Exact([UInt16, Float64, UInt16]), 
Exact([UInt16, Float64, UInt32]), Exact([UInt16, Float64, UInt64]), 
Exact([UInt32, Float64]), Exact([UInt32, Float64, Int8]), Exact([UInt32, 
Float64, Int16]), Exact([UInt32, Float64, Int32]), Exact([UInt32, Float64, 
Int64]), Exact([UInt32, Fl
 oat64, UInt8]), Exact([UInt32, Float64, UInt16]), Exact([UInt32, Float64, 
UInt32]), Exact([UInt32, Float64, UInt64]), Exact([UInt64, Float64]), 
Exact([UInt64, Float64, Int8]), Exact([UInt64, Float64, Int16]), Exact([UInt64, 
Float64, Int32]), Exact([UInt64, Float64, Int64]), Exact([UInt64, Float64, 
UInt8]), Exact([UInt64, Float64, UInt16]), Exact([UInt64, Float64, UInt32]), 
Exact([UInt64, Float64, UInt64]), Exact([Float32, Float64]), Exact([Float32, 
Float64, Int8]), Exact([Float32, Float64, Int16]), Exact([Float32, Float64, 
Int32]), Exact([Float32, Float64, Int64]), Exact([Float32, Float64, UInt8]), 
Exact([Float32, Float64, UInt16]), Exact([Float32, Float64, UInt32]), 
Exact([Float32, Float64, UInt64]), Exact([Float64, Float64]), Exact([Float64, 
Float64, Int8]), Exact([Float64, Float64, Int16]), Exact([Float64, Float64, 
Int32]), Exact([Float64, Float64, Int64]), Exact([Float64, Float64, UInt8]), 
Exact([Float64, Float64, UInt16]), Exact([Float64, Float64, UInt32]), 
Exact([Float64, Floa
 t64, UInt64])]) failed. No function matches the given name and argument types 
'approx_percentile_cont(Float64)'. You might need to add explicit type casts.
           Candidate functions:
           approx_percentile_cont(Int8, Float64)
           approx_percentile_cont(Int8, Float64, Int8)
           approx_percentile_cont(Int8, Float64, Int16)
           approx_percentile_cont(Int8, Float64, Int32)
           approx_percentile_cont(Int8, Float64, Int64)
           approx_percentile_cont(Int8, Float64, UInt8)
           approx_percentile_cont(Int8, Float64, UInt16)
           approx_percentile_cont(Int8, Float64, UInt32)
           approx_percentile_cont(Int8, Float64, UInt64)
           approx_percentile_cont(Int16, Float64)
           approx_percentile_cont(Int16, Float64, Int8)
           approx_percentile_cont(Int16, Float64, Int16)
           approx_percentile_cont(Int16, Float64, Int32)
           approx_percentile_cont(Int16, Float64, Int64)
           approx_percentile_cont(Int16, Float64, UInt8)
           approx_percentile_cont(Int16, Float64, UInt16)
           approx_percentile_cont(Int16, Float64, UInt32)
           approx_percentile_cont(Int16, Float64, UInt64)
           approx_percentile_cont(Int32, Float64)
           approx_percentile_cont(Int32, Float64, Int8)
           approx_percentile_cont(Int32, Float64, Int16)
           approx_percentile_cont(Int32, Float64, Int32)
           approx_percentile_cont(Int32, Float64, Int64)
           approx_percentile_cont(Int32, Float64, UInt8)
           approx_percentile_cont(Int32, Float64, UInt16)
           approx_percentile_cont(Int32, Float64, UInt32)
           approx_percentile_cont(Int32, Float64, UInt64)
           approx_percentile_cont(Int64, Float64)
           approx_percentile_cont(Int64, Float64, Int8)
           approx_percentile_cont(Int64, Float64, Int16)
           approx_percentile_cont(Int64, Float64, Int32)
           approx_percentile_cont(Int64, Float64, Int64)
           approx_percentile_cont(Int64, Float64, UInt8)
           approx_percentile_cont(Int64, Float64, UInt16)
           approx_percentile_cont(Int64, Float64, UInt32)
           approx_percentile_cont(Int64, Float64, UInt64)
           approx_percentile_cont(UInt8, Float64)
           approx_percentile_cont(UInt8, Float64, Int8)
           approx_percentile_cont(UInt8, Float64, Int16)
           approx_percentile_cont(UInt8, Float64, Int32)
           approx_percentile_cont(UInt8, Float64, Int64)
           approx_percentile_cont(UInt8, Float64, UInt8)
           approx_percentile_cont(UInt8, Float64, UInt16)
           approx_percentile_cont(UInt8, Float64, UInt32)
           approx_percentile_cont(UInt8, Float64, UInt64)
           approx_percentile_cont(UInt16, Float64)
           approx_percentile_cont(UInt16, Float64, Int8)
           approx_percentile_cont(UInt16, Float64, Int16)
           approx_percentile_cont(UInt16, Float64, Int32)
           approx_percentile_cont(UInt16, Float64, Int64)
           approx_percentile_cont(UInt16, Float64, UInt8)
           approx_percentile_cont(UInt16, Float64, UInt16)
           approx_percentile_cont(UInt16, Float64, UInt32)
           approx_percentile_cont(UInt16, Float64, UInt64)
           approx_percentile_cont(UInt32, Float64)
           approx_percentile_cont(UInt32, Float64, Int8)
           approx_percentile_cont(UInt32, Float64, Int16)
           approx_percentile_cont(UInt32, Float64, Int32)
           approx_percentile_cont(UInt32, Float64, Int64)
           approx_percentile_cont(UInt32, Float64, UInt8)
           approx_percentile_cont(UInt32, Float64, UInt16)
           approx_percentile_cont(UInt32, Float64, UInt32)
           approx_percentile_cont(UInt32, Float64, UInt64)
           approx_percentile_cont(UInt64, Float64)
           approx_percentile_cont(UInt64, Float64, Int8)
           approx_percentile_cont(UInt64, Float64, Int16)
           approx_percentile_cont(UInt64, Float64, Int32)
           approx_percentile_cont(UInt64, Float64, Int64)
           approx_percentile_cont(UInt64, Float64, UInt8)
           approx_percentile_cont(UInt64, Float64, UInt16)
           approx_percentile_cont(UInt64, Float64, UInt32)
           approx_percentile_cont(UInt64, Float64, UInt64)
           approx_percentile_cont(Float32, Float64)
           approx_percentile_cont(Float32, Float64, Int8)
           approx_percentile_cont(Float32, Float64, Int16)
           approx_percentile_cont(Float32, Float64, Int32)
           approx_percentile_cont(Float32, Float64, Int64)
           approx_percentile_cont(Float32, Float64, UInt8)
           approx_percentile_cont(Float32, Float64, UInt16)
           approx_percentile_cont(Float32, Float64, UInt32)
           approx_percentile_cont(Float32, Float64, UInt64)
           approx_percentile_cont(Float64, Float64)
           approx_percentile_cont(Float64, Float64, Int8)
           approx_percentile_cont(Float64, Float64, Int16)
           approx_percentile_cont(Float64, Float64, Int32)
           approx_percentile_cont(Float64, Float64, Int64)
           approx_percentile_cont(Float64, Float64, UInt8)
           approx_percentile_cont(Float64, Float64, UInt16)
           approx_percentile_cont(Float64, Float64, UInt32)
           approx_percentile_cont(Float64, Float64, UInt64)
   [SQL] SELECT approx_percentile_cont(0.5)
   WITHIN GROUP (ORDER BY c3)
   OVER (ROWS BETWEEN 4 PRECEDING AND CURRENT ROW)
   FROM aggregate_test_100
   at test_files/aggregate.slt:108
   ```



-- 
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.

To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org
For additional commands, e-mail: github-h...@datafusion.apache.org

Reply via email to