morrySnow opened a new pull request, #68061:
URL: https://github.com/apache/doris/pull/68061
### What problem does this PR solve?
Issue Number: close #64122
Related PR: #66756
Problem Summary:
This backports #66756 to `branch-4.1`.
Sample analysis can produce an invalid combination such as `ndv = 0`,
non-null min/max values, and `null_count != row_count` for an almost-all-NULL
column. On `branch-4.1`, this causes `BaseAnalysisTask` to throw and abort the
entire analyze job.
The backport keeps the analyze job running, converts invalid column
statistics to `ColumnStatistic.UNKNOWN` when read, and publishes UNKNOWN into
the statistics cache to avoid exposing invalid or stale values to the optimizer.
The only cherry-pick conflict was in `BaseAnalysisTaskTest`; it was resolved
using the existing 4.1 test structure while preserving the assertions
introduced by #66756.
### Release note
Treat invalid collected column statistics as UNKNOWN instead of aborting the
analyze job.
### Check List (For Author)
- Test: Unit Test
- `./run-fe-ut.sh --run org.apache.doris.statistics.BaseAnalysisTaskTest`
- Tests run: 3, failures: 0, errors: 0, skipped: 0
- Behavior changed: Yes. Invalid collected column statistics no longer abort
the whole analyze job and are exposed to the optimizer as UNKNOWN.
- Does this need documentation: No
--
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]