[ASTERIXDB-2488][COMP] Support aggregate window functions - user model changes: yes - storage format changes: no - interface changes: no
Details: - Implement aggregate window functions: agg_func() OVER (frame_var AS)? (PARTITION BY ... ORDER BY ... frame_spec) - Where agg_func is a SQL/SQL++ aggregate function - Fix percent_rank() to always return 0 for the first tuple - Fix ntile() to handle NULL argument - Log query after each rewrite rule in SqlppQueryRewriter - Implement toString() for ADayTimeDuration, fix it for AYearMonthDuration - Add seek() method to RunFileReader
[ASTERIXDB-2412][COMP] ExtractCommonExpressionsRule fix - user model changes: no - storage format changes: no - interface changes: no
Details: ExtractCommonExpressionsRule should not be applied to JOIN by using Cartesian Product + SELECT since it will add extract overhead. Also, blindly adding SELECT without checking GROUP-BY and other possible OPs in between could cause type inference error.