Skip to content

Conversation

@Mryange
Copy link
Contributor

@Mryange Mryange commented Mar 25, 2024

Proposed changes

20240326 14:56:31.548905 2901802 block.cpp:703] Check failed: d.column->use_count() == 1 (2 vs. 1)  , [col_int_undef_signed, 1], [col_date_undef_signed_not_null, 2], [col_int_undef_signed, 1], [VectorizedFnCall[ifnull](arguments=col_date_undef_signed_not_null, col_date_undef_signed_not_null,return=DateV2), 2]
*** Check failure stack trace: ***
    @     0x5565ba9e58a6  google::LogMessage::SendToLog()
    @     0x5565ba9e22f0  google::LogMessage::Flush()
    @     0x5565ba9e60e9  google::LogMessageFatal::~LogMessageFatal()
    @     0x5565b1242035  doris::vectorized::Block::clear_column_data()
    @     0x5565aae44b41  doris::ExecNode::clear_origin_block()
    @     0x5565aae3fbca  doris::ExecNode::get_next_after_projects()
    @     0x5565b9e6e058  doris::pipeline::StatefulOperator<>::get_block()
    @     0x5565ba5dbbd4  doris::pipeline::PipelineTask::execute()

We should use intermediate_row_desc to clean the origin block because there are differences on the join node.

Further comments

If this is a relatively large or complex change, kick off the discussion at dev@doris.apache.org by explaining why you chose the solution you did and what alternatives you considered, etc...

@Mryange
Copy link
Contributor Author

Mryange commented Mar 25, 2024

run buildall

@github-actions
Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@Mryange
Copy link
Contributor Author

Mryange commented Mar 25, 2024

run buildall

@Mryange
Copy link
Contributor Author

Mryange commented Mar 26, 2024

run p0

@doris-robot
Copy link

TeamCity be ut coverage result:
Function Coverage: 35.27% (8738/24777)
Line Coverage: 27.06% (71562/264503)
Region Coverage: 26.30% (37124/141175)
Branch Coverage: 23.19% (18986/81872)
Coverage Report: http://coverage.selectdb-in.cc/coverage/4924ac1ff2d630b3b4e637a71fb231fc40058b45_4924ac1ff2d630b3b4e637a71fb231fc40058b45/report/index.html

@Mryange Mryange changed the title [fix] [fix](pipeline) fix use error row desc when origin block clear Mar 26, 2024
@Mryange
Copy link
Contributor Author

Mryange commented Mar 26, 2024

run buildall

@github-actions
Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@doris-robot
Copy link

TeamCity be ut coverage result:
Function Coverage: 35.27% (8738/24777)
Line Coverage: 27.05% (71555/264515)
Region Coverage: 26.29% (37115/141193)
Branch Coverage: 23.18% (18979/81874)
Coverage Report: http://coverage.selectdb-in.cc/coverage/ee26304ef83b2a66471f01d77f871dbb2c10264f_ee26304ef83b2a66471f01d77f871dbb2c10264f/report/index.html

@doris-robot
Copy link

TPC-H: Total hot run time: 38039 ms
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/tpch-tools
Tpch sf100 test result on commit ee26304ef83b2a66471f01d77f871dbb2c10264f, data reload: false

------ Round 1 ----------------------------------
q1	17662	4258	4144	4144
q2	2106	169	163	163
q3	10565	1133	1225	1133
q4	10241	810	768	768
q5	7473	3036	2992	2992
q6	205	126	125	125
q7	1067	601	578	578
q8	9344	2021	2011	2011
q9	7208	6636	6613	6613
q10	8421	3456	3586	3456
q11	428	234	220	220
q12	404	204	194	194
q13	17809	2891	2831	2831
q14	236	211	197	197
q15	516	463	450	450
q16	499	377	365	365
q17	948	533	596	533
q18	7106	6535	6495	6495
q19	3167	1424	1474	1424
q20	549	264	239	239
q21	3583	2904	2827	2827
q22	350	281	295	281
Total cold run time: 109887 ms
Total hot run time: 38039 ms

