starrocks icon indicating copy to clipboard operation
starrocks copied to clipboard

[inverted index] after create inverted index on base table, select view has errors

Open chengqianli-git opened this issue 1 year ago • 0 comments

Steps to reproduce the behavior (Required)

  1. CREATE TABLE '...'
  2. INSERT INTO '....'
  3. SELECT '....'4.
create database debug;
use debug;
CREATE TABLE duplicate_table_demo_datatype_not_replicated_all_varchar ( AAA DATETIME not NULL COMMENT "", BBB VARCHAR(200) not NULL COMMENT "", CCC VARCHAR(200) not NULL COMMENT "", DDD VARCHAR(20000) COMMENT "", EEE LARGEINT  NULL COMMENT "", FFF DECIMAL(20,10) NULL COMMENT "", GGG VARCHAR(200)  NULL COMMENT "", HHH FLOAT  NULL COMMENT "", III BOOLEAN  NULL COMMENT "", KKK CHAR(20)   NULL COMMENT "", LLL STRING   NULL COMMENT "", MMM VARCHAR(20)   NULL COMMENT "", NNN BINARY  NULL COMMENT "", OOO TINYINT NULL COMMENT "", PPP DATETIME NULL COMMENT "", QQQ ARRAY<INT> NULL COMMENT "", RRR JSON NULL COMMENT "", SSS MAP<INT,INT> NULL COMMENT "", TTT STRUCT<a INT, b INT> NULL COMMENT "", INDEX init_bitmap_index (KKK) USING BITMAP ) duplicate KEY(AAA, BBB, CCC) PARTITION BY RANGE (`AAA`) ( START ("1970-01-01") END ("2030-01-01") EVERY (INTERVAL 30 YEAR) ) DISTRIBUTED BY HASH(`AAA`, `BBB`) BUCKETS 3 ORDER BY(`AAA`,`BBB`,`CCC`,`DDD`) PROPERTIES ( "replicated_storage"="false", "replication_num" = "3", "storage_format" = "v2", "enable_persistent_index" = "true", "bloom_filter_columns" = "MMM", "unique_constraints" = "GGG" );
create view test_view (AAA, DDD) as select AAA, max(DDD) from duplicate_table_demo_datatype_not_replicated_all_varchar group by AAA;
CREATE INDEX idx ON duplicate_table_demo_datatype_not_replicated_all_varchar(DDD) USING GIN('parser' = 'english');
SHOW ALTER TABLE COLUMN where tablename='duplicate_table_demo_datatype_not_replicated_all_varchar' ORDER BY JobId DESC LIMIT 1;

insert into debug.duplicate_table_demo_datatype_not_replicated_all_varchar values ('1974-08-20 23:13:25', 'xIjfSXnegdnZiZGQMaxo', 'syHwIOMctmDLDGCibEun', 'hIbilUEGdLbCnaZASCVL', 6299, 25361.52081, 'QuTsacRyxiIkBjEmjhNu', -11.4812925061712, True, 'QcLRdQJMhtPXojJUjkUd', 'yUeFlbzomaPDwKeaHylx', 'WqQyGEjEYpvLzfBXYUCB', '', 8, '2015-11-03 16:31:47', [2621, 5950, 13171], '{"job": "Administrator, Civil Service", "company": "Morris-Anderson", "ssn": "823-67-5554", "residence": "59688 Hanna Shoal Apt. 586\nWest Waynefort, CO 69652", "current_location": ["-64.3777465", "21.079566"], "blood_group": "O-", "website": ["http://young.biz/", "https://cobb-bell.com/", "http://www.roberts-garrison.com/", "http://jones.com/"], "username": "howardarcher", "name": "John Mccullough", "sex": "M", "address": "1361 Susan Mountain\nJasonbury, MI 85084", "mail": "[email protected]", "birthdate": "1928-06-25"}', null, null);
select * from test_view where DDD match 'msrjabmbwkxmjggulkiy';

mysql> desc test_view;
+-------+----------+------+-------+---------+-------+
| Field | Type     | Null | Key   | Default | Extra |
+-------+----------+------+-------+---------+-------+
| AAA   | datetime | NO   | false | NULL    |       |
| DDD   | varchar  | YES  | false | NULL    |       |
+-------+----------+------+-------+---------+-------+
2 rows in set (0.00 sec)

Expected behavior (Required)

success

Real behavior (Required)

mysql> select * from test_view where DDD match 'msrjabmbwkxmjggulkiy';
ERROR 1064 (HY000): Match can only used as a pushdown predicate on column with GIN in a single query.
mysql> select * from test_view where DDD match 'msrjabmbwkxmjggulkiy';
ERROR 1064 (HY000): null key in entry: null=20: max
2024-04-28 18:08:58.058+08:00 WARN (starrocks-mysql-nio-pool-42|1015) [StmtExecutor.execute():704] execute Exception, sql select * from test_view where DDD match 'msrjabmbwkxmjggulkiy'
java.lang.NullPointerException: null key in entry: null=20: max
        at com.google.common.collect.CollectPreconditions.checkEntryNotNull(CollectPreconditions.java:31) ~[spark-dpp-1.0.0.jar:?]
        at com.google.common.collect.SingletonImmutableBiMap.<init>(SingletonImmutableBiMap.java:43) ~[spark-dpp-1.0.0.jar:?]
        at com.google.common.collect.ImmutableBiMap.of(ImmutableBiMap.java:83) ~[spark-dpp-1.0.0.jar:?]
        at com.google.common.collect.ImmutableMap.of(ImmutableMap.java:130) ~[spark-dpp-1.0.0.jar:?]
        at com.google.common.collect.ImmutableMap.copyOf(ImmutableMap.java:709) ~[spark-dpp-1.0.0.jar:?]
        at com.google.common.collect.ImmutableMap.copyOf(ImmutableMap.java:688) ~[spark-dpp-1.0.0.jar:?]
        at com.starrocks.sql.optimizer.rule.tree.lowcardinality.DecodeRewriter.insertDecodeNode(DecodeRewriter.java:133) ~[starrocks-fe.jar:?]
        at com.starrocks.sql.optimizer.rule.tree.lowcardinality.DecodeRewriter.rewrite(DecodeRewriter.java:83) ~[starrocks-fe.jar:?]
        at com.starrocks.sql.optimizer.rule.tree.lowcardinality.LowCardinalityRewriteRule.rewrite(LowCardinalityRewriteRule.java:39) ~[starrocks-fe.jar:?]
        at com.starrocks.sql.optimizer.Optimizer.physicalRuleRewrite(Optimizer.java:791) ~[starrocks-fe.jar:?]
        at com.starrocks.sql.optimizer.Optimizer.optimizeByCost(Optimizer.java:272) ~[starrocks-fe.jar:?]
        at com.starrocks.sql.optimizer.Optimizer.optimize(Optimizer.java:176) ~[starrocks-fe.jar:?]
        at com.starrocks.sql.StatementPlanner.createQueryPlanWithReTry(StatementPlanner.java:263) ~[starrocks-fe.jar:?]
        at com.starrocks.sql.StatementPlanner.plan(StatementPlanner.java:129) ~[starrocks-fe.jar:?]
        at com.starrocks.sql.StatementPlanner.plan(StatementPlanner.java:90) ~[starrocks-fe.jar:?]
        at com.starrocks.qe.StmtExecutor.execute(StmtExecutor.java:516) ~[starrocks-fe.jar:?]
        at com.starrocks.qe.ConnectProcessor.handleQuery(ConnectProcessor.java:421) ~[starrocks-fe.jar:?]
        at com.starrocks.qe.ConnectProcessor.dispatch(ConnectProcessor.java:617) ~[starrocks-fe.jar:?]
        at com.starrocks.qe.ConnectProcessor.processOnce(ConnectProcessor.java:921) ~[starrocks-fe.jar:?]
        at com.starrocks.mysql.nio.ReadListener.lambda$handleEvent$0(ReadListener.java:69) ~[starrocks-fe.jar:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?]
        at java.lang.Thread.run(Thread.java:829) ~[?:?]

StarRocks version (Required)

  • You can get the StarRocks version by executing SQL select current_version() branch-3.3-355456a

chengqianli-git avatar Apr 28 '24 10:04 chengqianli-git