MoanasDaddyXu opened a new issue, #65865:
URL: https://github.com/apache/doris/issues/65865

   ### Tracking
   
   - Tracking issue: #65265
   - Internal Jira: [DORIS-27337](http://jira.selectdb-in.cc/browse/DORIS-27337)
   
   ### Search before asking
   
   - [x] I searched the existing issues and found no issue with the same error 
or reproduction.
   
   ### Version
   
   Reproduced while testing #62606 on Doris commit 
`a78b707ed040c3206df99cf43ea3101ab2ba5b90`.
   
   Test environment: non-Cloud deployment with 1 FE and 3 BEs.
   
   ### What's Wrong?
   
   A UNIQUE KEY merge-on-write table can be created with a `NOT NULL HLL` 
column and ROW binlog enabled, but the first valid HLL write fails in the BE 
conversion path:
   
   ```text
   QuantileState column does not support nullable
   ```
   
   The HLL column is declared `NOT NULL`, and the error incorrectly refers to 
QuantileState. The same ROW-binlog configuration can write BITMAP values 
successfully, so the failure is specific to the HLL ROW-binlog write path.
   
   IVM requires ROW binlog, so this blocks IVM scenarios whose base tables 
contain HLL columns before refresh can begin.
   
   ### What You Expected?
   
   If HLL is supported with ROW binlog, a valid `HLL_HASH` value should be 
written successfully and produce consumable row binlog. If this combination is 
intentionally unsupported, Doris should reject it during CREATE/ALTER analysis 
with an accurate error instead of accepting the table and failing every write.
   
   ### How to Reproduce?
   
   ```sql
   DROP DATABASE IF EXISTS ivm_hll_row_binlog_repro;
   CREATE DATABASE ivm_hll_row_binlog_repro;
   USE ivm_hll_row_binlog_repro;
   
   CREATE TABLE hll_row_binlog_base (
     id BIGINT NOT NULL,
     value HLL NOT NULL
   )
   UNIQUE KEY(id)
   DISTRIBUTED BY HASH(id) BUCKETS 1
   PROPERTIES (
     'replication_num'='1',
     'enable_unique_key_merge_on_write'='true',
     'binlog.enable'='true',
     'binlog.format'='ROW',
     'binlog.need_historical_value'='true'
   );
   
   INSERT INTO hll_row_binlog_base VALUES (1, HLL_HASH('one'));
   SELECT COUNT(*) FROM hll_row_binlog_base;
   ```
   
   The CREATE succeeds, the INSERT fails with the error above, and the table 
remains empty.
   
   ### Regression Test Result
   
   - Suite: `ivm_sql_complex_type_matrix`
   - Jenkins: `regression-debug #792`
   - Result: CREATE succeeds and the valid `HLL_HASH` INSERT fails consistently.
   
   The suite currently records this behavior as a negative capability boundary 
and therefore passes; that pass means the failure is reproducible, not that the 
product behavior is correct.
   
   ### Anything Else?
   
   The failure occurs in the BE HLL column conversion path when a nullmap is 
present. The returned error text appears to have been copied from the 
QuantileState converter.
   
   ### Are you willing to submit PR?
   
   - [ ] Yes, I am willing to submit a PR!
   


-- 
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]

Reply via email to