----- Round 2, with runtime_filter_mode=off -----
q1	4142	4067	4155	4067
q2	323	246	240	240
q3	2933	2881	2815	2815
q4	1843	1566	1519	1519
q5	5307	5293	5330	5293
q6	194	114	119	114
q7	2225	1839	1881	1839
q8	3158	3300	3268	3268
q9	8640	8688	8707	8688
q10	3795	3759	3790	3759
q11	535	441	440	440
q12	707	549	507	507
q13	16974	2875	2826	2826
q14	272	243	241	241
q15	489	471	448	448
q16	471	409	411	409
q17	1722	1478	1483	1478
q18	7494	7104	7141	7104
q19	1608	1546	1550	1546
q20	1904	1743	1692	1692
q21	4779	4590	4558	4558
q22	528	450	445	445
Total cold run time: 70043 ms
Total hot run time: 53296 ms

@doris-robot
Copy link

TPC-DS: Total hot run time: 182155 ms
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/tpcds-tools
TPC-DS sf100 test result on commit ee26304ef83b2a66471f01d77f871dbb2c10264f, data reload: false

query1	936	367	360	360
query2	6544	1992	1822	1822
query3	6710	219	205	205
query4	31688	21464	21277	21277
query5	4337	393	385	385
query6	260	184	174	174
query7	4639	303	291	291
query8	229	173	163	163
query9	9568	2375	2343	2343
query10	559	251	274	251
query11	15412	14169	14194	14169
query12	137	97	88	88
query13	1635	428	426	426
query14	10081	7809	7994	7809
query15	262	192	193	192
query16	8229	261	261	261
query17	2004	567	533	533
query18	2091	280	280	280
query19	335	150	153	150
query20	90	85	88	85
query21	208	123	123	123
query22	5116	5043	4848	4848
query23	33642	33021	32817	32817
query24	10802	2865	2871	2865
query25	619	387	390	387
query26	1179	158	161	158
query27	2556	356	351	351
query28	7371	1919	1894	1894
query29	881	685	653	653
query30	312	153	151	151
query31	979	753	725	725
query32	96	57	55	55
query33	773	257	256	256
query34	1059	476	499	476
query35	821	621	604	604
query36	998	899	875	875
query37	128	68	66	66
query38	3514	3419	3427	3419
query39	1470	1475	1564	1475
query40	211	113	110	110
query41	51	48	48	48
query42	104	96	94	94
query43	485	454	447	447
query44	1157	729	726	726
query45	286	263	269	263
query46	1105	707	700	700
query47	1943	1876	1886	1876
query48	436	367	361	361
query49	1109	347	342	342
query50	765	384	384	384
query51	6818	6586	6522	6522
query52	101	90	91	90
query53	346	279	272	272
query54	307	243	253	243
query55	83	78	77	77
query56	246	236	234	234
query57	1208	1159	1153	1153
query58	236	220	211	211
query59	2823	2589	2536	2536
query60	264	244	246	244
query61	116	115	118	115
query62	663	458	458	458
query63	301	275	281	275
query64	5853	4162	4052	4052
query65	3050	3044	3020	3020
query66	885	396	375	375
query67	15553	14951	14766	14766
query68	8965	536	538	536
query69	643	378	390	378
query70	1200	1162	1153	1153
query71	526	283	272	272
query72	6741	2707	2562	2562
query73	1129	322	319	319
query74	8138	6473	6546	6473
query75	3938	2227	2234	2227
query76	5396	906	914	906
query77	678	266	256	256
query78	10816	10124	10175	10124
query79	11004	518	527	518
query80	1995	362	369	362
query81	525	225	212	212
query82	219	87	85	85
query83	250	145	141	141
query84	279	76	80	76
query85	1223	322	311	311
query86	370	300	301	300
query87	3762	3523	3565	3523
query88	5377	2369	2405	2369
query89	473	362	382	362
query90	2014	175	174	174
query91	174	134	142	134
query92	63	50	49	49
query93	6224	507	492	492
query94	1351	184	179	179
query95	438	333	326	326
query96	622	283	280	280
query97	2659	2521	2489	2489
query98	223	220	209	209
query99	1087	902	925	902
Total cold run time: 313277 ms
Total hot run time: 182155 ms

@doris-robot
Copy link

Load test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'

Load test result on commit ee26304ef83b2a66471f01d77f871dbb2c10264f with default session variables
Stream load json:         18 seconds loaded 2358488459 Bytes, about 124 MB/s
Stream load orc:          59 seconds loaded 1101869774 Bytes, about 17 MB/s
Stream load parquet:      31 seconds loaded 861443392 Bytes, about 26 MB/s
Insert into select:       21.7 seconds inserted 10000000 Rows, about 460K ops/s

@github-actions
Copy link
Contributor

PR approved by at least one committer and no changes requested.

@github-actions github-actions bot added the approved Indicates a PR has been approved by one committer. label Mar 26, 2024
@github-actions
Copy link
Contributor

PR approved by anyone and no changes requested.

yiguolei pushed a commit that referenced this pull request Mar 26, 2024
Copy link
Contributor

@HappenLee HappenLee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@Gabriel39 Gabriel39 merged commit ffbe981 into apache:master Mar 28, 2024
Mryange added a commit to Mryange/doris that referenced this pull request Mar 28, 2024
Jibing-Li added a commit that referenced this pull request Mar 29, 2024
* [fix](merge cloud) Fix cloud be set be tag map (#32864)

* [chore] Add gavinchou to collaborators (#32881)

* [chore](show) support statement to show views from table (#32358)

MySQL [test]> show views;
+----------------+
| Tables_in_test |
+----------------+
| t1_view        |
| t2_view        |
+----------------+
2 rows in set (0.00 sec)

MySQL [test]> show views like '%t1%';
+----------------+
| Tables_in_test |
+----------------+
| t1_view        |
+----------------+
1 row in set (0.01 sec)

MySQL [test]> show views where create_time > '2024-03-18';
+----------------+
| Tables_in_test |
+----------------+
| t2_view        |
+----------------+
1 row in set (0.02 sec)

* [Enhancement](ranger) Disable some permission operations when Ranger or LDAP are enabled (#32538)

Disable some permission operations when Ranger or LDAP are enabled.

* [chore](ci) exclude unstable trino_connector case (#32892)

Co-authored-by: stephen <hello-stephen@qq.com>

* [fix](Nereids) NPE when create table with implicit index type (#32893)

* [improvement](mtmv) Support more join types for query rewriting by materialized view (#32685)

This pattern of rewriting is supported for multi-table joins and supported join types is as following:

INNER JOIN
LEFT OUTER JOIN
RIGHT OUTER JOIN
FULL OUTER JOIN
LEFT SEMI JOIN
RIGHT SEMI JOIN
LEFT ANTI JOIN
RIGHT ANTI JOIN

* [Serde](Variant) support arrow serialization for varint type (#32780)

* [fix](multicatalog) fix no data error when read hive table on cosn (#32815)

Currently, when reading a hive on cosn table, doris return empty result, but the table has data.
iceberg on cosn is ok.
The reason is misuse of cosn's file sytem. according to cosn's doc, its fs.cosn.impl should be org.apache.hadoop.fs.CosFileSystem

* [fix](nereids)EliminateGroupByConstant should replace agg's output after removing constant group by keys (#32878)

* [Fix](executor)Fix regression test for test_active_queries/test_backend_active_tasks #32899

* [fix](iceberg) fix iceberg catalog bug and p2 test cases (#32898)

1. Fix iceberg catalog bug

    This PR #30198 change the logic of `IcebergHMSExternalCatalog.java`,
    to get locationUrl by calling hive metastore's `getCatalog()` method.
    But this method only exists in hive 3+. So it will fail if we using hive 2.x.

    I temporary remove this logic, because this logic is only used from iceberg table writing.
    Which is still under development. We will rethink this logic later.

2. Fix test cases

    Some of P2 test cases missed `order_qt`. And because the output format of the floating point
    type is changed, some result in `out` files need to be regenerated.

* [revert](jni) revert part of #32455 (#32904)

* [fix](spill) Avoid releasing resources while spill tasks are executing (#32783)

* [chore](log) print query id before logging profile in be.INFO (#32922)

* [fix](grace-exit) Stop incorrectly of reportwork cause heap use after free #32929

* [improvement](decommission be) decommission check replica num (#32748)

* [fix](arrow-flight) Fix reach limit of connections error (#32911)

Fix Reach limit of connections error
in fe.conf , arrow_flight_token_cache_size is mandatory less than qe_max_connection/2. arrow flight sql is a stateless protocol, connection is usually not actively disconnected, bearer token is evict from the cache will unregister ConnectContext.

Fix ConnectContext.command not be reset to COM_SLEEP in time, this will result in frequent kill connection after query timeout.

Fix bearer token evict log and exception.

TODO: use arrow flight session: https://mail.google.com/mail/u/0/#inbox/FMfcgzGxRdxBLQLTcvvtRpqsvmhrHpdH

* [bugfix](cloud) few variable not initialized (#32868)

../../cloud/src/recycler/meta_checker.cpp
can cause uninitialised memory read.

* [fix](arrow-flight) Fix arrow flight sql compatible with JDK 17 and upgrade arrow 15.0.2 (#32796)

--add-opens=java.base/java.nio=ALL-UNNAMED, see: https://arrow.apache.org/docs/java/install.html#java-compatibility
groovy use flight sql connection to execute query SUM(MAX(c1) OVER (PARTITION BY)) report error: AGGREGATE clause must not contain analytic expressions, but no problem in Java execute it with jdbc::arrow-flight-sql.
groovy not support print arrow array type, throw IndexOutOfBoundsException.
"arrow_flight_sql" not support two phase read
./run-regression-test.sh --run --clean -g arrow_flight_sql

* [fix](spill) SpillStream's writer maybe may not have been finalized (#32931)

* [improvement](spill) Disable DistinctStreamingAgg when spill is enabled (#32932)

* [Improve](inverted_index) update clucene and improve array inverted index writer  (#32436)

* [Performance](exec) replace SipHash in function by XXHash (#32919)

* [feature](agg) add aggregate function sum0 (#32541)

* [improvement](mtmv) Support to get tables in materialized view when collecting table in plan (#32797)

Support to get tables in materialized view when collecting table in plan

table scehma as fllowing:

create materialized view mv1
BUILD IMMEDIATE REFRESH COMPLETE ON MANUAL
DISTRIBUTED BY RANDOM BUCKETS 1 
PROPERTIES ('replication_num' = '1')
 as 
select 
  t1.c1, 
  t3.c2 
from 
  table1 t1 
  inner join table3 t3 on t1.c1 = t3.c2

if get table from the plan as follwoing, we can get [table1, table3, table2], the mv1 is expanded to get base tables;

SELECT 
  mv1.*, 
  uuid() 
FROM 
  mv1 LEFT SEMI 
  JOIN table2 ON mv1.c1 = table2.c1 
WHERE 
  mv1.c1 IN (
    SELECT 
      c1 
    FROM 
      table2
  ) 
  OR mv1.c1 < 10

* [enhance](mtmv)support olap table partition column is null (#32698)

* [enhancement](cloud) add table version to cloud (#32738)

Add table version to cloud.

In Fe:
Get: If Fe is cloud mode, get table version from meta service.
Update: Op drop/replace temp partition, commit transaction.

In meta service:
Add: create Index. init value is 1.
Remove: by recycler.
Update: commit/drop partition rpc, commit txn rpc. Atomic++.

* [fix](cloud) schema change from not null to null (#32913)

1. Use equals instead of == for type comparing
2. null bitmap size is reisze by size of ref column.

* [feature](Nereids): add ColumnPruningPostProcessor. (#32800)

* [case](rowpolicy)fix row policy has been exist (#32880)

* [fix](pipeline) fix use error row desc when origin block clear (#32803)

* [fix](Nereids) support variant column with index when create table (#32948)

* [opt](Nereids) support create table with variant type (#32953)

* [test](insert-overwrite) Add insert overwrite auto detect concurrency cases (#32935)

* [fix](compile) fe cannot compile in idea (#32955)

* [enhancement](plsql) Support select * from routines (#32866)

Support show of plsql procedure using select * from routines.

* [fix](trino-connector) fix `NoClassDefFoundError` of hudi `Utils` class (#32846)

Due to the change of this PR #32455 , the `trino-connector-scanner` package cannot access the `hudi_scanner` package, so the exception NoclassDeffounderror will appear.

We need to write a separate Utils class.

* [exec](column) change some complex column move to noexcept (#32954)

* [Enhancement](data skew) extends show data skew (#32732)

* [chore](test) let suite compatible with Nereids (#32964)

* Support identical column name in different index. (#32792)

* Limit the max string length to 1024 while collecting column stats to control BE memory usage. (#32470)

* [fix](merge-iterator) fix NOT_IMPLEMENTED_ERROR when read next block view (#32961)

* [improvement](executor)Add tag property for workload group #32874

* [fix](auth)unified workload and resource permission logic (#32907)

- `Grant resource` can no longer grant global `usage_priv`
-  `grant resource %` instead of `grant resource *`

before change:
```
grant usage_priv on resource * to f;
show grants for f\G
*************************** 1. row ***************************
      UserIdentity: 'f'@'%'
           Comment: 
          Password: No
             Roles: 
       GlobalPrivs: Usage_priv 
      CatalogPrivs: NULL
     DatabasePrivs: internal.information_schema: Select_priv ; internal.mysql: Select_priv 
        TablePrivs: NULL
          ColPrivs: NULL
     ResourcePrivs: NULL
 CloudClusterPrivs: NULL
WorkloadGroupPrivs: normal: Usage_priv 
```
after change
```
grant usage_priv on resource '%' to f;
show grants for f\G
*************************** 1. row ***************************
      UserIdentity: 'f'@'%'
           Comment: 
          Password: No
             Roles: 
       GlobalPrivs: NULL
      CatalogPrivs: NULL
     DatabasePrivs: internal.information_schema: Select_priv ; internal.mysql: Select_priv 
        TablePrivs: NULL
          ColPrivs: NULL
     ResourcePrivs: %: Usage_priv 
 CloudClusterPrivs: NULL
WorkloadGroupPrivs: normal: Usage_priv 

```

---------

Co-authored-by: yujun <yu.jun.reach@gmail.com>
Co-authored-by: Gavin Chou <gavineaglechou@gmail.com>
Co-authored-by: xy720 <22125576+xy720@users.noreply.github.com>
Co-authored-by: yongjinhou <109586248+yongjinhou@users.noreply.github.com>
Co-authored-by: Dongyang Li <hello_stephen@qq.com>
Co-authored-by: stephen <hello-stephen@qq.com>
Co-authored-by: morrySnow <101034200+morrySnow@users.noreply.github.com>
Co-authored-by: seawinde <149132972+seawinde@users.noreply.github.com>
Co-authored-by: lihangyu <15605149486@163.com>
Co-authored-by: Yulei-Yang <yulei.yang0699@gmail.com>
Co-authored-by: starocean999 <40539150+starocean999@users.noreply.github.com>
Co-authored-by: wangbo <wangbo@apache.org>
Co-authored-by: Mingyu Chen <morningman@163.com>
Co-authored-by: Jerry Hu <mrhhsg@gmail.com>
Co-authored-by: zhiqiang <seuhezhiqiang@163.com>
Co-authored-by: Xinyi Zou <zouxinyi02@gmail.com>
Co-authored-by: Vallish Pai <vallishpai@gmail.com>
Co-authored-by: amory <wangqiannan@selectdb.com>
Co-authored-by: HappenLee <happenlee@hotmail.com>
Co-authored-by: Jensen <czjourney@163.com>
Co-authored-by: zhangdong <493738387@qq.com>
Co-authored-by: Yongqiang YANG <98214048+dataroaring@users.noreply.github.com>
Co-authored-by: jakevin <jakevingoo@gmail.com>
Co-authored-by: Mryange <59914473+Mryange@users.noreply.github.com>
Co-authored-by: zclllyybb <zhaochangle@selectdb.com>
Co-authored-by: Tiewei Fang <43782773+BePPPower@users.noreply.github.com>
Co-authored-by: Xin Liao <liaoxinbit@126.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by one committer. reviewed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants