englefly commented on code in PR #65805:
URL: https://github.com/apache/doris/pull/65805#discussion_r3643101175
##########
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/AccessPathPlanCollector.java:
##########
@@ -401,7 +403,7 @@ static List<CollectAccessPathResult>
normalizeDataSkippingOnlyAccessPaths(
List<CollectAccessPathResult> normalizedAccessPaths = new
ArrayList<>();
for (CollectAccessPathResult accessPath : accessPaths) {
List<String> path = accessPath.getPath();
- if (isDataSkippingOnlyAccessPath(path) && path.size() > 1) {
+ if (path.size() > 1 && accessPath.getType() ==
ColumnAccessPathType.META) {
Review Comment:
element_at(s, 'city') is null
这里要处理两类情况
1. s.city 是nullable, 输出两条 path: {s.null, s.city.null}
2. s.city 是 非nullable, 输出1条 path: {s.null}
对 TFV和 FileScan 经过
org.apache.doris.nereids.rules.rewrite.AccessPathPlanCollector.normalizeDataSkippingOnlyAccessPaths
会去掉null suffix
于是对TVF和FileScan
1. s.city 是nullable, 输出两条 path: {s.null, s.city.null}, 经过normalize, 输出 {s,
s.city} ->s 全量读,性能下降
2. s.city 是 非nullable, 输出1条 path: {s.null}, 经过normalize, 输出 {s} -> s 全量读,
性能下降
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]