You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@asterixdb.apache.org by AsterixDB Code Review <do...@asterix-gerrit.ics.uci.edu> on 2026/10/01 08:53:40 UTC
[M] Change in asterixdb[master]: [ASTERIXDB-3902][TEST] Fix golden plans of vtree-index-only-join
From Hongyu Shi <le...@gmail.com>:
Hongyu Shi has uploaded this change for review. ( https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/21958?usp=email )
Change subject: [ASTERIXDB-3902][TEST] Fix golden plans of vtree-index-only-join
......................................................................
[ASTERIXDB-3902][TEST] Fix golden plans of vtree-index-only-join
- user model changes: no
- storage format changes: no
- interface changes: no
Details:
Fix the golden plans so vtree-index-only-join passes in
SqlppAnalyzedExecutionTest.
Generated-by: Claude Opus 5.5 <no...@anthropic.com>
Change-Id: I6c59c966377f203abf92dc56adf4f3da70f6e430
---
A asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/vector/vtree-index-only-join/vtree-index-only-join.05.plan
A asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/vector/vtree-index-only-join/vtree-index-only-join.07.plan
2 files changed, 120 insertions(+), 0 deletions(-)
git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb refs/changes/58/21958/1
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/vector/vtree-index-only-join/vtree-index-only-join.05.plan b/asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/vector/vtree-index-only-join/vtree-index-only-join.05.plan
new file mode 100644
index 0000000..3ee38bd
--- /dev/null
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/vector/vtree-index-only-join/vtree-index-only-join.05.plan
@@ -0,0 +1,54 @@
+distribute result [$$56]
+-- DISTRIBUTE_RESULT |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ assign [$$56] <- [{"label": $$67, "year": $$76}] project: [$$56]
+ -- ASSIGN |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ order (ASC, $$76)
+ -- STABLE_SORT [$$76(ASC)] |PARTITIONED|
+ exchange
+ -- RANGE_PARTITION_EXCHANGE [$$76(ASC)] RANGE_MAP:{SPLIT:3} |PARTITIONED|
+ project ([$$67, $$76])
+ -- STREAM_PROJECT |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ join (eq($$74, $$60))
+ -- HYBRID_HASH_JOIN [$$74][$$60] |PARTITIONED|
+ exchange
+ -- HASH_PARTITION_EXCHANGE [$$74] |PARTITIONED|
+ limit 3
+ -- STREAM_LIMIT |UNPARTITIONED|
+ project ([$$74, $$76])
+ -- STREAM_PROJECT |PARTITIONED|
+ exchange
+ -- SORT_MERGE_EXCHANGE [$$75(ASC) ] |PARTITIONED|
+ limit 3
+ -- STREAM_LIMIT |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ order (topK: 3) (ASC, $$75)
+ -- STABLE_SORT [topK: 3] [$$75(ASC)] |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ unnest-map [$$74, $$75, $$76] <- index-search("idx_emb", 8, "Default", "test", "Docs", false, false, true, 5, $$69, $$70, $$71, $$72, $$73)
+ -- VECTOR_SEARCH |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ assign [$$69, $$70, $$71, $$72, $$73] <- [array: [ 0.0, 0.0, 0.0, 0.0 ], 3, "euclidean", 1.0, 1]
+ -- ASSIGN |PARTITIONED|
+ empty-tuple-source
+ -- EMPTY_TUPLE_SOURCE |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ assign [$$67] <- [$$l.getField(1)] project: [$$67, $$60]
+ -- ASSIGN |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ data-scan []<-[$$60, $$l] <- test.Labels
+ -- DATASOURCE_SCAN |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ empty-tuple-source
+ -- EMPTY_TUPLE_SOURCE |PARTITIONED|
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/vector/vtree-index-only-join/vtree-index-only-join.07.plan b/asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/vector/vtree-index-only-join/vtree-index-only-join.07.plan
new file mode 100644
index 0000000..6ac24d6
--- /dev/null
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/vector/vtree-index-only-join/vtree-index-only-join.07.plan
@@ -0,0 +1,66 @@
+distribute result [$$58]
+-- DISTRIBUTE_RESULT |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ assign [$$58] <- [{"label": $$70, "year": $$66, "title": $$67}] project: [$$58]
+ -- ASSIGN |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ order (ASC, $$66)
+ -- STABLE_SORT [$$66(ASC)] |PARTITIONED|
+ exchange
+ -- RANGE_PARTITION_EXCHANGE [$$66(ASC)] RANGE_MAP:{SPLIT:3} |PARTITIONED|
+ project ([$$70, $$66, $$67])
+ -- STREAM_PROJECT |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ join (eq($$61, $$62))
+ -- HYBRID_HASH_JOIN [$$61][$$62] |PARTITIONED|
+ exchange
+ -- HASH_PARTITION_EXCHANGE [$$61] |PARTITIONED|
+ limit 3
+ -- STREAM_LIMIT |UNPARTITIONED|
+ project ([$$66, $$67, $$61])
+ -- STREAM_PROJECT |PARTITIONED|
+ exchange
+ -- SORT_MERGE_EXCHANGE [$$60(ASC) ] |PARTITIONED|
+ limit 3
+ -- STREAM_LIMIT |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ order (topK: 3) (ASC, $$60)
+ -- STABLE_SORT [topK: 3] [$$60(ASC)] |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ assign [$$60, $$67, $$66] <- [euclidean-distance($$d.getField(2), array: [ 0.0, 0.0, 0.0, 0.0 ]), $$d.getField("title"), $$d.getField(1)] project: [$$66, $$67, $$61, $$60]
+ -- ASSIGN |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ unnest-map [$$61, $$d] <- index-search("Docs", 0, "Default", "test", "Docs", false, false, 1, $$78, 1, $$78, true, true, true)
+ -- BTREE_SEARCH |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ order (ASC, $$78)
+ -- STABLE_SORT [$$78(ASC)] |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ unnest-map [$$78] <- index-search("idx_emb", 8, "Default", "test", "Docs", false, false, false, 5, $$73, $$74, $$75, $$76, $$77)
+ -- VECTOR_SEARCH |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ assign [$$73, $$74, $$75, $$76, $$77] <- [array: [ 0.0, 0.0, 0.0, 0.0 ], 3, "euclidean", 1.0, 1]
+ -- ASSIGN |PARTITIONED|
+ empty-tuple-source
+ -- EMPTY_TUPLE_SOURCE |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ assign [$$70] <- [$$l.getField(1)] project: [$$70, $$62]
+ -- ASSIGN |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ data-scan []<-[$$62, $$l] <- test.Labels
+ -- DATASOURCE_SCAN |PARTITIONED|
+ exchange
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ empty-tuple-source
+ -- EMPTY_TUPLE_SOURCE |PARTITIONED|
--
To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/21958?usp=email
To unsubscribe, or for help writing mail filters, visit https://asterix-gerrit.ics.uci.edu/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Change-Id: I6c59c966377f203abf92dc56adf4f3da70f6e430
Gerrit-Change-Number: 21958
Gerrit-PatchSet: 1
Gerrit-Owner: Hongyu Shi <le...@gmail.com>