Skip to content
This repository was archived by the owner on May 24, 2024. It is now read-only.

Commit 1cae605

Browse files
Hans Zellerbhuvnesh2703sambitesh
authored
Fix costing of Bitmap TableScan (#492)
This commit has three fixes to costing of Bitmap TableScan - When we get the colrefs for a Bitmap filter to decide whether it is on a single column, make sure outer refs are not included in it. - When one side of filter condition is an outer ref and we have an equals condition, then the NDV of filter is 1. - For multicolumn Bitmap TableScan, the initcost should be added only once and not for each of the rebinds. Co-authored-by: Bhuvnesh Chaudhary <[email protected]> Co-authored-by: Sambitesh Dash <[email protected]> Co-authored-by: Hans Zeller <[email protected]>
1 parent 80b9608 commit 1cae605

File tree

55 files changed

+1966
-350
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+1966
-350
lines changed

CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ project(gpopt LANGUAGES CXX C)
55

66
set(CMAKE_CXX_STANDARD 98)
77
set(GPORCA_VERSION_MAJOR 3)
8-
set(GPORCA_VERSION_MINOR 49)
8+
set(GPORCA_VERSION_MINOR 50)
99
set(GPORCA_VERSION_PATCH 0)
1010
set(GPORCA_VERSION_STRING "${GPORCA_VERSION_MAJOR}.${GPORCA_VERSION_MINOR}.${GPORCA_VERSION_PATCH}")
1111

data/dxl/minidump/ArrayCmpInList.mdp

+2-2
Original file line numberDiff line numberDiff line change
@@ -1047,7 +1047,7 @@
10471047
<dxl:Plan Id="0" SpaceSize="2">
10481048
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
10491049
<dxl:Properties>
1050-
<dxl:Cost StartupCost="0" TotalCost="431.000475" Rows="1.000000" Width="8"/>
1050+
<dxl:Cost StartupCost="0" TotalCost="431.060475" Rows="1.000000" Width="8"/>
10511051
</dxl:Properties>
10521052
<dxl:ProjList>
10531053
<dxl:ProjElem ColId="0" Alias="a">
@@ -1061,7 +1061,7 @@
10611061
<dxl:SortingColumnList/>
10621062
<dxl:BitmapTableScan>
10631063
<dxl:Properties>
1064-
<dxl:Cost StartupCost="0" TotalCost="431.000440" Rows="1.000000" Width="8"/>
1064+
<dxl:Cost StartupCost="0" TotalCost="431.060440" Rows="1.000000" Width="8"/>
10651065
</dxl:Properties>
10661066
<dxl:ProjList>
10671067
<dxl:ProjElem ColId="0" Alias="a">

data/dxl/minidump/BitmapBoolOp-DeepTree2.mdp

+2-2
Original file line numberDiff line numberDiff line change
@@ -917,7 +917,7 @@ explain select * from t where c1 = 10 or (c2 = '4' and c5> 100);
917917
<dxl:Plan Id="0" SpaceSize="1">
918918
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
919919
<dxl:Properties>
920-
<dxl:Cost StartupCost="0" TotalCost="431.052122" Rows="14.195200" Width="27"/>
920+
<dxl:Cost StartupCost="0" TotalCost="431.112122" Rows="14.195200" Width="27"/>
921921
</dxl:Properties>
922922
<dxl:ProjList>
923923
<dxl:ProjElem ColId="0" Alias="c1">
@@ -946,7 +946,7 @@ explain select * from t where c1 = 10 or (c2 = '4' and c5> 100);
946946
<dxl:SortingColumnList/>
947947
<dxl:BitmapTableScan>
948948
<dxl:Properties>
949-
<dxl:Cost StartupCost="0" TotalCost="431.050402" Rows="14.195200" Width="27"/>
949+
<dxl:Cost StartupCost="0" TotalCost="431.110402" Rows="14.195200" Width="27"/>
950950
</dxl:Properties>
951951
<dxl:ProjList>
952952
<dxl:ProjElem ColId="0" Alias="c1">

data/dxl/minidump/BitmapBoolOp-DeepTree3.mdp

+2-2
Original file line numberDiff line numberDiff line change
@@ -936,7 +936,7 @@ explain select * from t where (c1 = 10 and c5 < 20) or (c2 = '4' and c5> 100);
936936
<dxl:Plan Id="0" SpaceSize="1">
937937
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
938938
<dxl:Properties>
939-
<dxl:Cost StartupCost="0" TotalCost="431.052122" Rows="14.195200" Width="27"/>
939+
<dxl:Cost StartupCost="0" TotalCost="431.112122" Rows="14.195200" Width="27"/>
940940
</dxl:Properties>
941941
<dxl:ProjList>
942942
<dxl:ProjElem ColId="0" Alias="c1">
@@ -965,7 +965,7 @@ explain select * from t where (c1 = 10 and c5 < 20) or (c2 = '4' and c5> 100);
965965
<dxl:SortingColumnList/>
966966
<dxl:BitmapTableScan>
967967
<dxl:Properties>
968-
<dxl:Cost StartupCost="0" TotalCost="431.050402" Rows="14.195200" Width="27"/>
968+
<dxl:Cost StartupCost="0" TotalCost="431.110402" Rows="14.195200" Width="27"/>
969969
</dxl:Properties>
970970
<dxl:ProjList>
971971
<dxl:ProjElem ColId="0" Alias="c1">

data/dxl/minidump/BitmapBoolOr-BoolColumn.mdp

+2-2
Original file line numberDiff line numberDiff line change
@@ -780,7 +780,7 @@ explain select * from t where c2 = 'HEAP' or c4 = 't' or c5 = 'f';
780780
<dxl:Plan Id="0" SpaceSize="1">
781781
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
782782
<dxl:Properties>
783-
<dxl:Cost StartupCost="0" TotalCost="431.202216" Rows="100.000000" Width="23"/>
783+
<dxl:Cost StartupCost="0" TotalCost="431.262216" Rows="100.000000" Width="23"/>
784784
</dxl:Properties>
785785
<dxl:ProjList>
786786
<dxl:ProjElem ColId="0" Alias="c1">
@@ -809,7 +809,7 @@ explain select * from t where c2 = 'HEAP' or c4 = 't' or c5 = 'f';
809809
<dxl:SortingColumnList/>
810810
<dxl:BitmapTableScan>
811811
<dxl:Properties>
812-
<dxl:Cost StartupCost="0" TotalCost="431.189750" Rows="100.000000" Width="23"/>
812+
<dxl:Cost StartupCost="0" TotalCost="431.249750" Rows="100.000000" Width="23"/>
813813
</dxl:Properties>
814814
<dxl:ProjList>
815815
<dxl:ProjElem ColId="0" Alias="c1">

data/dxl/minidump/BitmapIndex-Against-InList.mdp

+2-2
Original file line numberDiff line numberDiff line change
@@ -304,7 +304,7 @@ SELECT * FROM bitmap_test WHERE a in (1, 47);
304304
<dxl:Plan Id="0" SpaceSize="2">
305305
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
306306
<dxl:Properties>
307-
<dxl:Cost StartupCost="0" TotalCost="204.381605" Rows="2.000000" Width="4"/>
307+
<dxl:Cost StartupCost="0" TotalCost="136.254605" Rows="2.000000" Width="4"/>
308308
</dxl:Properties>
309309
<dxl:ProjList>
310310
<dxl:ProjElem ColId="0" Alias="a">
@@ -315,7 +315,7 @@ SELECT * FROM bitmap_test WHERE a in (1, 47);
315315
<dxl:SortingColumnList/>
316316
<dxl:BitmapTableScan>
317317
<dxl:Properties>
318-
<dxl:Cost StartupCost="0" TotalCost="204.381570" Rows="2.000000" Width="4"/>
318+
<dxl:Cost StartupCost="0" TotalCost="136.254570" Rows="2.000000" Width="4"/>
319319
</dxl:Properties>
320320
<dxl:ProjList>
321321
<dxl:ProjElem ColId="0" Alias="a">

data/dxl/minidump/BitmapIndexApply-Basic-SelfJoin.mdp

+4-4
Original file line numberDiff line numberDiff line change
@@ -362,7 +362,7 @@ explain SELECT * FROM t i1, t t2 where t2.c2 = i1.c2;
362362
<dxl:Plan Id="0" SpaceSize="2">
363363
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
364364
<dxl:Properties>
365-
<dxl:Cost StartupCost="0" TotalCost="862.003256" Rows="1.000000" Width="82"/>
365+
<dxl:Cost StartupCost="0" TotalCost="499.130858" Rows="1.000000" Width="82"/>
366366
</dxl:Properties>
367367
<dxl:ProjList>
368368
<dxl:ProjElem ColId="0" Alias="c1">
@@ -410,9 +410,9 @@ explain SELECT * FROM t i1, t t2 where t2.c2 = i1.c2;
410410
</dxl:ProjList>
411411
<dxl:Filter/>
412412
<dxl:SortingColumnList/>
413-
<dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true">
413+
<dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true" OuterRefAsParam="false">
414414
<dxl:Properties>
415-
<dxl:Cost StartupCost="0" TotalCost="862.002950" Rows="1.000000" Width="82"/>
415+
<dxl:Cost StartupCost="0" TotalCost="499.130552" Rows="1.000000" Width="82"/>
416416
</dxl:Properties>
417417
<dxl:ProjList>
418418
<dxl:ProjElem ColId="0" Alias="c1">
@@ -541,7 +541,7 @@ explain SELECT * FROM t i1, t t2 where t2.c2 = i1.c2;
541541
</dxl:BroadcastMotion>
542542
<dxl:BitmapTableScan>
543543
<dxl:Properties>
544-
<dxl:Cost StartupCost="0" TotalCost="431.002035" Rows="1.000000" Width="37"/>
544+
<dxl:Cost StartupCost="0" TotalCost="68.129637" Rows="1.000000" Width="37"/>
545545
</dxl:Properties>
546546
<dxl:ProjList>
547547
<dxl:ProjElem ColId="14" Alias="c1">

data/dxl/minidump/BitmapIndexApply-Basic-TwoTables.mdp

+4-4
Original file line numberDiff line numberDiff line change
@@ -445,7 +445,7 @@ explain SELECT * FROM s i1, t t2 where t2.c2 = i1.c2;
445445
<dxl:Plan Id="0" SpaceSize="1">
446446
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
447447
<dxl:Properties>
448-
<dxl:Cost StartupCost="0" TotalCost="862.001517" Rows="1.000000" Width="40"/>
448+
<dxl:Cost StartupCost="0" TotalCost="499.128761" Rows="1.000000" Width="40"/>
449449
</dxl:Properties>
450450
<dxl:ProjList>
451451
<dxl:ProjElem ColId="0" Alias="c1">
@@ -493,9 +493,9 @@ explain SELECT * FROM s i1, t t2 where t2.c2 = i1.c2;
493493
</dxl:ProjList>
494494
<dxl:Filter/>
495495
<dxl:SortingColumnList/>
496-
<dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true">
496+
<dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true" OuterRefAsParam="false">
497497
<dxl:Properties>
498-
<dxl:Cost StartupCost="0" TotalCost="862.001367" Rows="1.000000" Width="40"/>
498+
<dxl:Cost StartupCost="0" TotalCost="499.128611" Rows="1.000000" Width="40"/>
499499
</dxl:Properties>
500500
<dxl:ProjList>
501501
<dxl:ProjElem ColId="0" Alias="c1">
@@ -624,7 +624,7 @@ explain SELECT * FROM s i1, t t2 where t2.c2 = i1.c2;
624624
</dxl:BroadcastMotion>
625625
<dxl:BitmapTableScan>
626626
<dxl:Properties>
627-
<dxl:Cost StartupCost="0" TotalCost="431.000825" Rows="1.000000" Width="15"/>
627+
<dxl:Cost StartupCost="0" TotalCost="68.128069" Rows="1.000000" Width="15"/>
628628
</dxl:Properties>
629629
<dxl:ProjList>
630630
<dxl:ProjElem ColId="14" Alias="c1">

data/dxl/minidump/BitmapIndexApply-Complex-Condition.mdp

+4-4
Original file line numberDiff line numberDiff line change
@@ -511,7 +511,7 @@ EXPLAIN SELECT * FROM s i1, t t2 where t2.c2 = i1.c2 and t2.c3 > i1.c3 or t2.c1
511511
<dxl:Plan Id="0" SpaceSize="1">
512512
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
513513
<dxl:Properties>
514-
<dxl:Cost StartupCost="0" TotalCost="862.002337" Rows="1.000000" Width="38"/>
514+
<dxl:Cost StartupCost="0" TotalCost="862.062337" Rows="1.000000" Width="38"/>
515515
</dxl:Properties>
516516
<dxl:ProjList>
517517
<dxl:ProjElem ColId="0" Alias="c1">
@@ -559,9 +559,9 @@ EXPLAIN SELECT * FROM s i1, t t2 where t2.c2 = i1.c2 and t2.c3 > i1.c3 or t2.c1
559559
</dxl:ProjList>
560560
<dxl:Filter/>
561561
<dxl:SortingColumnList/>
562-
<dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true">
562+
<dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true" OuterRefAsParam="false">
563563
<dxl:Properties>
564-
<dxl:Cost StartupCost="0" TotalCost="862.002195" Rows="1.000000" Width="38"/>
564+
<dxl:Cost StartupCost="0" TotalCost="862.062195" Rows="1.000000" Width="38"/>
565565
</dxl:Properties>
566566
<dxl:ProjList>
567567
<dxl:ProjElem ColId="0" Alias="c1">
@@ -690,7 +690,7 @@ EXPLAIN SELECT * FROM s i1, t t2 where t2.c2 = i1.c2 and t2.c3 > i1.c3 or t2.c1
690690
</dxl:BroadcastMotion>
691691
<dxl:BitmapTableScan>
692692
<dxl:Properties>
693-
<dxl:Cost StartupCost="0" TotalCost="431.001045" Rows="1.000000" Width="19"/>
693+
<dxl:Cost StartupCost="0" TotalCost="431.061045" Rows="1.000000" Width="19"/>
694694
</dxl:Properties>
695695
<dxl:ProjList>
696696
<dxl:ProjElem ColId="14" Alias="c1">

data/dxl/minidump/BitmapIndexApply-InnerSelect-Basic.mdp

+4-4
Original file line numberDiff line numberDiff line change
@@ -367,7 +367,7 @@ select * from x, y where x.i > y.j and y.k = 10;
367367
<dxl:Plan Id="0" SpaceSize="1">
368368
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
369369
<dxl:Properties>
370-
<dxl:Cost StartupCost="0" TotalCost="862.002729" Rows="1.000000" Width="48"/>
370+
<dxl:Cost StartupCost="0" TotalCost="499.130120" Rows="1.000000" Width="48"/>
371371
</dxl:Properties>
372372
<dxl:ProjList>
373373
<dxl:ProjElem ColId="0" Alias="i">
@@ -397,9 +397,9 @@ select * from x, y where x.i > y.j and y.k = 10;
397397
</dxl:ProjList>
398398
<dxl:Filter/>
399399
<dxl:SortingColumnList/>
400-
<dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true">
400+
<dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true" OuterRefAsParam="false">
401401
<dxl:Properties>
402-
<dxl:Cost StartupCost="0" TotalCost="862.002551" Rows="1.000000" Width="48"/>
402+
<dxl:Cost StartupCost="0" TotalCost="499.129941" Rows="1.000000" Width="48"/>
403403
</dxl:Properties>
404404
<dxl:ProjList>
405405
<dxl:ProjElem ColId="0" Alias="i">
@@ -489,7 +489,7 @@ select * from x, y where x.i > y.j and y.k = 10;
489489
</dxl:BroadcastMotion>
490490
<dxl:BitmapTableScan>
491491
<dxl:Properties>
492-
<dxl:Cost StartupCost="0" TotalCost="431.001346" Rows="1.000000" Width="24"/>
492+
<dxl:Cost StartupCost="0" TotalCost="68.128736" Rows="1.000000" Width="24"/>
493493
</dxl:Properties>
494494
<dxl:ProjList>
495495
<dxl:ProjElem ColId="11" Alias="i">

data/dxl/minidump/BitmapIndexApply-InnerSelect-PartTable.mdp

+4-4
Original file line numberDiff line numberDiff line change
@@ -416,7 +416,7 @@ select * from x, y where x.i > y.j and y.k = 10;
416416
<dxl:Plan Id="0" SpaceSize="2">
417417
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
418418
<dxl:Properties>
419-
<dxl:Cost StartupCost="0" TotalCost="862.002729" Rows="1.000000" Width="48"/>
419+
<dxl:Cost StartupCost="0" TotalCost="499.130120" Rows="1.000000" Width="48"/>
420420
</dxl:Properties>
421421
<dxl:ProjList>
422422
<dxl:ProjElem ColId="0" Alias="i">
@@ -448,7 +448,7 @@ select * from x, y where x.i > y.j and y.k = 10;
448448
<dxl:SortingColumnList/>
449449
<dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true" OuterRefAsParam="false">
450450
<dxl:Properties>
451-
<dxl:Cost StartupCost="0" TotalCost="862.002551" Rows="1.000000" Width="48"/>
451+
<dxl:Cost StartupCost="0" TotalCost="499.129941" Rows="1.000000" Width="48"/>
452452
</dxl:Properties>
453453
<dxl:ProjList>
454454
<dxl:ProjElem ColId="0" Alias="i">
@@ -538,7 +538,7 @@ select * from x, y where x.i > y.j and y.k = 10;
538538
</dxl:BroadcastMotion>
539539
<dxl:Sequence>
540540
<dxl:Properties>
541-
<dxl:Cost StartupCost="0" TotalCost="431.001346" Rows="1.000000" Width="24"/>
541+
<dxl:Cost StartupCost="0" TotalCost="68.128736" Rows="1.000000" Width="24"/>
542542
</dxl:Properties>
543543
<dxl:ProjList>
544544
<dxl:ProjElem ColId="11" Alias="i">
@@ -577,7 +577,7 @@ select * from x, y where x.i > y.j and y.k = 10;
577577
</dxl:PartitionSelector>
578578
<dxl:DynamicBitmapTableScan PartIndexId="1">
579579
<dxl:Properties>
580-
<dxl:Cost StartupCost="0" TotalCost="431.001346" Rows="1.000000" Width="24"/>
580+
<dxl:Cost StartupCost="0" TotalCost="68.128736" Rows="1.000000" Width="24"/>
581581
</dxl:Properties>
582582
<dxl:ProjList>
583583
<dxl:ProjElem ColId="11" Alias="i">

data/dxl/minidump/BitmapIndexProbeMergeFilters.mdp

+3-3
Original file line numberDiff line numberDiff line change
@@ -596,7 +596,7 @@ EXPLAIN SELECT * FROM table_with_two_indices_ao WHERE b = 15 AND c BETWEEN 10000
596596
<dxl:Plan Id="0" SpaceSize="2">
597597
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
598598
<dxl:Properties>
599-
<dxl:Cost StartupCost="0" TotalCost="431.001250" Rows="1.000000" Width="12"/>
599+
<dxl:Cost StartupCost="0" TotalCost="431.061250" Rows="1.000000" Width="12"/>
600600
</dxl:Properties>
601601
<dxl:ProjList>
602602
<dxl:ProjElem ColId="0" Alias="a">
@@ -613,7 +613,7 @@ EXPLAIN SELECT * FROM table_with_two_indices_ao WHERE b = 15 AND c BETWEEN 10000
613613
<dxl:SortingColumnList/>
614614
<dxl:Sequence>
615615
<dxl:Properties>
616-
<dxl:Cost StartupCost="0" TotalCost="431.001159" Rows="1.756504" Width="12"/>
616+
<dxl:Cost StartupCost="0" TotalCost="431.061159" Rows="1.756504" Width="12"/>
617617
</dxl:Properties>
618618
<dxl:ProjList>
619619
<dxl:ProjElem ColId="0" Alias="a">
@@ -652,7 +652,7 @@ EXPLAIN SELECT * FROM table_with_two_indices_ao WHERE b = 15 AND c BETWEEN 10000
652652
</dxl:PartitionSelector>
653653
<dxl:DynamicBitmapTableScan PartIndexId="1">
654654
<dxl:Properties>
655-
<dxl:Cost StartupCost="0" TotalCost="431.001159" Rows="1.756504" Width="12"/>
655+
<dxl:Cost StartupCost="0" TotalCost="431.061159" Rows="1.756504" Width="12"/>
656656
</dxl:Properties>
657657
<dxl:ProjList>
658658
<dxl:ProjElem ColId="0" Alias="a">

data/dxl/minidump/BitmapIndexScan-WithUnsupportedOperatorFilter.mdp

+2-2
Original file line numberDiff line numberDiff line change
@@ -874,7 +874,7 @@ inferred from the second operator (c4 = 'f')
874874
<dxl:Plan Id="0" SpaceSize="1">
875875
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
876876
<dxl:Properties>
877-
<dxl:Cost StartupCost="0" TotalCost="0.003386" Rows="1.000000" Width="30"/>
877+
<dxl:Cost StartupCost="0" TotalCost="102.193886" Rows="1.000000" Width="30"/>
878878
</dxl:Properties>
879879
<dxl:ProjList>
880880
<dxl:ProjElem ColId="0" Alias="c1">
@@ -903,7 +903,7 @@ inferred from the second operator (c4 = 'f')
903903
<dxl:SortingColumnList/>
904904
<dxl:BitmapTableScan>
905905
<dxl:Properties>
906-
<dxl:Cost StartupCost="0" TotalCost="0.003251" Rows="1.000000" Width="30"/>
906+
<dxl:Cost StartupCost="0" TotalCost="102.193751" Rows="1.000000" Width="30"/>
907907
</dxl:Properties>
908908
<dxl:ProjList>
909909
<dxl:ProjElem ColId="0" Alias="c1">

data/dxl/minidump/BitmapIndexScan.mdp

+6-6
Original file line numberDiff line numberDiff line change
@@ -428,7 +428,7 @@ see sql/BitmapIndexScan.sql
428428
<dxl:Plan Id="0" SpaceSize="50">
429429
<dxl:GatherMotion InputSegments="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63" OutputSegments="-1">
430430
<dxl:Properties>
431-
<dxl:Cost StartupCost="0" TotalCost="6896.008572" Rows="1.000000" Width="9"/>
431+
<dxl:Cost StartupCost="0" TotalCost="5184.782412" Rows="1.000000" Width="9"/>
432432
</dxl:Properties>
433433
<dxl:ProjList>
434434
<dxl:ProjElem ColId="23" Alias="fid">
@@ -439,7 +439,7 @@ see sql/BitmapIndexScan.sql
439439
<dxl:SortingColumnList/>
440440
<dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="false" OuterRefAsParam="false">
441441
<dxl:Properties>
442-
<dxl:Cost StartupCost="0" TotalCost="6896.008551" Rows="1.000000" Width="9"/>
442+
<dxl:Cost StartupCost="0" TotalCost="5184.782391" Rows="1.000000" Width="9"/>
443443
</dxl:Properties>
444444
<dxl:ProjList>
445445
<dxl:ProjElem ColId="23" Alias="fid">
@@ -478,7 +478,7 @@ see sql/BitmapIndexScan.sql
478478
</dxl:TableScan>
479479
<dxl:Materialize Eager="false">
480480
<dxl:Properties>
481-
<dxl:Cost StartupCost="0" TotalCost="862.001849" Rows="1.000000" Width="9"/>
481+
<dxl:Cost StartupCost="0" TotalCost="434.195309" Rows="1.000000" Width="9"/>
482482
</dxl:Properties>
483483
<dxl:ProjList>
484484
<dxl:ProjElem ColId="0" Alias="flex_value_set_id">
@@ -488,7 +488,7 @@ see sql/BitmapIndexScan.sql
488488
<dxl:Filter/>
489489
<dxl:RedistributeMotion InputSegments="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63" OutputSegments="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63">
490490
<dxl:Properties>
491-
<dxl:Cost StartupCost="0" TotalCost="862.001840" Rows="1.000000" Width="9"/>
491+
<dxl:Cost StartupCost="0" TotalCost="434.195300" Rows="1.000000" Width="9"/>
492492
</dxl:Properties>
493493
<dxl:ProjList>
494494
<dxl:ProjElem ColId="0" Alias="flex_value_set_id">
@@ -504,7 +504,7 @@ see sql/BitmapIndexScan.sql
504504
</dxl:HashExprList>
505505
<dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true" OuterRefAsParam="false">
506506
<dxl:Properties>
507-
<dxl:Cost StartupCost="0" TotalCost="862.001832" Rows="1.000000" Width="9"/>
507+
<dxl:Cost StartupCost="0" TotalCost="434.195292" Rows="1.000000" Width="9"/>
508508
</dxl:Properties>
509509
<dxl:ProjList>
510510
<dxl:ProjElem ColId="0" Alias="flex_value_set_id">
@@ -556,7 +556,7 @@ see sql/BitmapIndexScan.sql
556556
</dxl:BroadcastMotion>
557557
<dxl:BitmapTableScan>
558558
<dxl:Properties>
559-
<dxl:Cost StartupCost="0" TotalCost="431.000023" Rows="1.000000" Width="9"/>
559+
<dxl:Cost StartupCost="0" TotalCost="3.193483" Rows="1.000000" Width="9"/>
560560
</dxl:Properties>
561561
<dxl:ProjList>
562562
<dxl:ProjElem ColId="0" Alias="flex_value_set_id">

0 commit comments

Comments
 (0)