Skip to content

Conversation

@Mryange
Copy link
Contributor

@Mryange Mryange commented Oct 29, 2025

What problem does this PR solve?

before

mysql> select struct(123,"abc",3.14);
+-----------------------------------------+
| struct(123,"abc",3.14)                  |
+-----------------------------------------+
| {"col1":123, "col2":"abc", "col3":3.14} |
+-----------------------------------------+

mysql> select cast(struct(123,"abc",3.14) as string);
+----------------------------------------+
| cast(struct(123,"abc",3.14) as string) |
+----------------------------------------+
| {123, "abc", 3.14}                     |
+----------------------------------------+

now

mysql> select struct(123,"abc",3.14);
+-----------------------------------------+
| struct(123,"abc",3.14)                  |
+-----------------------------------------+
| {"col1":123, "col2":"abc", "col3":3.14} |
+-----------------------------------------+

mysql>  select cast(struct(123,"abc",3.14) as string);
+-----------------------------------------+
| cast(struct(123,"abc",3.14) as string)  |
+-----------------------------------------+
| {"col1":123, "col2":"abc", "col3":3.14} |
+-----------------------------------------+

Release note

None

Check List (For Author)

  • Test

    • Regression test
    • Unit Test
    • Manual test (add detailed scripts or steps below)
    • No need to test or manual test. Explain why:
      • This is a refactor/code format and no logic has been changed.
      • Previous test can cover this change.
      • No code files have been changed.
      • Other reason
  • Behavior changed:

    • No.
    • Yes.
  • Does this need documentation?

    • No.
    • Yes.

Check List (For Reviewer who merge this PR)

  • Confirm the release note
  • Confirm test cases
  • Confirm document
  • Add branch pick label

@Thearas
Copy link
Contributor

Thearas commented Oct 29, 2025

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR.

