[ASTERIXDB-3016][RT] Fix failure in hash groupby
authorDmitry Lychagin <dmitry.lychagin@couchbase.com>
Thu, 17 Feb 2022 00:47:08 +0000 (16:47 -0800)
committerAli Alsuliman <ali.al.solaiman@gmail.com>
Thu, 17 Feb 2022 17:41:03 +0000 (17:41 +0000)
commit3d79c9f39392d6e2e5127b716788e4335014606b
tree231c2fa06bbaf58fa5fe124ea42a3edd50c03ddf
parent0cd0e731afdbc86178b1e7954b8587c82b07f486
[ASTERIXDB-3016][RT] Fix failure in hash groupby

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
- Modify hash group by to force garbage collection on the
  hash table if a tuple could not be inserted into it
- Make hash group by clean up its run files in case
  of an error

Change-Id: I7a133fa1d0555ebbcb7a9e3cb7445757716c9a2a
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/15325
Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>
Reviewed-by: Till Westmann <till@couchbase.com>
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/query-ASTERIXDB-3016/query-ASTERIXDB-3016.1.ddl.sqlpp [new file with mode: 0644]
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/query-ASTERIXDB-3016/query-ASTERIXDB-3016.2.update.sqlpp [new file with mode: 0644]
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/query-ASTERIXDB-3016/query-ASTERIXDB-3016.3.query.sqlpp [new file with mode: 0644]
asterixdb/asterix-app/src/test/resources/runtimets/results/group-by/query-ASTERIXDB-3016/query-ASTERIXDB-3016.3.adm [new file with mode: 0644]
asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/group/HashSpillableTableFactory.java
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/group/external/ExternalGroupWriteOperatorNodePushable.java
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/structures/ISerializableTable.java