This is an automated email from the ASF dual-hosted git repository.
mblow pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git
commit 08d960ec27b96feac67380774c2e249192d6a2a1
Merge: 69b31add73 3f91981236
Author: Ian Maxon <ia...@maxons.email>
AuthorDate: Tue Oct 28 15:39:54 2025 -0700
Merge branch trinity into phoenix
* [ASTERIXDB-3658][RT]Remove operator descriptions from profile (MB-68975)
Ext-ref: MB-68975
Change-Id: I716c7c40531261eb3b719118b967d45df312a90b
.../src/test/resources/runtimets/profiled.xml | 19 +++++++++++++-
.../long-description.1.query.sqlpp | 29 ++++++++++++++++++++++
.../long-description/long-description.1.adm | 0
.../results/profile/plansleep/sleep.3.regexjson | 12 ++++-----
.../meta/AlgebricksMetaOperatorDescriptor.java | 12 ++++-----
.../api/dataflow/ProfiledOperatorNodePushable.java | 5 ++--
6 files changed, 62 insertions(+), 15 deletions(-)
diff --cc asterixdb/asterix-app/src/test/resources/runtimets/profiled.xml
index 2efc64f627,75fe49734b..15c52dc9d4
--- a/asterixdb/asterix-app/src/test/resources/runtimets/profiled.xml
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/profiled.xml
@@@ -58,13 -50,22 +58,30 @@@
<output-dir compare="Text">non-unary-subplan</output-dir>
</compilation-unit>
</test-case>
+ <test-case FilePath="profile">
+ <compilation-unit name="subplan">
+ <parameter name="profile" value="timings" type="string"/>
+ <parameter name="optimized-logical-plan" value="true" type="string"/>
+ <parameter name="plan-format" value="json" type="string"/>
+ <output-dir compare="Text">subplan</output-dir>
+ </compilation-unit>
+ </test-case>
+ <test-case FilePath="profile">
+ <compilation-unit name="long-description">
+ <output-dir compare="Text">long-description</output-dir>
+ </compilation-unit>
+ </test-case>
+ <test-case FilePath="profile">
+ <compilation-unit name="long-description">
+ <parameter name="profile" value="counts" type="string"/>
+ <output-dir compare="Text">long-description</output-dir>
+ </compilation-unit>
+ </test-case>
+ <test-case FilePath="profile">
+ <compilation-unit name="long-description">
+ <parameter name="profile" value="timings" type="string"/>
+ <output-dir compare="Text">long-description</output-dir>
+ </compilation-unit>
+ </test-case>
</test-group>
--</test-suite>
++</test-suite>
diff --cc asterixdb/asterix-app/src/test/resources/runtimets/results/profile/plansleep/sleep.3.regexjson
index 28562e7110,0000000000..d6b31fa52f
mode 100644,000000..100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/results/profile/plansleep/sleep.3.regexjson
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/profile/plansleep/sleep.3.regexjson
@@@ -1,564 -1,0 +1,564 @@@
+{
+ "optimizedLogicalPlan": {
+ "operator": "distribute-result",
+ "expressions": [
+ "$$48"
+ ],
+ "operatorId": "1.1",
+ "runtime-id": "R{.+}",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}",
+ "physical-operator": "DISTRIBUTE_RESULT",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "exchange",
+ "operatorId": "1.2",
+ "runtime-id": "R{.+}",
+ "physical-operator": "ONE_TO_ONE_EXCHANGE",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "project",
+ "variables": [
+ "$$48"
+ ],
+ "operatorId": "1.3",
+ "runtime-id": "R{.+}",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}",
+ "min-cardinality": 3,
+ "max-cardinality": 3,
+ "total-cardinality": 3,
+ "min-tuple-size": 39,
+ "max-tuple-size": 44,
+ "avg-tuple-size": 41.666666666666664,
+ "frame-count": 1,
+ "avg-tuples-per-frame": 3.0,
+ "tuple-bytes": "125 bytes",
+ "physical-operator": "STREAM_PROJECT",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "exchange",
+ "operatorId": "1.4",
+ "runtime-id": "R{.+}",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}",
+ "min-cardinality": "R{[0-9.]+}",
+ "max-cardinality": "R{[0-9.]+}",
+ "total-cardinality": "R{[0-9.]+}",
+ "physical-operator": "SORT_MERGE_EXCHANGE [$$49(ASC) ]",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "order",
+ "order-by-list": [
+ {
+ "order": "ASC",
+ "expression": "$$49"
+ }
+ ],
+ "operatorId": "1.5",
+ "runtime-id": "R{.+}",
+ "activity-stats": [
+ {
- "name": "Sort (Run Generation)",
++ "name": "R{.+}",
+ "id": "ANID:0",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}"
+ },
+ {
- "name": "Sort (Run Merge)",
++ "name": "R{.+}",
+ "id": "ANID:1",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}",
+ "min-cardinality": 3,
+ "max-cardinality": 3,
+ "total-cardinality": 3,
+ "min-tuple-size": 53,
+ "max-tuple-size": 63,
+ "avg-tuple-size": 58.333333333333336,
+ "frame-count": 1,
+ "avg-tuples-per-frame": 3.0,
+ "tuple-bytes": "175 bytes"
+ }
+ ],
+ "physical-operator": "STABLE_SORT [$$49(ASC)]",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "exchange",
+ "operatorId": "1.6",
+ "runtime-id": "R{.+}",
+ "physical-operator": "ONE_TO_ONE_EXCHANGE",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "assign",
+ "variables": [
+ "$$49"
+ ],
+ "expressions": [
+ "sleep($$city, 1700)"
+ ],
+ "project-variables": [
+ "$$48",
+ "$$49"
+ ],
+ "operatorId": "1.7",
+ "runtime-id": "R{.+}",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}",
+ "min-cardinality": 3,
+ "max-cardinality": 3,
+ "total-cardinality": 3,
+ "min-tuple-size": 53,
+ "max-tuple-size": 63,
+ "avg-tuple-size": 58.333333333333336,
+ "frame-count": 1,
+ "avg-tuples-per-frame": 3.0,
+ "tuple-bytes": "175 bytes",
+ "physical-operator": "ASSIGN",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "assign",
+ "variables": [
+ "$$48"
+ ],
+ "expressions": [
+ "{\"customers\": $$52, \"city\": $$city}"
+ ],
+ "project-variables": [
+ "$$city",
+ "$$48"
+ ],
+ "operatorId": "1.8",
+ "runtime-id": "R{.+}",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}",
+ "min-cardinality": 3,
+ "max-cardinality": 3,
+ "total-cardinality": 3,
+ "min-tuple-size": 53,
+ "max-tuple-size": 63,
+ "avg-tuple-size": 58.333333333333336,
+ "frame-count": 1,
+ "avg-tuples-per-frame": 3.0,
+ "tuple-bytes": "175 bytes",
+ "physical-operator": "ASSIGN",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "exchange",
+ "operatorId": "1.9",
+ "runtime-id": "R{.+}",
+ "physical-operator": "ONE_TO_ONE_EXCHANGE",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "group-by",
+ "group-by-list": [
+ {
+ "variable": "$$city",
+ "expression": "$$56"
+ }
+ ],
+ "subplan": [
+ {
+ "operator": "aggregate",
+ "variables": [
+ "$$52"
+ ],
+ "expressions": [
+ "agg-sql-sum($$55)"
+ ],
+ "operatorId": "1.9.1",
+ "physical-operator": "AGGREGATE",
+ "execution-mode": "LOCAL",
+ "inputs": [
+ {
+ "operator": "nested-tuple-source",
+ "operatorId": "1.9.2",
+ "physical-operator": "NESTED_TUPLE_SOURCE",
+ "execution-mode": "LOCAL"
+ }
+ ]
+ }
+ ],
+ "operatorId": "1.10",
+ "runtime-id": "R{.+}",
+ "activity-stats": [
+ {
- "name": "Sort (Run Generation)",
++ "name": "R{.+}",
+ "id": "ANID:0",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}"
+ },
+ {
- "name": "Sort (Run Merge)",
++ "name": "R{.+}",
+ "id": "ANID:1",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}",
+ "min-cardinality": 3,
+ "max-cardinality": 3,
+ "total-cardinality": 3,
+ "min-tuple-size": 27,
+ "max-tuple-size": 32,
+ "avg-tuple-size": 29.666666666666668,
+ "frame-count": 1,
+ "avg-tuples-per-frame": 3.0,
+ "tuple-bytes": "89 bytes"
+ }
+ ],
+ "physical-operator": "SORT_GROUP_BY[$$56]",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "exchange",
+ "operatorId": "1.11",
+ "runtime-id": "R{.+}",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}",
+ "min-cardinality": 3,
+ "max-cardinality": 3,
+ "total-cardinality": 3,
+ "physical-operator": "HASH_PARTITION_EXCHANGE [$$56]",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "group-by",
+ "group-by-list": [
+ {
+ "variable": "$$56",
+ "expression": "$$50"
+ }
+ ],
+ "subplan": [
+ {
+ "operator": "aggregate",
+ "variables": [
+ "$$55"
+ ],
+ "expressions": [
+ "agg-sql-count(1)"
+ ],
+ "operatorId": "1.11.1",
+ "physical-operator": "AGGREGATE",
+ "execution-mode": "LOCAL",
+ "inputs": [
+ {
+ "operator": "nested-tuple-source",
+ "operatorId": "1.11.2",
+ "physical-operator": "NESTED_TUPLE_SOURCE",
+ "execution-mode": "LOCAL"
+ }
+ ]
+ }
+ ],
+ "operatorId": "1.12",
+ "runtime-id": "R{.+}",
+ "activity-stats": [
+ {
- "name": "Sort (Run Generation)",
++ "name": "R{.+}",
+ "id": "ANID:0",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}"
+ },
+ {
- "name": "Sort (Run Merge)",
++ "name": "R{.+}",
+ "id": "ANID:1",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}",
+ "min-cardinality": 3,
+ "max-cardinality": 3,
+ "total-cardinality": 3,
+ "min-tuple-size": 27,
+ "max-tuple-size": 32,
+ "avg-tuple-size": 29.666666666666668,
+ "frame-count": 1,
+ "avg-tuples-per-frame": 3.0,
+ "tuple-bytes": "89 bytes"
+ }
+ ],
+ "physical-operator": "SORT_GROUP_BY[$$50]",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "exchange",
+ "operatorId": "1.13",
+ "runtime-id": "R{.+}",
+ "physical-operator": "ONE_TO_ONE_EXCHANGE",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "assign",
+ "variables": [
+ "$$50"
+ ],
+ "expressions": [
+ "$$c.getField(3).getField(2)"
+ ],
+ "project-variables": [
+ "$$50"
+ ],
+ "operatorId": "1.14",
+ "runtime-id": "R{.+}",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}",
+ "min-cardinality": "R{[0-9.]+}",
+ "max-cardinality": "R{[0-9.]+}",
+ "total-cardinality": "R{[0-9.]+}",
+ "min-tuple-size": "R{[0-9.]+}",
+ "max-tuple-size": "R{[0-9.]+}",
+ "avg-tuple-size": "R{[0-9.]+}",
+ "frame-count": "R{[0-9.]+}",
+ "avg-tuples-per-frame": "R{[0-9.]+}",
+ "tuple-bytes": "R{.+}",
+ "physical-operator": "ASSIGN",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "select",
+ "condition": "lt($$c.getField(2), 65)",
+ "operatorId": "1.15",
+ "runtime-id": "R{.+}",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}",
+ "min-cardinality": 5,
+ "max-cardinality": 5,
+ "total-cardinality": 5,
+ "min-tuple-size": 142,
+ "max-tuple-size": 151,
+ "avg-tuple-size": 145.6,
+ "frame-count": 1,
+ "avg-tuples-per-frame": 5.0,
+ "tuple-bytes": "728 bytes",
+ "physical-operator": "STREAM_SELECT",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "project",
+ "variables": [
+ "$$c"
+ ],
+ "operatorId": "1.16",
+ "runtime-id": "R{.+}",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}",
+ "min-cardinality": 10,
+ "max-cardinality": 10,
+ "total-cardinality": 10,
+ "min-tuple-size": 137,
+ "max-tuple-size": 151,
+ "avg-tuple-size": 143.1,
+ "frame-count": 1,
+ "avg-tuples-per-frame": 10.0,
+ "tuple-bytes": "1 KB",
+ "physical-operator": "STREAM_PROJECT",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "exchange",
+ "operatorId": "1.17",
+ "runtime-id": "R{.+}",
+ "physical-operator": "ONE_TO_ONE_EXCHANGE",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "data-scan",
+ "variables": [
+ "$$51",
+ "$$c"
+ ],
+ "data-source": "test.Customers",
+ "operatorId": "1.18",
+ "runtime-id": "R{.+}",
+ "min-time": "R{[0-9.]+}",
+ "max-time": "R{[0-9.]+}",
+ "min-cardinality": 10,
+ "max-cardinality": 10,
+ "total-cardinality": 10,
+ "min-tuple-size": 150,
+ "max-tuple-size": 164,
+ "avg-tuple-size": 156.1,
+ "frame-count": 1,
+ "avg-tuples-per-frame": 10.0,
+ "tuple-bytes": "1 KB",
+ "physical-operator": "DATASOURCE_SCAN",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "exchange",
+ "operatorId": "1.19",
+ "runtime-id": "R{.+}",
+ "physical-operator": "ONE_TO_ONE_EXCHANGE",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ },
+ "inputs": [
+ {
+ "operator": "empty-tuple-source",
+ "operatorId": "1.20",
+ "runtime-id": "R{.+}",
+ "physical-operator": "EMPTY_TUPLE_SOURCE",
+ "execution-mode": "PARTITIONED",
+ "optimizer-estimates": {
+ "cardinality": "R{[0-9.]+}",
+ "doc-size": "R{[0-9.]+}",
+ "op-cost": "R{[0-9.]+}",
+ "total-cost": "R{[0-9.]+}"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+}
diff --cc hyracks-fullstack/algebricks/algebricks-runtime/src/main/java/org/apache/hyracks/algebricks/runtime/operators/meta/AlgebricksMetaOperatorDescriptor.java
index 232121b262,9958e8ba3f..1951f353a3
--- a/hyracks-fullstack/algebricks/algebricks-runtime/src/main/java/org/apache/hyracks/algebricks/runtime/operators/meta/AlgebricksMetaOperatorDescriptor.java
+++ b/hyracks-fullstack/algebricks/algebricks-runtime/src/main/java/org/apache/hyracks/algebricks/runtime/operators/meta/AlgebricksMetaOperatorDescriptor.java
@@@ -25,9 -24,9 +25,10 @@@ import java.util.Collections
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+ import java.util.UUID;
import org.apache.hyracks.algebricks.runtime.base.AlgebricksPipeline;
+import org.apache.hyracks.algebricks.runtime.base.IProfiledPushRuntime;
import org.apache.hyracks.algebricks.runtime.base.IPushRuntimeFactory;
import org.apache.hyracks.api.comm.IFrameWriter;
import org.apache.hyracks.api.context.IHyracksTaskContext;