Please clearly describe your PR:

  1. What problem was fixed (it's best to include specific error reporting information). How it was fixed.
  2. Which behaviors were modified. What was the previous behavior, what is it now, why was it modified, and what possible impacts might there be.
  3. What features were added. Why was this function added?
  4. Which code was refactored and why was this part of the code refactored?
  5. Which functions were optimized and what is the difference before and after the optimization?

@Mryange
Copy link
Contributor Author

Mryange commented Oct 29, 2025

run buildall

@Mryange
Copy link
Contributor Author

Mryange commented Oct 30, 2025

run buildall

@doris-robot
Copy link

TPC-DS: Total hot run time: 189959 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 a1f13fe6fa9cfef5049b46d54cae897aa69bf3a8, data reload: false

query1	1078	438	411	411
query2	6580	1744	1692	1692
query3	6751	223	222	222
query4	26098	23372	23111	23111
query5	4471	632	494	494
query6	347	254	234	234
query7	4656	512	301	301
query8	310	282	251	251
query9	8693	2584	2595	2584
query10	540	356	306	306
query11	15634	15126	14825	14825
query12	197	123	114	114
query13	1707	576	440	440
query14	12088	9205	9383	9205
query15	258	197	180	180
query16	7809	731	572	572
query17	1962	864	716	716
query18	2090	477	360	360
query19	277	207	178	178
query20	144	134	150	134
query21	368	137	118	118
query22	4716	4849	4605	4605
query23	34775	33958	33642	33642
query24	8775	2562	2487	2487
query25	573	551	494	494
query26	1643	290	171	171
query27	2706	534	369	369
query28	4387	2259	2230	2230
query29	1174	621	527	527
query30	295	243	205	205
query31	946	843	736	736
query32	86	72	69	69
query33	589	413	340	340
query34	854	868	519	519
query35	824	831	749	749
query36	962	997	889	889
query37	119	110	86	86
query38	3593	3626	3466	3466
query39	1451	1500	1414	1414
query40	215	124	121	121
query41	63	58	62	58
query42	126	113	113	113
query43	474	506	473	473
query44	1230	740	740	740
query45	180	177	174	174
query46	893	994	624	624
query47	1777	1797	1744	1744
query48	394	422	314	314
query49	777	509	412	412
query50	647	691	405	405
query51	3872	3909	3885	3885
query52	118	106	98	98
query53	238	265	198	198
query54	587	603	531	531
query55	91	81	86	81
query56	321	316	324	316
query57	1196	1196	1144	1144
query58	293	272	269	269
query59	2559	2613	2605	2605
query60	357	348	320	320
query61	171	168	154	154
query62	808	745	681	681
query63	239	197	205	197
query64	4406	1150	835	835
query65	4021	3982	3974	3974
query66	1078	438	349	349
query67	15792	15248	14979	14979
query68	8722	936	589	589
query69	477	328	280	280
query70	1346	1269	1310	1269
query71	508	347	307	307
query72	6027	4924	4901	4901
query73	700	606	364	364
query74	9005	9214	9052	9052
query75	4031	3356	2860	2860
query76	3704	1167	717	717
query77	798	407	315	315
query78	9701	9849	8882	8882
query79	2298	829	588	588
query80	662	565	521	521
query81	482	263	230	230
query82	458	169	131	131
query83	307	272	257	257
query84	303	112	105	105
query85	913	481	425	425
query86	360	311	294	294
query87	3672	3743	3658	3658
query88	3337	2282	2249	2249
query89	398	325	296	296
query90	2017	220	225	220
query91	161	170	135	135
query92	82	70	65	65
query93	1730	954	641	641
query94	694	446	343	343
query95	413	325	321	321
query96	494	586	279	279
query97	2974	2999	2899	2899
query98	241	222	218	218
query99	1447	1415	1308	1308
Total cold run time: 281911 ms
Total hot run time: 189959 ms

@doris-robot
Copy link

ClickBench: Total hot run time: 27.52 s
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/clickbench-tools
ClickBench test result on commit a1f13fe6fa9cfef5049b46d54cae897aa69bf3a8, data reload: false

query1	0.06	0.05	0.05
query2	0.09	0.06	0.05
query3	0.26	0.09	0.08
query4	1.61	0.12	0.12
query5	0.28	0.27	0.25
query6	1.20	0.65	0.65
query7	0.04	0.03	0.03
query8	0.06	0.05	0.04
query9	0.64	0.53	0.52
query10	0.58	0.57	0.57
query11	0.16	0.11	0.11
query12	0.15	0.13	0.12
query13	0.63	0.61	0.61
query14	1.00	1.03	1.00
query15	0.86	0.85	0.85
query16	0.39	0.39	0.39
query17	1.02	1.00	1.01
query18	0.22	0.20	0.20
query19	1.91	1.78	1.82
query20	0.01	0.02	0.01
query21	15.43	0.18	0.12
query22	5.02	0.08	0.05
query23	15.64	0.27	0.11
query24	2.54	1.06	0.42
query25	0.08	0.06	0.06
query26	0.14	0.14	0.14
query27	0.06	0.06	0.06
query28	4.67	1.14	0.94
query29	12.58	3.93	3.29
query30	0.28	0.14	0.11
query31	2.82	0.60	0.37
query32	3.23	0.55	0.47
query33	3.01	3.09	3.04
query34	15.72	5.13	4.52
query35	4.54	4.56	4.60
query36	0.68	0.50	0.48
query37	0.09	0.06	0.06
query38	0.06	0.04	0.04
query39	0.04	0.03	0.02
query40	0.18	0.15	0.14
query41	0.08	0.04	0.03
query42	0.04	0.03	0.03
query43	0.05	0.04	0.03
Total cold run time: 98.15 s
Total hot run time: 27.52 s

@hello-stephen
Copy link
Contributor

BE UT Coverage Report

Increment line coverage 100.00% (2/2) 🎉

Increment coverage report
Complete coverage report

Category Coverage
Function Coverage 52.75% (18067/34250)
Line Coverage 37.99% (163852/431354)
Region Coverage 32.35% (124930/386180)
Branch Coverage 33.72% (54625/161991)

@hello-stephen
Copy link
Contributor

BE Regression && UT Coverage Report

Increment line coverage 100.00% (2/2) 🎉

Increment coverage report
Complete coverage report

Category Coverage
Function Coverage 71.43% (24017/33624)
Line Coverage 57.85% (249750/431693)
Region Coverage 52.84% (206867/391460)
Branch Coverage 54.64% (89050/162976)

@Mryange
Copy link
Contributor Author

Mryange commented Oct 30, 2025

run nonConcurrent

@hello-stephen
Copy link
Contributor

BE Regression && UT Coverage Report

Increment line coverage 100.00% (2/2) 🎉

Increment coverage report
Complete coverage report

Category Coverage
Function Coverage 71.45% (24023/33624)
Line Coverage 57.88% (249847/431693)
Region Coverage 52.89% (207038/391460)
Branch Coverage 54.66% (89088/162976)

@github-actions
Copy link
Contributor

github-actions bot commented Nov 3, 2025

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 Nov 3, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Nov 3, 2025

PR approved by anyone and no changes requested.

Copy link
Member

@mrhhsg mrhhsg left a comment

Choose a reason for hiding this comment

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

lgtm

@yiguolei yiguolei merged commit 192225b into apache:master Nov 3, 2025
26 of 28 checks passed
github-actions bot pushed a commit that referenced this pull request Nov 3, 2025
…t with its output to MySQL. (#57451)

### What problem does this PR solve?

before
```sql
mysql> select struct(123,"abc",3.14);
+-----------------------------------------+
| struct(123,"abc",3.14)                  |
+-----------------------------------------+
| {"col1":123, "col2":"abc", "col3":3.14} |
+-----------------------------------------+

mysql> select cast(struct(123,"abc",3.14) as string);
+----------------------------------------+
| cast(struct(123,"abc",3.14) as string) |
+----------------------------------------+
| {123, "abc", 3.14}                     |
+----------------------------------------+
```
now
```sql
mysql> select struct(123,"abc",3.14);
+-----------------------------------------+
| struct(123,"abc",3.14)                  |
+-----------------------------------------+
| {"col1":123, "col2":"abc", "col3":3.14} |
+-----------------------------------------+

mysql>  select cast(struct(123,"abc",3.14) as string);
+-----------------------------------------+
| cast(struct(123,"abc",3.14) as string)  |
+-----------------------------------------+
| {"col1":123, "col2":"abc", "col3":3.14} |
+-----------------------------------------+
```
### Release note

None

### Check List (For Author)

- Test <!-- At least one of them must be included. -->
    - [ ] Regression test
    - [ ] Unit Test
    - [ ] Manual test (add detailed scripts or steps below)
    - [ ] No need to test or manual test. Explain why:
- [ ] This is a refactor/code format and no logic has been changed.
        - [ ] Previous test can cover this change.
        - [ ] No code files have been changed.
        - [ ] Other reason <!-- Add your reason?  -->

- Behavior changed:
    - [ ] No.
    - [ ] Yes. <!-- Explain the behavior change -->

- Does this need documentation?
    - [ ] No.
- [ ] Yes. <!-- Add document PR link here. eg:
apache/doris-website#1214 -->

### Check List (For Reviewer who merge this PR)

- [ ] Confirm the release note
- [ ] Confirm test cases
- [ ] Confirm document
- [ ] Add branch pick label <!-- Add branch pick label that this PR
should merge into -->
yiguolei pushed a commit that referenced this pull request Nov 4, 2025
…ng consistent with its output to MySQL. #57451 (#57618)

Cherry-picked from #57451

Co-authored-by: Mryange <yanxuecheng@selectdb.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. dev/4.0.1-merged reviewed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants