== Physical Plan ==
AdaptiveSparkPlan (811)
+- == Final Plan ==
   NativeSort (496)
   +- InputAdapter (495)
      +- AQEShuffleRead (494)
         +- ShuffleQueryStage (493), Statistics(X)
            +- NativeShuffleExchange (492)
               +- ConvertToNative (491)
                  +- * Project (490)
                     +- * SortMergeJoin Inner (489)
                        :- NativeSort (280)
                        :  +- InputAdapter (279)
                        :     +- AQEShuffleRead (278)
                        :        +- ShuffleQueryStage (277), Statistics(X)
                        :           +- NativeShuffleExchange (276)
                        :              +- NativeProject (275)
                        :                 +- NativeHashAggregate (274)
                        :                    +- NativeHashAggregate (273)
                        :                       +- NativeProject (272)
                        :                          +- NativeProject (271)
                        :                             +- NativeSortMergeJoin Inner (270)
                        :                                :- NativeSort (260)
                        :                                :  +- InputAdapter (259)
                        :                                :     +- AQEShuffleRead (258)
                        :                                :        +- ShuffleQueryStage (257), Statistics(X)
                        :                                :           +- NativeShuffleExchange (256)
                        :                                :              +- NativeProject (255)
                        :                                :                 +- NativeSortMergeJoin Inner (254)
                        :                                :                    :- NativeSort (247)
                        :                                :                    :  +- InputAdapter (246)
                        :                                :                    :     +- AQEShuffleRead (245)
                        :                                :                    :        +- ShuffleQueryStage (244), Statistics(X)
                        :                                :                    :           +- NativeShuffleExchange (243)
                        :                                :                    :              +- NativeProject (242)
                        :                                :                    :                 +- NativeSortMergeJoin Inner (241)
                        :                                :                    :                    :- NativeSort (232)
                        :                                :                    :                    :  +- InputAdapter (231)
                        :                                :                    :                    :     +- AQEShuffleRead (230)
                        :                                :                    :                    :        +- ShuffleQueryStage (229), Statistics(X)
                        :                                :                    :                    :           +- NativeShuffleExchange (228)
                        :                                :                    :                    :              +- NativeProject (227)
                        :                                :                    :                    :                 +- NativeSortMergeJoin Inner (226)
                        :                                :                    :                    :                    :- NativeSort (219)
                        :                                :                    :                    :                    :  +- InputAdapter (218)
                        :                                :                    :                    :                    :     +- AQEShuffleRead (217)
                        :                                :                    :                    :                    :        +- ShuffleQueryStage (216), Statistics(X)
                        :                                :                    :                    :                    :           +- NativeShuffleExchange (215)
                        :                                :                    :                    :                    :              +- NativeProject (214)
                        :                                :                    :                    :                    :                 +- NativeSortMergeJoin Inner (213)
                        :                                :                    :                    :                    :                    :- NativeSort (204)
                        :                                :                    :                    :                    :                    :  +- InputAdapter (203)
                        :                                :                    :                    :                    :                    :     +- AQEShuffleRead (202)
                        :                                :                    :                    :                    :                    :        +- ShuffleQueryStage (201), Statistics(X)
                        :                                :                    :                    :                    :                    :           +- NativeShuffleExchange (200)
                        :                                :                    :                    :                    :                    :              +- NativeProject (199)
                        :                                :                    :                    :                    :                    :                 +- NativeSortMergeJoin Inner (198)
                        :                                :                    :                    :                    :                    :                    :- NativeSort (191)
                        :                                :                    :                    :                    :                    :                    :  +- InputAdapter (190)
                        :                                :                    :                    :                    :                    :                    :     +- AQEShuffleRead (189)
                        :                                :                    :                    :                    :                    :                    :        +- ShuffleQueryStage (188), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :           +- NativeShuffleExchange (187)
                        :                                :                    :                    :                    :                    :                    :              +- NativeProject (186)
                        :                                :                    :                    :                    :                    :                    :                 +- NativeSortMergeJoin Inner (185)
                        :                                :                    :                    :                    :                    :                    :                    :- NativeSort (176)
                        :                                :                    :                    :                    :                    :                    :                    :  +- InputAdapter (175)
                        :                                :                    :                    :                    :                    :                    :                    :     +- AQEShuffleRead (174)
                        :                                :                    :                    :                    :                    :                    :                    :        +- ShuffleQueryStage (173), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :           +- NativeShuffleExchange (172)
                        :                                :                    :                    :                    :                    :                    :                    :              +- NativeProject (171)
                        :                                :                    :                    :                    :                    :                    :                    :                 +- NativeSortMergeJoin Inner (170)
                        :                                :                    :                    :                    :                    :                    :                    :                    :- NativeSort (161)
                        :                                :                    :                    :                    :                    :                    :                    :                    :  +- InputAdapter (160)
                        :                                :                    :                    :                    :                    :                    :                    :                    :     +- AQEShuffleRead (159)
                        :                                :                    :                    :                    :                    :                    :                    :                    :        +- ShuffleQueryStage (158), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :           +- NativeShuffleExchange (157)
                        :                                :                    :                    :                    :                    :                    :                    :                    :              +- ConvertToNative (156)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                 +- * Project (155)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                    +- * SortMergeJoin Inner (154)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :- NativeSort (147)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :  +- InputAdapter (146)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :     +- AQEShuffleRead (145)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :        +- ShuffleQueryStage (144), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :           +- NativeShuffleExchange (143)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :              +- NativeProject (142)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                 +- NativeSortMergeJoin Inner (141)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :- NativeSort (132)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :  +- InputAdapter (131)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :     +- AQEShuffleRead (130)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :        +- ShuffleQueryStage (129), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :           +- NativeShuffleExchange (128)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :              +- NativeProject (127)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                 +- NativeSortMergeJoin Inner (126)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :- NativeSort (119)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :  +- InputAdapter (118)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :     +- AQEShuffleRead (117)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :        +- ShuffleQueryStage (116), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :           +- NativeShuffleExchange (115)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :              +- NativeProject (114)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                 +- NativeSortMergeJoin Inner (113)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :- NativeSort (104)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :  +- InputAdapter (103)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :     +- AQEShuffleRead (102)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :        +- ShuffleQueryStage (101), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :           +- NativeShuffleExchange (100)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :              +- NativeProject (99)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                 +- NativeSortMergeJoin Inner (98)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :- NativeSort (89)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :  +- InputAdapter (88)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :     +- AQEShuffleRead (87)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :        +- ShuffleQueryStage (86), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :           +- NativeShuffleExchange (85)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :              +- NativeProject (84)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                 +- NativeSortMergeJoin Inner (83)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :- NativeSort (74)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :  +- InputAdapter (73)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :     +- AQEShuffleRead (72)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :        +- ShuffleQueryStage (71), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :           +- NativeShuffleExchange (70)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :              +- NativeProject (69)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                 +- NativeSortMergeJoin Inner (68)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :- NativeSort (59)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :  +- InputAdapter (58)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :     +- AQEShuffleRead (57)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :        +- ShuffleQueryStage (56), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :           +- NativeShuffleExchange (55)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :              +- NativeProject (54)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                 +- NativeSortMergeJoin Inner (53)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :- NativeSort (23)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :  +- InputAdapter (22)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :     +- AQEShuffleRead (21)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :        +- ShuffleQueryStage (20), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :           +- NativeShuffleExchange (19)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :              +- NativeProject (18)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                 +- NativeSortMergeJoin Inner (17)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                    :- NativeSort (8)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                    :  +- InputAdapter (7)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                    :     +- AQEShuffleRead (6)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                    :        +- ShuffleQueryStage (5), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                    :           +- NativeShuffleExchange (4)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                    :              +- NativeFilter (3)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                    :                 +- InputAdapter (2)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                    :                    +- NativeParquetScan  (1)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                    +- NativeSort (16)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                       +- InputAdapter (15)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                          +- AQEShuffleRead (14)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                             +- ShuffleQueryStage (13), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                                +- NativeShuffleExchange (12)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                                   +- NativeFilter (11)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                                      +- InputAdapter (10)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    :                                         +- NativeParquetScan  (9)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                    +- NativeSort (52)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                       +- NativeProject (51)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                          +- NativeFilter (50)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                             +- NativeProject (49)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                +- NativeHashAggregate (48)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                   +- InputAdapter (47)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                      +- AQEShuffleRead (46)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                         +- ShuffleQueryStage (45), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                            +- NativeShuffleExchange (44)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                               +- NativeHashAggregate (43)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                  +- NativeProject (42)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                     +- NativeProject (41)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                        +- NativeSortMergeJoin Inner (40)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                           :- NativeSort (31)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                           :  +- InputAdapter (30)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                           :     +- AQEShuffleRead (29)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                           :        +- ShuffleQueryStage (28), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                           :           +- NativeShuffleExchange (27)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                           :              +- NativeFilter (26)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                           :                 +- InputAdapter (25)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                           :                    +- NativeParquetScan  (24)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                           +- NativeSort (39)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                              +- InputAdapter (38)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                                 +- AQEShuffleRead (37)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                                    +- ShuffleQueryStage (36), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                                       +- NativeShuffleExchange (35)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                                          +- NativeFilter (34)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                                             +- InputAdapter (33)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :                                                                                +- NativeParquetScan  (32)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    +- NativeSort (67)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                       +- InputAdapter (66)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                          +- AQEShuffleRead (65)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                             +- ShuffleQueryStage (64), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                                +- NativeShuffleExchange (63)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                                   +- NativeFilter (62)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                                      +- InputAdapter (61)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                                         +- NativeParquetScan  (60)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    +- NativeSort (82)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                       +- InputAdapter (81)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                          +- AQEShuffleRead (80)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                             +- ShuffleQueryStage (79), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                                +- NativeShuffleExchange (78)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                                   +- NativeFilter (77)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                                      +- InputAdapter (76)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                                         +- NativeParquetScan  (75)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    +- NativeSort (97)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                       +- InputAdapter (96)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                          +- AQEShuffleRead (95)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                             +- ShuffleQueryStage (94), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                                +- NativeShuffleExchange (93)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                                   +- NativeFilter (92)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                                      +- InputAdapter (91)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                                         +- NativeParquetScan  (90)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    +- NativeSort (112)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                       +- InputAdapter (111)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                          +- AQEShuffleRead (110)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                             +- ShuffleQueryStage (109), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                                +- NativeShuffleExchange (108)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                                   +- NativeFilter (107)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                                      +- InputAdapter (106)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                                         +- NativeParquetScan  (105)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    +- NativeSort (125)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                       +- InputAdapter (124)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                          +- InputAdapter (123)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                             +- AQEShuffleRead (122)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                                +- ShuffleQueryStage (121), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    :                                   +- ReusedExchange (120)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                    +- NativeSort (140)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                       +- InputAdapter (139)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                          +- AQEShuffleRead (138)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                             +- ShuffleQueryStage (137), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                                +- NativeShuffleExchange (136)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                                   +- NativeFilter (135)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                                      +- InputAdapter (134)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       :                                         +- NativeParquetScan  (133)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                       +- NativeSort (153)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                          +- InputAdapter (152)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                             +- InputAdapter (151)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                                +- AQEShuffleRead (150)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                                   +- ShuffleQueryStage (149), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                    :                                      +- ReusedExchange (148)
                        :                                :                    :                    :                    :                    :                    :                    :                    +- NativeSort (169)
                        :                                :                    :                    :                    :                    :                    :                    :                       +- InputAdapter (168)
                        :                                :                    :                    :                    :                    :                    :                    :                          +- AQEShuffleRead (167)
                        :                                :                    :                    :                    :                    :                    :                    :                             +- ShuffleQueryStage (166), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                    :                                +- NativeShuffleExchange (165)
                        :                                :                    :                    :                    :                    :                    :                    :                                   +- NativeFilter (164)
                        :                                :                    :                    :                    :                    :                    :                    :                                      +- InputAdapter (163)
                        :                                :                    :                    :                    :                    :                    :                    :                                         +- NativeParquetScan  (162)
                        :                                :                    :                    :                    :                    :                    :                    +- NativeSort (184)
                        :                                :                    :                    :                    :                    :                    :                       +- InputAdapter (183)
                        :                                :                    :                    :                    :                    :                    :                          +- AQEShuffleRead (182)
                        :                                :                    :                    :                    :                    :                    :                             +- ShuffleQueryStage (181), Statistics(X)
                        :                                :                    :                    :                    :                    :                    :                                +- NativeShuffleExchange (180)
                        :                                :                    :                    :                    :                    :                    :                                   +- NativeFilter (179)
                        :                                :                    :                    :                    :                    :                    :                                      +- InputAdapter (178)
                        :                                :                    :                    :                    :                    :                    :                                         +- NativeParquetScan  (177)
                        :                                :                    :                    :                    :                    :                    +- NativeSort (197)
                        :                                :                    :                    :                    :                    :                       +- InputAdapter (196)
                        :                                :                    :                    :                    :                    :                          +- InputAdapter (195)
                        :                                :                    :                    :                    :                    :                             +- AQEShuffleRead (194)
                        :                                :                    :                    :                    :                    :                                +- ShuffleQueryStage (193), Statistics(X)
                        :                                :                    :                    :                    :                    :                                   +- ReusedExchange (192)
                        :                                :                    :                    :                    :                    +- NativeSort (212)
                        :                                :                    :                    :                    :                       +- InputAdapter (211)
                        :                                :                    :                    :                    :                          +- AQEShuffleRead (210)
                        :                                :                    :                    :                    :                             +- ShuffleQueryStage (209), Statistics(X)
                        :                                :                    :                    :                    :                                +- NativeShuffleExchange (208)
                        :                                :                    :                    :                    :                                   +- NativeFilter (207)
                        :                                :                    :                    :                    :                                      +- InputAdapter (206)
                        :                                :                    :                    :                    :                                         +- NativeParquetScan  (205)
                        :                                :                    :                    :                    +- NativeSort (225)
                        :                                :                    :                    :                       +- InputAdapter (224)
                        :                                :                    :                    :                          +- InputAdapter (223)
                        :                                :                    :                    :                             +- AQEShuffleRead (222)
                        :                                :                    :                    :                                +- ShuffleQueryStage (221), Statistics(X)
                        :                                :                    :                    :                                   +- ReusedExchange (220)
                        :                                :                    :                    +- NativeSort (240)
                        :                                :                    :                       +- InputAdapter (239)
                        :                                :                    :                          +- AQEShuffleRead (238)
                        :                                :                    :                             +- ShuffleQueryStage (237), Statistics(X)
                        :                                :                    :                                +- NativeShuffleExchange (236)
                        :                                :                    :                                   +- NativeFilter (235)
                        :                                :                    :                                      +- InputAdapter (234)
                        :                                :                    :                                         +- NativeParquetScan  (233)
                        :                                :                    +- NativeSort (253)
                        :                                :                       +- InputAdapter (252)
                        :                                :                          +- InputAdapter (251)
                        :                                :                             +- AQEShuffleRead (250)
                        :                                :                                +- ShuffleQueryStage (249), Statistics(X)
                        :                                :                                   +- ReusedExchange (248)
                        :                                +- NativeSort (269)
                        :                                   +- InputAdapter (268)
                        :                                      +- AQEShuffleRead (267)
                        :                                         +- ShuffleQueryStage (266), Statistics(X)
                        :                                            +- NativeShuffleExchange (265)
                        :                                               +- NativeProject (264)
                        :                                                  +- NativeFilter (263)
                        :                                                     +- InputAdapter (262)
                        :                                                        +- NativeParquetScan  (261)
                        +- NativeSort (488)
                           +- InputAdapter (487)
                              +- AQEShuffleRead (486)
                                 +- ShuffleQueryStage (485), Statistics(X)
                                    +- NativeShuffleExchange (484)
                                       +- NativeProject (483)
                                          +- NativeHashAggregate (482)
                                             +- NativeHashAggregate (481)
                                                +- NativeProject (480)
                                                   +- NativeProject (479)
                                                      +- NativeSortMergeJoin Inner (478)
                                                         :- NativeSort (471)
                                                         :  +- InputAdapter (470)
                                                         :     +- AQEShuffleRead (469)
                                                         :        +- ShuffleQueryStage (468), Statistics(X)
                                                         :           +- NativeShuffleExchange (467)
                                                         :              +- NativeProject (466)
                                                         :                 +- NativeSortMergeJoin Inner (465)
                                                         :                    :- NativeSort (458)
                                                         :                    :  +- InputAdapter (457)
                                                         :                    :     +- AQEShuffleRead (456)
                                                         :                    :        +- ShuffleQueryStage (455), Statistics(X)
                                                         :                    :           +- NativeShuffleExchange (454)
                                                         :                    :              +- NativeProject (453)
                                                         :                    :                 +- NativeSortMergeJoin Inner (452)
                                                         :                    :                    :- NativeSort (445)
                                                         :                    :                    :  +- InputAdapter (444)
                                                         :                    :                    :     +- AQEShuffleRead (443)
                                                         :                    :                    :        +- ShuffleQueryStage (442), Statistics(X)
                                                         :                    :                    :           +- NativeShuffleExchange (441)
                                                         :                    :                    :              +- NativeProject (440)
                                                         :                    :                    :                 +- NativeSortMergeJoin Inner (439)
                                                         :                    :                    :                    :- NativeSort (432)
                                                         :                    :                    :                    :  +- InputAdapter (431)
                                                         :                    :                    :                    :     +- AQEShuffleRead (430)
                                                         :                    :                    :                    :        +- ShuffleQueryStage (429), Statistics(X)
                                                         :                    :                    :                    :           +- NativeShuffleExchange (428)
                                                         :                    :                    :                    :              +- NativeProject (427)
                                                         :                    :                    :                    :                 +- NativeSortMergeJoin Inner (426)
                                                         :                    :                    :                    :                    :- NativeSort (419)
                                                         :                    :                    :                    :                    :  +- InputAdapter (418)
                                                         :                    :                    :                    :                    :     +- AQEShuffleRead (417)
                                                         :                    :                    :                    :                    :        +- ShuffleQueryStage (416), Statistics(X)
                                                         :                    :                    :                    :                    :           +- NativeShuffleExchange (415)
                                                         :                    :                    :                    :                    :              +- NativeProject (414)
                                                         :                    :                    :                    :                    :                 +- NativeSortMergeJoin Inner (413)
                                                         :                    :                    :                    :                    :                    :- NativeSort (406)
                                                         :                    :                    :                    :                    :                    :  +- InputAdapter (405)
                                                         :                    :                    :                    :                    :                    :     +- AQEShuffleRead (404)
                                                         :                    :                    :                    :                    :                    :        +- ShuffleQueryStage (403), Statistics(X)
                                                         :                    :                    :                    :                    :                    :           +- NativeShuffleExchange (402)
                                                         :                    :                    :                    :                    :                    :              +- NativeProject (401)
                                                         :                    :                    :                    :                    :                    :                 +- NativeSortMergeJoin Inner (400)
                                                         :                    :                    :                    :                    :                    :                    :- NativeSort (393)
                                                         :                    :                    :                    :                    :                    :                    :  +- InputAdapter (392)
                                                         :                    :                    :                    :                    :                    :                    :     +- AQEShuffleRead (391)
                                                         :                    :                    :                    :                    :                    :                    :        +- ShuffleQueryStage (390), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :           +- NativeShuffleExchange (389)
                                                         :                    :                    :                    :                    :                    :                    :              +- NativeProject (388)
                                                         :                    :                    :                    :                    :                    :                    :                 +- NativeSortMergeJoin Inner (387)
                                                         :                    :                    :                    :                    :                    :                    :                    :- NativeSort (380)
                                                         :                    :                    :                    :                    :                    :                    :                    :  +- InputAdapter (379)
                                                         :                    :                    :                    :                    :                    :                    :                    :     +- AQEShuffleRead (378)
                                                         :                    :                    :                    :                    :                    :                    :                    :        +- ShuffleQueryStage (377), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                    :           +- NativeShuffleExchange (376)
                                                         :                    :                    :                    :                    :                    :                    :                    :              +- ConvertToNative (375)
                                                         :                    :                    :                    :                    :                    :                    :                    :                 +- * Project (374)
                                                         :                    :                    :                    :                    :                    :                    :                    :                    +- * SortMergeJoin Inner (373)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :- NativeSort (366)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :  +- InputAdapter (365)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :     +- AQEShuffleRead (364)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :        +- ShuffleQueryStage (363), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :           +- NativeShuffleExchange (362)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :              +- NativeProject (361)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                 +- NativeSortMergeJoin Inner (360)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :- NativeSort (353)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :  +- InputAdapter (352)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :     +- AQEShuffleRead (351)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :        +- ShuffleQueryStage (350), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :           +- NativeShuffleExchange (349)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :              +- NativeProject (348)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                 +- NativeSortMergeJoin Inner (347)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :- NativeSort (340)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :  +- InputAdapter (339)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :     +- AQEShuffleRead (338)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :        +- ShuffleQueryStage (337), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :           +- NativeShuffleExchange (336)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :              +- NativeProject (335)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                 +- NativeSortMergeJoin Inner (334)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :- NativeSort (327)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :  +- InputAdapter (326)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :     +- AQEShuffleRead (325)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :        +- ShuffleQueryStage (324), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :           +- NativeShuffleExchange (323)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :              +- NativeProject (322)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                 +- NativeSortMergeJoin Inner (321)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :- NativeSort (314)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :  +- InputAdapter (313)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :     +- AQEShuffleRead (312)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :        +- ShuffleQueryStage (311), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :           +- NativeShuffleExchange (310)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :              +- NativeProject (309)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                 +- NativeSortMergeJoin Inner (308)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :- NativeSort (301)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :  +- InputAdapter (300)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :     +- AQEShuffleRead (299)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :        +- ShuffleQueryStage (298), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :           +- NativeShuffleExchange (297)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :              +- NativeProject (296)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                 +- NativeSortMergeJoin Inner (295)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :- NativeSort (286)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :  +- InputAdapter (285)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :     +- InputAdapter (284)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :        +- AQEShuffleRead (283)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :           +- ShuffleQueryStage (282), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    :              +- ReusedExchange (281)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                    +- NativeSort (294)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                       +- InputAdapter (293)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                          +- AQEShuffleRead (292)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                             +- ShuffleQueryStage (291), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                                +- NativeShuffleExchange (290)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                                   +- NativeFilter (289)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                                      +- InputAdapter (288)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    :                                         +- NativeParquetScan  (287)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                    +- NativeSort (307)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                       +- InputAdapter (306)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                          +- InputAdapter (305)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                             +- AQEShuffleRead (304)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                                +- ShuffleQueryStage (303), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    :                                   +- ReusedExchange (302)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                    +- NativeSort (320)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                       +- InputAdapter (319)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                          +- InputAdapter (318)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                             +- AQEShuffleRead (317)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                                +- ShuffleQueryStage (316), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    :                                   +- ReusedExchange (315)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                    +- NativeSort (333)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                       +- InputAdapter (332)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                          +- InputAdapter (331)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                             +- AQEShuffleRead (330)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                                +- ShuffleQueryStage (329), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    :                                   +- ReusedExchange (328)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                    +- NativeSort (346)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                       +- InputAdapter (345)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                          +- InputAdapter (344)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                             +- AQEShuffleRead (343)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                                +- ShuffleQueryStage (342), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    :                                   +- ReusedExchange (341)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                    +- NativeSort (359)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                       +- InputAdapter (358)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                          +- InputAdapter (357)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                             +- AQEShuffleRead (356)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                                +- ShuffleQueryStage (355), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       :                                   +- ReusedExchange (354)
                                                         :                    :                    :                    :                    :                    :                    :                    :                       +- NativeSort (372)
                                                         :                    :                    :                    :                    :                    :                    :                    :                          +- InputAdapter (371)
                                                         :                    :                    :                    :                    :                    :                    :                    :                             +- InputAdapter (370)
                                                         :                    :                    :                    :                    :                    :                    :                    :                                +- AQEShuffleRead (369)
                                                         :                    :                    :                    :                    :                    :                    :                    :                                   +- ShuffleQueryStage (368), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                    :                                      +- ReusedExchange (367)
                                                         :                    :                    :                    :                    :                    :                    :                    +- NativeSort (386)
                                                         :                    :                    :                    :                    :                    :                    :                       +- InputAdapter (385)
                                                         :                    :                    :                    :                    :                    :                    :                          +- InputAdapter (384)
                                                         :                    :                    :                    :                    :                    :                    :                             +- AQEShuffleRead (383)
                                                         :                    :                    :                    :                    :                    :                    :                                +- ShuffleQueryStage (382), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                    :                                   +- ReusedExchange (381)
                                                         :                    :                    :                    :                    :                    :                    +- NativeSort (399)
                                                         :                    :                    :                    :                    :                    :                       +- InputAdapter (398)
                                                         :                    :                    :                    :                    :                    :                          +- InputAdapter (397)
                                                         :                    :                    :                    :                    :                    :                             +- AQEShuffleRead (396)
                                                         :                    :                    :                    :                    :                    :                                +- ShuffleQueryStage (395), Statistics(X)
                                                         :                    :                    :                    :                    :                    :                                   +- ReusedExchange (394)
                                                         :                    :                    :                    :                    :                    +- NativeSort (412)
                                                         :                    :                    :                    :                    :                       +- InputAdapter (411)
                                                         :                    :                    :                    :                    :                          +- InputAdapter (410)
                                                         :                    :                    :                    :                    :                             +- AQEShuffleRead (409)
                                                         :                    :                    :                    :                    :                                +- ShuffleQueryStage (408), Statistics(X)
                                                         :                    :                    :                    :                    :                                   +- ReusedExchange (407)
                                                         :                    :                    :                    :                    +- NativeSort (425)
                                                         :                    :                    :                    :                       +- InputAdapter (424)
                                                         :                    :                    :                    :                          +- InputAdapter (423)
                                                         :                    :                    :                    :                             +- AQEShuffleRead (422)
                                                         :                    :                    :                    :                                +- ShuffleQueryStage (421), Statistics(X)
                                                         :                    :                    :                    :                                   +- ReusedExchange (420)
                                                         :                    :                    :                    +- NativeSort (438)
                                                         :                    :                    :                       +- InputAdapter (437)
                                                         :                    :                    :                          +- InputAdapter (436)
                                                         :                    :                    :                             +- AQEShuffleRead (435)
                                                         :                    :                    :                                +- ShuffleQueryStage (434), Statistics(X)
                                                         :                    :                    :                                   +- ReusedExchange (433)
                                                         :                    :                    +- NativeSort (451)
                                                         :                    :                       +- InputAdapter (450)
                                                         :                    :                          +- InputAdapter (449)
                                                         :                    :                             +- AQEShuffleRead (448)
                                                         :                    :                                +- ShuffleQueryStage (447), Statistics(X)
                                                         :                    :                                   +- ReusedExchange (446)
                                                         :                    +- NativeSort (464)
                                                         :                       +- InputAdapter (463)
                                                         :                          +- InputAdapter (462)
                                                         :                             +- AQEShuffleRead (461)
                                                         :                                +- ShuffleQueryStage (460), Statistics(X)
                                                         :                                   +- ReusedExchange (459)
                                                         +- NativeSort (477)
                                                            +- InputAdapter (476)
                                                               +- InputAdapter (475)
                                                                  +- AQEShuffleRead (474)
                                                                     +- ShuffleQueryStage (473), Statistics(X)
                                                                        +- ReusedExchange (472)
+- == Initial Plan ==
   Sort (810)
   +- Exchange (809)
      +- Project (808)
         +- SortMergeJoin Inner (807)
            :- Sort (651)
            :  +- Exchange (650)
            :     +- HashAggregate (649)
            :        +- HashAggregate (648)
            :           +- Project (647)
            :              +- SortMergeJoin Inner (646)
            :                 :- Sort (640)
            :                 :  +- Exchange (639)
            :                 :     +- Project (638)
            :                 :        +- SortMergeJoin Inner (637)
            :                 :           :- Sort (632)
            :                 :           :  +- Exchange (631)
            :                 :           :     +- Project (630)
            :                 :           :        +- SortMergeJoin Inner (629)
            :                 :           :           :- Sort (624)
            :                 :           :           :  +- Exchange (623)
            :                 :           :           :     +- Project (622)
            :                 :           :           :        +- SortMergeJoin Inner (621)
            :                 :           :           :           :- Sort (616)
            :                 :           :           :           :  +- Exchange (615)
            :                 :           :           :           :     +- Project (614)
            :                 :           :           :           :        +- SortMergeJoin Inner (613)
            :                 :           :           :           :           :- Sort (608)
            :                 :           :           :           :           :  +- Exchange (607)
            :                 :           :           :           :           :     +- Project (606)
            :                 :           :           :           :           :        +- SortMergeJoin Inner (605)
            :                 :           :           :           :           :           :- Sort (600)
            :                 :           :           :           :           :           :  +- Exchange (599)
            :                 :           :           :           :           :           :     +- Project (598)
            :                 :           :           :           :           :           :        +- SortMergeJoin Inner (597)
            :                 :           :           :           :           :           :           :- Sort (592)
            :                 :           :           :           :           :           :           :  +- Exchange (591)
            :                 :           :           :           :           :           :           :     +- Project (590)
            :                 :           :           :           :           :           :           :        +- SortMergeJoin Inner (589)
            :                 :           :           :           :           :           :           :           :- Sort (584)
            :                 :           :           :           :           :           :           :           :  +- Exchange (583)
            :                 :           :           :           :           :           :           :           :     +- Project (582)
            :                 :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (581)
            :                 :           :           :           :           :           :           :           :           :- Sort (576)
            :                 :           :           :           :           :           :           :           :           :  +- Exchange (575)
            :                 :           :           :           :           :           :           :           :           :     +- Project (574)
            :                 :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (573)
            :                 :           :           :           :           :           :           :           :           :           :- Sort (568)
            :                 :           :           :           :           :           :           :           :           :           :  +- Exchange (567)
            :                 :           :           :           :           :           :           :           :           :           :     +- Project (566)
            :                 :           :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (565)
            :                 :           :           :           :           :           :           :           :           :           :           :- Sort (560)
            :                 :           :           :           :           :           :           :           :           :           :           :  +- Exchange (559)
            :                 :           :           :           :           :           :           :           :           :           :           :     +- Project (558)
            :                 :           :           :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (557)
            :                 :           :           :           :           :           :           :           :           :           :           :           :- Sort (552)
            :                 :           :           :           :           :           :           :           :           :           :           :           :  +- Exchange (551)
            :                 :           :           :           :           :           :           :           :           :           :           :           :     +- Project (550)
            :                 :           :           :           :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (549)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :- Sort (544)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :  +- Exchange (543)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :     +- Project (542)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (541)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :- Sort (536)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :  +- Exchange (535)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :     +- Project (534)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (533)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :- Sort (528)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :  +- Exchange (527)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :     +- Project (526)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (525)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :- Sort (508)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :  +- Exchange (507)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :     +- Project (506)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (505)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :- Sort (500)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :  +- Exchange (499)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :     +- Filter (498)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :        +- Scan parquet (497)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           +- Sort (504)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :              +- Exchange (503)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                 +- Filter (502)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                    +- Scan parquet (501)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           +- Sort (524)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :              +- Project (523)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                 +- Filter (522)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                    +- HashAggregate (521)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                       +- Exchange (520)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                          +- HashAggregate (519)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                             +- Project (518)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                +- SortMergeJoin Inner (517)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                   :- Sort (512)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                   :  +- Exchange (511)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                   :     +- Filter (510)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                   :        +- Scan parquet (509)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                   +- Sort (516)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                      +- Exchange (515)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                         +- Filter (514)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                            +- Scan parquet (513)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :           +- Sort (532)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :              +- Exchange (531)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :                 +- Filter (530)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           :                    +- Scan parquet (529)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :           +- Sort (540)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :              +- Exchange (539)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :                 +- Filter (538)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           :                    +- Scan parquet (537)
            :                 :           :           :           :           :           :           :           :           :           :           :           :           +- Sort (548)
            :                 :           :           :           :           :           :           :           :           :           :           :           :              +- Exchange (547)
            :                 :           :           :           :           :           :           :           :           :           :           :           :                 +- Filter (546)
            :                 :           :           :           :           :           :           :           :           :           :           :           :                    +- Scan parquet (545)
            :                 :           :           :           :           :           :           :           :           :           :           :           +- Sort (556)
            :                 :           :           :           :           :           :           :           :           :           :           :              +- Exchange (555)
            :                 :           :           :           :           :           :           :           :           :           :           :                 +- Filter (554)
            :                 :           :           :           :           :           :           :           :           :           :           :                    +- Scan parquet (553)
            :                 :           :           :           :           :           :           :           :           :           :           +- Sort (564)
            :                 :           :           :           :           :           :           :           :           :           :              +- Exchange (563)
            :                 :           :           :           :           :           :           :           :           :           :                 +- Filter (562)
            :                 :           :           :           :           :           :           :           :           :           :                    +- Scan parquet (561)
            :                 :           :           :           :           :           :           :           :           :           +- Sort (572)
            :                 :           :           :           :           :           :           :           :           :              +- Exchange (571)
            :                 :           :           :           :           :           :           :           :           :                 +- Filter (570)
            :                 :           :           :           :           :           :           :           :           :                    +- Scan parquet (569)
            :                 :           :           :           :           :           :           :           :           +- Sort (580)
            :                 :           :           :           :           :           :           :           :              +- Exchange (579)
            :                 :           :           :           :           :           :           :           :                 +- Filter (578)
            :                 :           :           :           :           :           :           :           :                    +- Scan parquet (577)
            :                 :           :           :           :           :           :           :           +- Sort (588)
            :                 :           :           :           :           :           :           :              +- Exchange (587)
            :                 :           :           :           :           :           :           :                 +- Filter (586)
            :                 :           :           :           :           :           :           :                    +- Scan parquet (585)
            :                 :           :           :           :           :           :           +- Sort (596)
            :                 :           :           :           :           :           :              +- Exchange (595)
            :                 :           :           :           :           :           :                 +- Filter (594)
            :                 :           :           :           :           :           :                    +- Scan parquet (593)
            :                 :           :           :           :           :           +- Sort (604)
            :                 :           :           :           :           :              +- Exchange (603)
            :                 :           :           :           :           :                 +- Filter (602)
            :                 :           :           :           :           :                    +- Scan parquet (601)
            :                 :           :           :           :           +- Sort (612)
            :                 :           :           :           :              +- Exchange (611)
            :                 :           :           :           :                 +- Filter (610)
            :                 :           :           :           :                    +- Scan parquet (609)
            :                 :           :           :           +- Sort (620)
            :                 :           :           :              +- Exchange (619)
            :                 :           :           :                 +- Filter (618)
            :                 :           :           :                    +- Scan parquet (617)
            :                 :           :           +- Sort (628)
            :                 :           :              +- Exchange (627)
            :                 :           :                 +- Filter (626)
            :                 :           :                    +- Scan parquet (625)
            :                 :           +- Sort (636)
            :                 :              +- Exchange (635)
            :                 :                 +- Filter (634)
            :                 :                    +- Scan parquet (633)
            :                 +- Sort (645)
            :                    +- Exchange (644)
            :                       +- Project (643)
            :                          +- Filter (642)
            :                             +- Scan parquet (641)
            +- Sort (806)
               +- Exchange (805)
                  +- HashAggregate (804)
                     +- HashAggregate (803)
                        +- Project (802)
                           +- SortMergeJoin Inner (801)
                              :- Sort (795)
                              :  +- Exchange (794)
                              :     +- Project (793)
                              :        +- SortMergeJoin Inner (792)
                              :           :- Sort (787)
                              :           :  +- Exchange (786)
                              :           :     +- Project (785)
                              :           :        +- SortMergeJoin Inner (784)
                              :           :           :- Sort (779)
                              :           :           :  +- Exchange (778)
                              :           :           :     +- Project (777)
                              :           :           :        +- SortMergeJoin Inner (776)
                              :           :           :           :- Sort (771)
                              :           :           :           :  +- Exchange (770)
                              :           :           :           :     +- Project (769)
                              :           :           :           :        +- SortMergeJoin Inner (768)
                              :           :           :           :           :- Sort (763)
                              :           :           :           :           :  +- Exchange (762)
                              :           :           :           :           :     +- Project (761)
                              :           :           :           :           :        +- SortMergeJoin Inner (760)
                              :           :           :           :           :           :- Sort (755)
                              :           :           :           :           :           :  +- Exchange (754)
                              :           :           :           :           :           :     +- Project (753)
                              :           :           :           :           :           :        +- SortMergeJoin Inner (752)
                              :           :           :           :           :           :           :- Sort (747)
                              :           :           :           :           :           :           :  +- Exchange (746)
                              :           :           :           :           :           :           :     +- Project (745)
                              :           :           :           :           :           :           :        +- SortMergeJoin Inner (744)
                              :           :           :           :           :           :           :           :- Sort (739)
                              :           :           :           :           :           :           :           :  +- Exchange (738)
                              :           :           :           :           :           :           :           :     +- Project (737)
                              :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (736)
                              :           :           :           :           :           :           :           :           :- Sort (731)
                              :           :           :           :           :           :           :           :           :  +- Exchange (730)
                              :           :           :           :           :           :           :           :           :     +- Project (729)
                              :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (728)
                              :           :           :           :           :           :           :           :           :           :- Sort (723)
                              :           :           :           :           :           :           :           :           :           :  +- Exchange (722)
                              :           :           :           :           :           :           :           :           :           :     +- Project (721)
                              :           :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (720)
                              :           :           :           :           :           :           :           :           :           :           :- Sort (715)
                              :           :           :           :           :           :           :           :           :           :           :  +- Exchange (714)
                              :           :           :           :           :           :           :           :           :           :           :     +- Project (713)
                              :           :           :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (712)
                              :           :           :           :           :           :           :           :           :           :           :           :- Sort (707)
                              :           :           :           :           :           :           :           :           :           :           :           :  +- Exchange (706)
                              :           :           :           :           :           :           :           :           :           :           :           :     +- Project (705)
                              :           :           :           :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (704)
                              :           :           :           :           :           :           :           :           :           :           :           :           :- Sort (699)
                              :           :           :           :           :           :           :           :           :           :           :           :           :  +- Exchange (698)
                              :           :           :           :           :           :           :           :           :           :           :           :           :     +- Project (697)
                              :           :           :           :           :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (696)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :- Sort (691)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :  +- Exchange (690)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :     +- Project (689)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (688)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :- Sort (683)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :  +- Exchange (682)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :     +- Project (681)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (680)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :- Sort (663)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :  +- Exchange (662)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :     +- Project (661)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :        +- SortMergeJoin Inner (660)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :- Sort (655)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :  +- Exchange (654)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :     +- Filter (653)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :        +- Scan parquet (652)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           +- Sort (659)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :              +- Exchange (658)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                 +- Filter (657)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                    +- Scan parquet (656)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :           +- Sort (679)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :              +- Project (678)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                 +- Filter (677)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                    +- HashAggregate (676)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                       +- Exchange (675)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                          +- HashAggregate (674)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                             +- Project (673)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                +- SortMergeJoin Inner (672)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                   :- Sort (667)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                   :  +- Exchange (666)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                   :     +- Filter (665)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                   :        +- Scan parquet (664)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                   +- Sort (671)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                      +- Exchange (670)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                         +- Filter (669)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           :                                            +- Scan parquet (668)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :           +- Sort (687)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :              +- Exchange (686)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :                 +- Filter (685)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           :                    +- Scan parquet (684)
                              :           :           :           :           :           :           :           :           :           :           :           :           :           +- Sort (695)
                              :           :           :           :           :           :           :           :           :           :           :           :           :              +- Exchange (694)
                              :           :           :           :           :           :           :           :           :           :           :           :           :                 +- Filter (693)
                              :           :           :           :           :           :           :           :           :           :           :           :           :                    +- Scan parquet (692)
                              :           :           :           :           :           :           :           :           :           :           :           :           +- Sort (703)
                              :           :           :           :           :           :           :           :           :           :           :           :              +- Exchange (702)
                              :           :           :           :           :           :           :           :           :           :           :           :                 +- Filter (701)
                              :           :           :           :           :           :           :           :           :           :           :           :                    +- Scan parquet (700)
                              :           :           :           :           :           :           :           :           :           :           :           +- Sort (711)
                              :           :           :           :           :           :           :           :           :           :           :              +- Exchange (710)
                              :           :           :           :           :           :           :           :           :           :           :                 +- Filter (709)
                              :           :           :           :           :           :           :           :           :           :           :                    +- Scan parquet (708)
                              :           :           :           :           :           :           :           :           :           :           +- Sort (719)
                              :           :           :           :           :           :           :           :           :           :              +- Exchange (718)
                              :           :           :           :           :           :           :           :           :           :                 +- Filter (717)
                              :           :           :           :           :           :           :           :           :           :                    +- Scan parquet (716)
                              :           :           :           :           :           :           :           :           :           +- Sort (727)
                              :           :           :           :           :           :           :           :           :              +- Exchange (726)
                              :           :           :           :           :           :           :           :           :                 +- Filter (725)
                              :           :           :           :           :           :           :           :           :                    +- Scan parquet (724)
                              :           :           :           :           :           :           :           :           +- Sort (735)
                              :           :           :           :           :           :           :           :              +- Exchange (734)
                              :           :           :           :           :           :           :           :                 +- Filter (733)
                              :           :           :           :           :           :           :           :                    +- Scan parquet (732)
                              :           :           :           :           :           :           :           +- Sort (743)
                              :           :           :           :           :           :           :              +- Exchange (742)
                              :           :           :           :           :           :           :                 +- Filter (741)
                              :           :           :           :           :           :           :                    +- Scan parquet (740)
                              :           :           :           :           :           :           +- Sort (751)
                              :           :           :           :           :           :              +- Exchange (750)
                              :           :           :           :           :           :                 +- Filter (749)
                              :           :           :           :           :           :                    +- Scan parquet (748)
                              :           :           :           :           :           +- Sort (759)
                              :           :           :           :           :              +- Exchange (758)
                              :           :           :           :           :                 +- Filter (757)
                              :           :           :           :           :                    +- Scan parquet (756)
                              :           :           :           :           +- Sort (767)
                              :           :           :           :              +- Exchange (766)
                              :           :           :           :                 +- Filter (765)
                              :           :           :           :                    +- Scan parquet (764)
                              :           :           :           +- Sort (775)
                              :           :           :              +- Exchange (774)
                              :           :           :                 +- Filter (773)
                              :           :           :                    +- Scan parquet (772)
                              :           :           +- Sort (783)
                              :           :              +- Exchange (782)
                              :           :                 +- Filter (781)
                              :           :                    +- Scan parquet (780)
                              :           +- Sort (791)
                              :              +- Exchange (790)
                              :                 +- Filter (789)
                              :                    +- Scan parquet (788)
                              +- Sort (800)
                                 +- Exchange (799)
                                    +- Project (798)
                                       +- Filter (797)
                                          +- Scan parquet (796)


(497) Scan parquet
Output [12]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_ticket_number#9, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_sold_date_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)]
ReadSchema: struct<ss_sold_date_sk:int,ss_item_sk:int,ss_customer_sk:int,ss_cdemo_sk:int,ss_hdemo_sk:int,ss_addr_sk:int,ss_store_sk:int,ss_promo_sk:int,ss_ticket_number:int,ss_wholesale_cost:decimal(7,2),ss_list_price:decimal(7,2),ss_coupon_amt:decimal(7,2)>

(2) InputAdapter
Input [12]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_ticket_number#9, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Arguments: [#1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12]

(3) NativeFilter
Input [12]: [#1#1, #2#2, #3#3, #4#4, #5#5, #6#6, #7#7, #8#8, #9#9, #10#10, #11#11, #12#12]
Condition : ((((((((isnotnull(ss_item_sk#2) AND isnotnull(ss_ticket_number#9)) AND isnotnull(ss_sold_date_sk#1)) AND isnotnull(ss_store_sk#7)) AND isnotnull(ss_customer_sk#3)) AND isnotnull(ss_cdemo_sk#4)) AND isnotnull(ss_promo_sk#8)) AND isnotnull(ss_hdemo_sk#5)) AND isnotnull(ss_addr_sk#6))

(4) NativeShuffleExchange
Input [12]: [#1#1, #2#2, #3#3, #4#4, #5#5, #6#6, #7#7, #8#8, #9#9, #10#10, #11#11, #12#12]
Arguments: hashpartitioning(ss_item_sk#2, ss_ticket_number#9, 100), ENSURE_REQUIREMENTS, [plan_id=1]

(5) ShuffleQueryStage
Output [12]: [#1#1, #2#2, #3#3, #4#4, #5#5, #6#6, #7#7, #8#8, #9#9, #10#10, #11#11, #12#12]
Arguments: X

(6) AQEShuffleRead
Input [12]: [#1#1, #2#2, #3#3, #4#4, #5#5, #6#6, #7#7, #8#8, #9#9, #10#10, #11#11, #12#12]
Arguments: coalesced

(7) InputAdapter
Input [12]: [#1#1, #2#2, #3#3, #4#4, #5#5, #6#6, #7#7, #8#8, #9#9, #10#10, #11#11, #12#12]

(8) NativeSort
Input [12]: [#1#1, #2#2, #3#3, #4#4, #5#5, #6#6, #7#7, #8#8, #9#9, #10#10, #11#11, #12#12]
Arguments: [ss_item_sk#2 ASC NULLS FIRST, ss_ticket_number#9 ASC NULLS FIRST], false

(501) Scan parquet
Output [2]: [sr_item_sk#13, sr_ticket_number#14]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)]
ReadSchema: struct<sr_item_sk:int,sr_ticket_number:int>

(10) InputAdapter
Input [2]: [sr_item_sk#13, sr_ticket_number#14]
Arguments: [#13, #14]

(11) NativeFilter
Input [2]: [#13#13, #14#14]
Condition : (isnotnull(sr_item_sk#13) AND isnotnull(sr_ticket_number#14))

(12) NativeShuffleExchange
Input [2]: [#13#13, #14#14]
Arguments: hashpartitioning(sr_item_sk#13, sr_ticket_number#14, 100), ENSURE_REQUIREMENTS, [plan_id=2]

(13) ShuffleQueryStage
Output [2]: [#13#13, #14#14]
Arguments: X

(14) AQEShuffleRead
Input [2]: [#13#13, #14#14]
Arguments: coalesced

(15) InputAdapter
Input [2]: [#13#13, #14#14]

(16) NativeSort
Input [2]: [#13#13, #14#14]
Arguments: [sr_item_sk#13 ASC NULLS FIRST, sr_ticket_number#14 ASC NULLS FIRST], false

(17) NativeSortMergeJoin
Left keys [2]: [ss_item_sk#2, ss_ticket_number#9]
Right keys [2]: [sr_item_sk#13, sr_ticket_number#14]
Join type: Inner
Join condition: None

(18) NativeProject
Output [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Input [14]: [#1#1, #2#2, #3#3, #4#4, #5#5, #6#6, #7#7, #8#8, #9#9, #10#10, #11#11, #12#12, #13#13, #14#14]

(19) NativeShuffleExchange
Input [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Arguments: hashpartitioning(ss_item_sk#2, 100), ENSURE_REQUIREMENTS, [plan_id=3]

(20) ShuffleQueryStage
Output [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Arguments: X

(21) AQEShuffleRead
Input [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Arguments: coalesced

(22) InputAdapter
Input [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]

(23) NativeSort
Input [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Arguments: [ss_item_sk#2 ASC NULLS FIRST], false

(509) Scan parquet
Output [3]: [cs_item_sk#15, cs_order_number#16, cs_ext_list_price#17]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_order_number)]
ReadSchema: struct<cs_item_sk:int,cs_order_number:int,cs_ext_list_price:decimal(7,2)>

(25) InputAdapter
Input [3]: [cs_item_sk#15, cs_order_number#16, cs_ext_list_price#17]
Arguments: [#15, #16, #17]

(26) NativeFilter
Input [3]: [#15#15, #16#16, #17#17]
Condition : (isnotnull(cs_item_sk#15) AND isnotnull(cs_order_number#16))

(27) NativeShuffleExchange
Input [3]: [#15#15, #16#16, #17#17]
Arguments: hashpartitioning(cs_item_sk#15, cs_order_number#16, 100), ENSURE_REQUIREMENTS, [plan_id=4]

(28) ShuffleQueryStage
Output [3]: [#15#15, #16#16, #17#17]
Arguments: X

(29) AQEShuffleRead
Input [3]: [#15#15, #16#16, #17#17]
Arguments: coalesced

(30) InputAdapter
Input [3]: [#15#15, #16#16, #17#17]

(31) NativeSort
Input [3]: [#15#15, #16#16, #17#17]
Arguments: [cs_item_sk#15 ASC NULLS FIRST, cs_order_number#16 ASC NULLS FIRST], false

(513) Scan parquet
Output [5]: [cr_item_sk#18, cr_order_number#19, cr_refunded_cash#20, cr_reversed_charge#21, cr_store_credit#22]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)]
ReadSchema: struct<cr_item_sk:int,cr_order_number:int,cr_refunded_cash:decimal(7,2),cr_reversed_charge:decimal(7,2),cr_store_credit:decimal(7,2)>

(33) InputAdapter
Input [5]: [cr_item_sk#18, cr_order_number#19, cr_refunded_cash#20, cr_reversed_charge#21, cr_store_credit#22]
Arguments: [#18, #19, #20, #21, #22]

(34) NativeFilter
Input [5]: [#18#18, #19#19, #20#20, #21#21, #22#22]
Condition : (isnotnull(cr_item_sk#18) AND isnotnull(cr_order_number#19))

(35) NativeShuffleExchange
Input [5]: [#18#18, #19#19, #20#20, #21#21, #22#22]
Arguments: hashpartitioning(cr_item_sk#18, cr_order_number#19, 100), ENSURE_REQUIREMENTS, [plan_id=5]

(36) ShuffleQueryStage
Output [5]: [#18#18, #19#19, #20#20, #21#21, #22#22]
Arguments: X

(37) AQEShuffleRead
Input [5]: [#18#18, #19#19, #20#20, #21#21, #22#22]
Arguments: coalesced

(38) InputAdapter
Input [5]: [#18#18, #19#19, #20#20, #21#21, #22#22]

(39) NativeSort
Input [5]: [#18#18, #19#19, #20#20, #21#21, #22#22]
Arguments: [cr_item_sk#18 ASC NULLS FIRST, cr_order_number#19 ASC NULLS FIRST], false

(40) NativeSortMergeJoin
Left keys [2]: [cs_item_sk#15, cs_order_number#16]
Right keys [2]: [cr_item_sk#18, cr_order_number#19]
Join type: Inner
Join condition: None

(41) NativeProject
Output [5]: [cs_item_sk#15, cs_ext_list_price#17, cr_refunded_cash#20, cr_reversed_charge#21, cr_store_credit#22]
Input [8]: [#15#15, #16#16, #17#17, #18#18, #19#19, #20#20, #21#21, #22#22]

(42) NativeProject
Output [3]: [cs_item_sk#15 AS cs_item_sk#15, UnscaledValue(cs_ext_list_price#17) AS _c1#23, ((cr_refunded_cash#20 + cr_reversed_charge#21) + cr_store_credit#22) AS _c2#24]
Input [5]: [cs_item_sk#15, cs_ext_list_price#17, cr_refunded_cash#20, cr_reversed_charge#21, cr_store_credit#22]

(43) NativeHashAggregate
Input [3]: [cs_item_sk#15, _c1#23, _c2#24]
Keys [1]: [cs_item_sk#15]
Functions [2]: [partial_sum(_c1#23), partial_sum(_c2#24)]
Aggregate Attributes [3]: [sum#25, sum#26, isEmpty#27]
Results [3]: [cs_item_sk#15, #28, #29]

(44) NativeShuffleExchange
Input [3]: [cs_item_sk#15, #28, #29]
Arguments: hashpartitioning(cs_item_sk#15, 100), ENSURE_REQUIREMENTS, [plan_id=6]

(45) ShuffleQueryStage
Output [3]: [cs_item_sk#15, #28, #29]
Arguments: X

(46) AQEShuffleRead
Input [3]: [cs_item_sk#15, #28, #29]
Arguments: coalesced

(47) InputAdapter
Input [3]: [cs_item_sk#15, #28, #29]

(48) NativeHashAggregate
Input [3]: [cs_item_sk#15, #28, #29]
Keys [1]: [cs_item_sk#15]
Functions [2]: [sum(UnscaledValue(cs_ext_list_price#17)), sum(((cr_refunded_cash#20 + cr_reversed_charge#21) + cr_store_credit#22))]
Aggregate Attributes [2]: [sum(UnscaledValue(cs_ext_list_price#17))#30, sum(((cr_refunded_cash#20 + cr_reversed_charge#21) + cr_store_credit#22))#31]
Results [3]: [cs_item_sk#15, sum(UnscaledValue(cs_ext_list_price#17))#30, sum(((cr_refunded_cash#20 + cr_reversed_charge#21) + cr_store_credit#22))#31]

(49) NativeProject
Output [3]: [cs_item_sk#15, MakeDecimal(sum(UnscaledValue(cs_ext_list_price#17))#30,17,2) AS sale#32, sum(((cr_refunded_cash#20 + cr_reversed_charge#21) + cr_store_credit#22))#31 AS refund#33]
Input [3]: [cs_item_sk#15, sum(UnscaledValue(cs_ext_list_price#17))#30, sum(((cr_refunded_cash#20 + cr_reversed_charge#21) + cr_store_credit#22))#31]

(50) NativeFilter
Input [3]: [cs_item_sk#15, sale#32, refund#33]
Condition : ((isnotnull(sale#32) AND isnotnull(refund#33)) AND (cast(sale#32 as decimal(21,2)) > (2 * refund#33)))

(51) NativeProject
Output [1]: [cs_item_sk#15]
Input [3]: [cs_item_sk#15, sale#32, refund#33]

(52) NativeSort
Input [1]: [cs_item_sk#15]
Arguments: [cs_item_sk#15 ASC NULLS FIRST], false

(53) NativeSortMergeJoin
Left keys [1]: [ss_item_sk#2]
Right keys [1]: [cs_item_sk#15]
Join type: Inner
Join condition: None

(54) NativeProject
Output [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Input [12]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, cs_item_sk#15]

(55) NativeShuffleExchange
Input [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Arguments: hashpartitioning(ss_sold_date_sk#1, 100), ENSURE_REQUIREMENTS, [plan_id=7]

(56) ShuffleQueryStage
Output [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Arguments: X

(57) AQEShuffleRead
Input [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Arguments: coalesced

(58) InputAdapter
Input [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]

(59) NativeSort
Input [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Arguments: [ss_sold_date_sk#1 ASC NULLS FIRST], false

(529) Scan parquet
Output [2]: [d_date_sk#34, d_year#35]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk)]
ReadSchema: struct<d_date_sk:int,d_year:int>

(61) InputAdapter
Input [2]: [d_date_sk#34, d_year#35]
Arguments: [#34, #35]

(62) NativeFilter
Input [2]: [#34#34, #35#35]
Condition : ((isnotnull(d_year#35) AND (d_year#35 = 1999)) AND isnotnull(d_date_sk#34))

(63) NativeShuffleExchange
Input [2]: [#34#34, #35#35]
Arguments: hashpartitioning(d_date_sk#34, 100), ENSURE_REQUIREMENTS, [plan_id=8]

(64) ShuffleQueryStage
Output [2]: [#34#34, #35#35]
Arguments: X

(65) AQEShuffleRead
Input [2]: [#34#34, #35#35]
Arguments: coalesced

(66) InputAdapter
Input [2]: [#34#34, #35#35]

(67) NativeSort
Input [2]: [#34#34, #35#35]
Arguments: [d_date_sk#34 ASC NULLS FIRST], false

(68) NativeSortMergeJoin
Left keys [1]: [ss_sold_date_sk#1]
Right keys [1]: [d_date_sk#34]
Join type: Inner
Join condition: None

(69) NativeProject
Output [11]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35]
Input [13]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, #34#34, #35#35]

(70) NativeShuffleExchange
Input [11]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35]
Arguments: hashpartitioning(ss_store_sk#7, 100), ENSURE_REQUIREMENTS, [plan_id=9]

(71) ShuffleQueryStage
Output [11]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35]
Arguments: X

(72) AQEShuffleRead
Input [11]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35]
Arguments: coalesced

(73) InputAdapter
Input [11]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35]

(74) NativeSort
Input [11]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35]
Arguments: [ss_store_sk#7 ASC NULLS FIRST], false

(537) Scan parquet
Output [3]: [s_store_sk#36, s_store_name#37, s_zip#38]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_zip)]
ReadSchema: struct<s_store_sk:int,s_store_name:string,s_zip:string>

(76) InputAdapter
Input [3]: [s_store_sk#36, s_store_name#37, s_zip#38]
Arguments: [#36, #37, #38]

(77) NativeFilter
Input [3]: [#36#36, #37#37, #38#38]
Condition : ((isnotnull(s_store_sk#36) AND isnotnull(s_store_name#37)) AND isnotnull(s_zip#38))

(78) NativeShuffleExchange
Input [3]: [#36#36, #37#37, #38#38]
Arguments: hashpartitioning(s_store_sk#36, 100), ENSURE_REQUIREMENTS, [plan_id=10]

(79) ShuffleQueryStage
Output [3]: [#36#36, #37#37, #38#38]
Arguments: X

(80) AQEShuffleRead
Input [3]: [#36#36, #37#37, #38#38]
Arguments: coalesced

(81) InputAdapter
Input [3]: [#36#36, #37#37, #38#38]

(82) NativeSort
Input [3]: [#36#36, #37#37, #38#38]
Arguments: [s_store_sk#36 ASC NULLS FIRST], false

(83) NativeSortMergeJoin
Left keys [1]: [ss_store_sk#7]
Right keys [1]: [s_store_sk#36]
Join type: Inner
Join condition: None

(84) NativeProject
Output [12]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38]
Input [14]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, #36#36, #37#37, #38#38]

(85) NativeShuffleExchange
Input [12]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38]
Arguments: hashpartitioning(ss_customer_sk#3, 100), ENSURE_REQUIREMENTS, [plan_id=11]

(86) ShuffleQueryStage
Output [12]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38]
Arguments: X

(87) AQEShuffleRead
Input [12]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38]
Arguments: coalesced

(88) InputAdapter
Input [12]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38]

(89) NativeSort
Input [12]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38]
Arguments: [ss_customer_sk#3 ASC NULLS FIRST], false

(545) Scan parquet
Output [6]: [c_customer_sk#39, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_first_sales_date_sk), IsNotNull(c_first_shipto_date_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk), IsNotNull(c_current_addr_sk)]
ReadSchema: struct<c_customer_sk:int,c_current_cdemo_sk:int,c_current_hdemo_sk:int,c_current_addr_sk:int,c_first_shipto_date_sk:int,c_first_sales_date_sk:int>

(91) InputAdapter
Input [6]: [c_customer_sk#39, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]
Arguments: [#39, #40, #41, #42, #43, #44]

(92) NativeFilter
Input [6]: [#39#39, #40#40, #41#41, #42#42, #43#43, #44#44]
Condition : (((((isnotnull(c_customer_sk#39) AND isnotnull(c_first_sales_date_sk#44)) AND isnotnull(c_first_shipto_date_sk#43)) AND isnotnull(c_current_cdemo_sk#40)) AND isnotnull(c_current_hdemo_sk#41)) AND isnotnull(c_current_addr_sk#42))

(93) NativeShuffleExchange
Input [6]: [#39#39, #40#40, #41#41, #42#42, #43#43, #44#44]
Arguments: hashpartitioning(c_customer_sk#39, 100), ENSURE_REQUIREMENTS, [plan_id=12]

(94) ShuffleQueryStage
Output [6]: [#39#39, #40#40, #41#41, #42#42, #43#43, #44#44]
Arguments: X

(95) AQEShuffleRead
Input [6]: [#39#39, #40#40, #41#41, #42#42, #43#43, #44#44]
Arguments: coalesced

(96) InputAdapter
Input [6]: [#39#39, #40#40, #41#41, #42#42, #43#43, #44#44]

(97) NativeSort
Input [6]: [#39#39, #40#40, #41#41, #42#42, #43#43, #44#44]
Arguments: [c_customer_sk#39 ASC NULLS FIRST], false

(98) NativeSortMergeJoin
Left keys [1]: [ss_customer_sk#3]
Right keys [1]: [c_customer_sk#39]
Join type: Inner
Join condition: None

(99) NativeProject
Output [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]
Input [18]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, #39#39, #40#40, #41#41, #42#42, #43#43, #44#44]

(100) NativeShuffleExchange
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]
Arguments: hashpartitioning(c_first_sales_date_sk#44, 100), ENSURE_REQUIREMENTS, [plan_id=13]

(101) ShuffleQueryStage
Output [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]
Arguments: X

(102) AQEShuffleRead
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]
Arguments: coalesced

(103) InputAdapter
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]

(104) NativeSort
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]
Arguments: [c_first_sales_date_sk#44 ASC NULLS FIRST], false

(553) Scan parquet
Output [2]: [d_date_sk#45, d_year#46]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(d_date_sk)]
ReadSchema: struct<d_date_sk:int,d_year:int>

(106) InputAdapter
Input [2]: [d_date_sk#45, d_year#46]
Arguments: [#45, #46]

(107) NativeFilter
Input [2]: [#45#45, #46#46]
Condition : isnotnull(d_date_sk#45)

(108) NativeShuffleExchange
Input [2]: [#45#45, #46#46]
Arguments: hashpartitioning(d_date_sk#45, 100), ENSURE_REQUIREMENTS, [plan_id=14]

(109) ShuffleQueryStage
Output [2]: [#45#45, #46#46]
Arguments: X

(110) AQEShuffleRead
Input [2]: [#45#45, #46#46]
Arguments: coalesced

(111) InputAdapter
Input [2]: [#45#45, #46#46]

(112) NativeSort
Input [2]: [#45#45, #46#46]
Arguments: [d_date_sk#45 ASC NULLS FIRST], false

(113) NativeSortMergeJoin
Left keys [1]: [c_first_sales_date_sk#44]
Right keys [1]: [d_date_sk#45]
Join type: Inner
Join condition: None

(114) NativeProject
Output [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, d_year#46]
Input [18]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44, #45#45, #46#46]

(115) NativeShuffleExchange
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, d_year#46]
Arguments: hashpartitioning(c_first_shipto_date_sk#43, 100), ENSURE_REQUIREMENTS, [plan_id=15]

(116) ShuffleQueryStage
Output [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, d_year#46]
Arguments: X

(117) AQEShuffleRead
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, d_year#46]
Arguments: coalesced

(118) InputAdapter
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, d_year#46]

(119) NativeSort
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, d_year#46]
Arguments: [c_first_shipto_date_sk#43 ASC NULLS FIRST], false

(120) ReusedExchange [Reuses operator id: 108]
Output [2]: [d_date_sk#47, d_year#48]

(121) ShuffleQueryStage
Output [2]: [d_date_sk#47, d_year#48]
Arguments: X

(122) AQEShuffleRead
Input [2]: [d_date_sk#47, d_year#48]
Arguments: coalesced

(123) InputAdapter
Input [2]: [d_date_sk#47, d_year#48]
Arguments: [#47, #48]

(124) InputAdapter
Input [2]: [#47#47, #48#48]

(125) NativeSort
Input [2]: [#47#47, #48#48]
Arguments: [d_date_sk#47 ASC NULLS FIRST], false

(126) NativeSortMergeJoin
Left keys [1]: [c_first_shipto_date_sk#43]
Right keys [1]: [d_date_sk#47]
Join type: Inner
Join condition: None

(127) NativeProject
Output [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Input [18]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, d_year#46, #47#47, #48#48]

(128) NativeShuffleExchange
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: hashpartitioning(ss_cdemo_sk#4, 100), ENSURE_REQUIREMENTS, [plan_id=16]

(129) ShuffleQueryStage
Output [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: X

(130) AQEShuffleRead
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: coalesced

(131) InputAdapter
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]

(132) NativeSort
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: [ss_cdemo_sk#4 ASC NULLS FIRST], false

(569) Scan parquet
Output [2]: [cd_demo_sk#49, cd_marital_status#50]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status)]
ReadSchema: struct<cd_demo_sk:int,cd_marital_status:string>

(134) InputAdapter
Input [2]: [cd_demo_sk#49, cd_marital_status#50]
Arguments: [#49, #50]

(135) NativeFilter
Input [2]: [#49#49, #50#50]
Condition : (isnotnull(cd_demo_sk#49) AND isnotnull(cd_marital_status#50))

(136) NativeShuffleExchange
Input [2]: [#49#49, #50#50]
Arguments: hashpartitioning(cd_demo_sk#49, 100), ENSURE_REQUIREMENTS, [plan_id=17]

(137) ShuffleQueryStage
Output [2]: [#49#49, #50#50]
Arguments: X

(138) AQEShuffleRead
Input [2]: [#49#49, #50#50]
Arguments: coalesced

(139) InputAdapter
Input [2]: [#49#49, #50#50]

(140) NativeSort
Input [2]: [#49#49, #50#50]
Arguments: [cd_demo_sk#49 ASC NULLS FIRST], false

(141) NativeSortMergeJoin
Left keys [1]: [ss_cdemo_sk#4]
Right keys [1]: [cd_demo_sk#49]
Join type: Inner
Join condition: None

(142) NativeProject
Output [16]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, cd_marital_status#50]
Input [18]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, #49#49, #50#50]

(143) NativeShuffleExchange
Input [16]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, cd_marital_status#50]
Arguments: hashpartitioning(c_current_cdemo_sk#40, 100), ENSURE_REQUIREMENTS, [plan_id=18]

(144) ShuffleQueryStage
Output [16]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, cd_marital_status#50]
Arguments: X

(145) AQEShuffleRead
Input [16]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, cd_marital_status#50]
Arguments: coalesced

(146) InputAdapter
Input [16]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, cd_marital_status#50]

(147) NativeSort
Input [16]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, cd_marital_status#50]
Arguments: [c_current_cdemo_sk#40 ASC NULLS FIRST], false

(148) ReusedExchange [Reuses operator id: 136]
Output [2]: [cd_demo_sk#51, cd_marital_status#52]

(149) ShuffleQueryStage
Output [2]: [cd_demo_sk#51, cd_marital_status#52]
Arguments: X

(150) AQEShuffleRead
Input [2]: [cd_demo_sk#51, cd_marital_status#52]
Arguments: coalesced

(151) InputAdapter
Input [2]: [cd_demo_sk#51, cd_marital_status#52]
Arguments: [#51, #52]

(152) InputAdapter
Input [2]: [#51#51, #52#52]

(153) NativeSort
Input [2]: [#51#51, #52#52]
Arguments: [cd_demo_sk#51 ASC NULLS FIRST], false

(154) SortMergeJoin [codegen id : X]
Left keys [1]: [c_current_cdemo_sk#40]
Right keys [1]: [cd_demo_sk#51]
Join type: Inner
Join condition: NOT (cd_marital_status#50 = cd_marital_status#52)

(155) Project [codegen id : X]
Output [14]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Input [18]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, cd_marital_status#50, #51#51, #52#52]

(156) ConvertToNative
Input [14]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]

(157) NativeShuffleExchange
Input [14]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: hashpartitioning(ss_promo_sk#8, 100), ENSURE_REQUIREMENTS, [plan_id=19]

(158) ShuffleQueryStage
Output [14]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: X

(159) AQEShuffleRead
Input [14]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: coalesced

(160) InputAdapter
Input [14]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]

(161) NativeSort
Input [14]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: [ss_promo_sk#8 ASC NULLS FIRST], false

(585) Scan parquet
Output [1]: [p_promo_sk#53]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(p_promo_sk)]
ReadSchema: struct<p_promo_sk:int>

(163) InputAdapter
Input [1]: [p_promo_sk#53]
Arguments: [#53]

(164) NativeFilter
Input [1]: [#53#53]
Condition : isnotnull(p_promo_sk#53)

(165) NativeShuffleExchange
Input [1]: [#53#53]
Arguments: hashpartitioning(p_promo_sk#53, 100), ENSURE_REQUIREMENTS, [plan_id=20]

(166) ShuffleQueryStage
Output [1]: [#53#53]
Arguments: X

(167) AQEShuffleRead
Input [1]: [#53#53]
Arguments: coalesced

(168) InputAdapter
Input [1]: [#53#53]

(169) NativeSort
Input [1]: [#53#53]
Arguments: [p_promo_sk#53 ASC NULLS FIRST], false

(170) NativeSortMergeJoin
Left keys [1]: [ss_promo_sk#8]
Right keys [1]: [p_promo_sk#53]
Join type: Inner
Join condition: None

(171) NativeProject
Output [13]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Input [15]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, #53#53]

(172) NativeShuffleExchange
Input [13]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: hashpartitioning(ss_hdemo_sk#5, 100), ENSURE_REQUIREMENTS, [plan_id=21]

(173) ShuffleQueryStage
Output [13]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: X

(174) AQEShuffleRead
Input [13]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: coalesced

(175) InputAdapter
Input [13]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]

(176) NativeSort
Input [13]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: [ss_hdemo_sk#5 ASC NULLS FIRST], false

(593) Scan parquet
Output [2]: [hd_demo_sk#54, hd_income_band_sk#55]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)]
ReadSchema: struct<hd_demo_sk:int,hd_income_band_sk:int>

(178) InputAdapter
Input [2]: [hd_demo_sk#54, hd_income_band_sk#55]
Arguments: [#54, #55]

(179) NativeFilter
Input [2]: [#54#54, #55#55]
Condition : (isnotnull(hd_demo_sk#54) AND isnotnull(hd_income_band_sk#55))

(180) NativeShuffleExchange
Input [2]: [#54#54, #55#55]
Arguments: hashpartitioning(hd_demo_sk#54, 100), ENSURE_REQUIREMENTS, [plan_id=22]

(181) ShuffleQueryStage
Output [2]: [#54#54, #55#55]
Arguments: X

(182) AQEShuffleRead
Input [2]: [#54#54, #55#55]
Arguments: coalesced

(183) InputAdapter
Input [2]: [#54#54, #55#55]

(184) NativeSort
Input [2]: [#54#54, #55#55]
Arguments: [hd_demo_sk#54 ASC NULLS FIRST], false

(185) NativeSortMergeJoin
Left keys [1]: [ss_hdemo_sk#5]
Right keys [1]: [hd_demo_sk#54]
Join type: Inner
Join condition: None

(186) NativeProject
Output [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55]
Input [15]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, #54#54, #55#55]

(187) NativeShuffleExchange
Input [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55]
Arguments: hashpartitioning(c_current_hdemo_sk#41, 100), ENSURE_REQUIREMENTS, [plan_id=23]

(188) ShuffleQueryStage
Output [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55]
Arguments: X

(189) AQEShuffleRead
Input [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55]
Arguments: coalesced

(190) InputAdapter
Input [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55]

(191) NativeSort
Input [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55]
Arguments: [c_current_hdemo_sk#41 ASC NULLS FIRST], false

(192) ReusedExchange [Reuses operator id: 180]
Output [2]: [hd_demo_sk#56, hd_income_band_sk#57]

(193) ShuffleQueryStage
Output [2]: [hd_demo_sk#56, hd_income_band_sk#57]
Arguments: X

(194) AQEShuffleRead
Input [2]: [hd_demo_sk#56, hd_income_band_sk#57]
Arguments: coalesced

(195) InputAdapter
Input [2]: [hd_demo_sk#56, hd_income_band_sk#57]
Arguments: [#56, #57]

(196) InputAdapter
Input [2]: [#56#56, #57#57]

(197) NativeSort
Input [2]: [#56#56, #57#57]
Arguments: [hd_demo_sk#56 ASC NULLS FIRST], false

(198) NativeSortMergeJoin
Left keys [1]: [c_current_hdemo_sk#41]
Right keys [1]: [hd_demo_sk#56]
Join type: Inner
Join condition: None

(199) NativeProject
Output [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57]
Input [15]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, #56#56, #57#57]

(200) NativeShuffleExchange
Input [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57]
Arguments: hashpartitioning(ss_addr_sk#6, 100), ENSURE_REQUIREMENTS, [plan_id=24]

(201) ShuffleQueryStage
Output [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57]
Arguments: X

(202) AQEShuffleRead
Input [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57]
Arguments: coalesced

(203) InputAdapter
Input [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57]

(204) NativeSort
Input [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57]
Arguments: [ss_addr_sk#6 ASC NULLS FIRST], false

(609) Scan parquet
Output [5]: [ca_address_sk#58, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(ca_address_sk)]
ReadSchema: struct<ca_address_sk:int,ca_street_number:string,ca_street_name:string,ca_city:string,ca_zip:string>

(206) InputAdapter
Input [5]: [ca_address_sk#58, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]
Arguments: [#58, #59, #60, #61, #62]

(207) NativeFilter
Input [5]: [#58#58, #59#59, #60#60, #61#61, #62#62]
Condition : isnotnull(ca_address_sk#58)

(208) NativeShuffleExchange
Input [5]: [#58#58, #59#59, #60#60, #61#61, #62#62]
Arguments: hashpartitioning(ca_address_sk#58, 100), ENSURE_REQUIREMENTS, [plan_id=25]

(209) ShuffleQueryStage
Output [5]: [#58#58, #59#59, #60#60, #61#61, #62#62]
Arguments: X

(210) AQEShuffleRead
Input [5]: [#58#58, #59#59, #60#60, #61#61, #62#62]
Arguments: coalesced

(211) InputAdapter
Input [5]: [#58#58, #59#59, #60#60, #61#61, #62#62]

(212) NativeSort
Input [5]: [#58#58, #59#59, #60#60, #61#61, #62#62]
Arguments: [ca_address_sk#58 ASC NULLS FIRST], false

(213) NativeSortMergeJoin
Left keys [1]: [ss_addr_sk#6]
Right keys [1]: [ca_address_sk#58]
Join type: Inner
Join condition: None

(214) NativeProject
Output [16]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]
Input [18]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, #58#58, #59#59, #60#60, #61#61, #62#62]

(215) NativeShuffleExchange
Input [16]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]
Arguments: hashpartitioning(c_current_addr_sk#42, 100), ENSURE_REQUIREMENTS, [plan_id=26]

(216) ShuffleQueryStage
Output [16]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]
Arguments: X

(217) AQEShuffleRead
Input [16]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]
Arguments: coalesced

(218) InputAdapter
Input [16]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]

(219) NativeSort
Input [16]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]
Arguments: [c_current_addr_sk#42 ASC NULLS FIRST], false

(220) ReusedExchange [Reuses operator id: 208]
Output [5]: [ca_address_sk#63, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]

(221) ShuffleQueryStage
Output [5]: [ca_address_sk#63, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: X

(222) AQEShuffleRead
Input [5]: [ca_address_sk#63, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: coalesced

(223) InputAdapter
Input [5]: [ca_address_sk#63, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: [#63, #64, #65, #66, #67]

(224) InputAdapter
Input [5]: [#63#63, #64#64, #65#65, #66#66, #67#67]

(225) NativeSort
Input [5]: [#63#63, #64#64, #65#65, #66#66, #67#67]
Arguments: [ca_address_sk#63 ASC NULLS FIRST], false

(226) NativeSortMergeJoin
Left keys [1]: [c_current_addr_sk#42]
Right keys [1]: [ca_address_sk#63]
Join type: Inner
Join condition: None

(227) NativeProject
Output [19]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Input [21]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, #63#63, #64#64, #65#65, #66#66, #67#67]

(228) NativeShuffleExchange
Input [19]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: hashpartitioning(hd_income_band_sk#55, 100), ENSURE_REQUIREMENTS, [plan_id=27]

(229) ShuffleQueryStage
Output [19]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: X

(230) AQEShuffleRead
Input [19]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: coalesced

(231) InputAdapter
Input [19]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]

(232) NativeSort
Input [19]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: [hd_income_band_sk#55 ASC NULLS FIRST], false

(625) Scan parquet
Output [1]: [ib_income_band_sk#68]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(ib_income_band_sk)]
ReadSchema: struct<ib_income_band_sk:int>

(234) InputAdapter
Input [1]: [ib_income_band_sk#68]
Arguments: [#68]

(235) NativeFilter
Input [1]: [#68#68]
Condition : isnotnull(ib_income_band_sk#68)

(236) NativeShuffleExchange
Input [1]: [#68#68]
Arguments: hashpartitioning(ib_income_band_sk#68, 100), ENSURE_REQUIREMENTS, [plan_id=28]

(237) ShuffleQueryStage
Output [1]: [#68#68]
Arguments: X

(238) AQEShuffleRead
Input [1]: [#68#68]
Arguments: coalesced

(239) InputAdapter
Input [1]: [#68#68]

(240) NativeSort
Input [1]: [#68#68]
Arguments: [ib_income_band_sk#68 ASC NULLS FIRST], false

(241) NativeSortMergeJoin
Left keys [1]: [hd_income_band_sk#55]
Right keys [1]: [ib_income_band_sk#68]
Join type: Inner
Join condition: None

(242) NativeProject
Output [18]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Input [20]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, #68#68]

(243) NativeShuffleExchange
Input [18]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: hashpartitioning(hd_income_band_sk#57, 100), ENSURE_REQUIREMENTS, [plan_id=29]

(244) ShuffleQueryStage
Output [18]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: X

(245) AQEShuffleRead
Input [18]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: coalesced

(246) InputAdapter
Input [18]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]

(247) NativeSort
Input [18]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: [hd_income_band_sk#57 ASC NULLS FIRST], false

(248) ReusedExchange [Reuses operator id: 236]
Output [1]: [ib_income_band_sk#69]

(249) ShuffleQueryStage
Output [1]: [ib_income_band_sk#69]
Arguments: X

(250) AQEShuffleRead
Input [1]: [ib_income_band_sk#69]
Arguments: coalesced

(251) InputAdapter
Input [1]: [ib_income_band_sk#69]
Arguments: [#69]

(252) InputAdapter
Input [1]: [#69#69]

(253) NativeSort
Input [1]: [#69#69]
Arguments: [ib_income_band_sk#69 ASC NULLS FIRST], false

(254) NativeSortMergeJoin
Left keys [1]: [hd_income_band_sk#57]
Right keys [1]: [ib_income_band_sk#69]
Join type: Inner
Join condition: None

(255) NativeProject
Output [17]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Input [19]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, #69#69]

(256) NativeShuffleExchange
Input [17]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: hashpartitioning(ss_item_sk#2, 100), ENSURE_REQUIREMENTS, [plan_id=30]

(257) ShuffleQueryStage
Output [17]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: X

(258) AQEShuffleRead
Input [17]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: coalesced

(259) InputAdapter
Input [17]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]

(260) NativeSort
Input [17]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: [ss_item_sk#2 ASC NULLS FIRST], false

(641) Scan parquet
Output [4]: [i_item_sk#70, i_current_price#71, i_color#72, i_product_name#73]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(i_current_price), In(i_color, [burlywood,floral,indian,medium,purple,spring]), GreaterThanOrEqual(i_current_price,64.00), LessThanOrEqual(i_current_price,74.00), GreaterThanOrEqual(i_current_price,65.00), LessThanOrEqual(i_current_price,79.00), IsNotNull(i_item_sk)]
ReadSchema: struct<i_item_sk:int,i_current_price:decimal(7,2),i_color:string,i_product_name:string>

(262) InputAdapter
Input [4]: [i_item_sk#70, i_current_price#71, i_color#72, i_product_name#73]
Arguments: [#70, #71, #72, #73]

(263) NativeFilter
Input [4]: [#70#70, #71#71, #72#72, #73#73]
Condition : ((((((isnotnull(i_current_price#71) AND i_color#72 IN (purple,burlywood,indian,spring,floral,medium)) AND (i_current_price#71 >= 64.00)) AND (i_current_price#71 <= 74.00)) AND (i_current_price#71 >= 65.00)) AND (i_current_price#71 <= 79.00)) AND isnotnull(i_item_sk#70))

(264) NativeProject
Output [2]: [i_item_sk#70, i_product_name#73]
Input [4]: [#70#70, #71#71, #72#72, #73#73]

(265) NativeShuffleExchange
Input [2]: [i_item_sk#70, i_product_name#73]
Arguments: hashpartitioning(i_item_sk#70, 100), ENSURE_REQUIREMENTS, [plan_id=31]

(266) ShuffleQueryStage
Output [2]: [i_item_sk#70, i_product_name#73]
Arguments: X

(267) AQEShuffleRead
Input [2]: [i_item_sk#70, i_product_name#73]
Arguments: coalesced

(268) InputAdapter
Input [2]: [i_item_sk#70, i_product_name#73]

(269) NativeSort
Input [2]: [i_item_sk#70, i_product_name#73]
Arguments: [i_item_sk#70 ASC NULLS FIRST], false

(270) NativeSortMergeJoin
Left keys [1]: [ss_item_sk#2]
Right keys [1]: [i_item_sk#70]
Join type: Inner
Join condition: None

(271) NativeProject
Output [18]: [ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, d_year#46, d_year#48, s_store_name#37, s_zip#38, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, i_item_sk#70, i_product_name#73]
Input [19]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, i_item_sk#70, i_product_name#73]

(272) NativeProject
Output [18]: [i_product_name#73 AS i_product_name#73, i_item_sk#70 AS i_item_sk#70, s_store_name#37 AS s_store_name#37, s_zip#38 AS s_zip#38, ca_street_number#59 AS ca_street_number#59, ca_street_name#60 AS ca_street_name#60, ca_city#61 AS ca_city#61, ca_zip#62 AS ca_zip#62, ca_street_number#64 AS ca_street_number#64, ca_street_name#65 AS ca_street_name#65, ca_city#66 AS ca_city#66, ca_zip#67 AS ca_zip#67, d_year#35 AS d_year#35, d_year#46 AS d_year#46, d_year#48 AS d_year#48, UnscaledValue(ss_wholesale_cost#10) AS _c15#74, UnscaledValue(ss_list_price#11) AS _c16#75, UnscaledValue(ss_coupon_amt#12) AS _c17#76]
Input [18]: [ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, d_year#46, d_year#48, s_store_name#37, s_zip#38, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, i_item_sk#70, i_product_name#73]

(273) NativeHashAggregate
Input [18]: [i_product_name#73, i_item_sk#70, s_store_name#37, s_zip#38, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, d_year#35, d_year#46, d_year#48, _c15#74, _c16#75, _c17#76]
Keys [15]: [i_product_name#73, i_item_sk#70, s_store_name#37, s_zip#38, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, d_year#35, d_year#46, d_year#48]
Functions [4]: [partial_count(1), partial_sum(_c15#74), partial_sum(_c16#75), partial_sum(_c17#76)]
Aggregate Attributes [4]: [count#77, sum#78, sum#79, sum#80]
Results [19]: [i_product_name#73, i_item_sk#70, s_store_name#37, s_zip#38, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, d_year#35, d_year#46, d_year#48, #28, #28, #28, #28]

(274) NativeHashAggregate
Input [19]: [i_product_name#73, i_item_sk#70, s_store_name#37, s_zip#38, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, d_year#35, d_year#46, d_year#48, #28, #28, #28, #28]
Keys [15]: [i_product_name#73, i_item_sk#70, s_store_name#37, s_zip#38, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, d_year#35, d_year#46, d_year#48]
Functions [4]: [count(1), sum(UnscaledValue(ss_wholesale_cost#10)), sum(UnscaledValue(ss_list_price#11)), sum(UnscaledValue(ss_coupon_amt#12))]
Aggregate Attributes [4]: [count(1)#81, sum(UnscaledValue(ss_wholesale_cost#10))#82, sum(UnscaledValue(ss_list_price#11))#83, sum(UnscaledValue(ss_coupon_amt#12))#84]
Results [19]: [i_product_name#73, i_item_sk#70, s_store_name#37, s_zip#38, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, d_year#35, d_year#46, d_year#48, count(1)#81, sum(UnscaledValue(ss_wholesale_cost#10))#82, sum(UnscaledValue(ss_list_price#11))#83, sum(UnscaledValue(ss_coupon_amt#12))#84]

(275) NativeProject
Output [17]: [i_product_name#73 AS product_name#85, i_item_sk#70 AS item_sk#86, s_store_name#37 AS store_name#87, s_zip#38 AS store_zip#88, ca_street_number#59 AS b_street_number#89, ca_street_name#60 AS b_streen_name#90, ca_city#61 AS b_city#91, ca_zip#62 AS b_zip#92, ca_street_number#64 AS c_street_number#93, ca_street_name#65 AS c_street_name#94, ca_city#66 AS c_city#95, ca_zip#67 AS c_zip#96, d_year#35 AS syear#97, count(1)#81 AS cnt#98, MakeDecimal(sum(UnscaledValue(ss_wholesale_cost#10))#82,17,2) AS s1#99, MakeDecimal(sum(UnscaledValue(ss_list_price#11))#83,17,2) AS s2#100, MakeDecimal(sum(UnscaledValue(ss_coupon_amt#12))#84,17,2) AS s3#101]
Input [19]: [i_product_name#73, i_item_sk#70, s_store_name#37, s_zip#38, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, d_year#35, d_year#46, d_year#48, count(1)#81, sum(UnscaledValue(ss_wholesale_cost#10))#82, sum(UnscaledValue(ss_list_price#11))#83, sum(UnscaledValue(ss_coupon_amt#12))#84]

(276) NativeShuffleExchange
Input [17]: [product_name#85, item_sk#86, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101]
Arguments: hashpartitioning(item_sk#86, store_name#87, store_zip#88, 100), ENSURE_REQUIREMENTS, [plan_id=32]

(277) ShuffleQueryStage
Output [17]: [product_name#85, item_sk#86, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101]
Arguments: X

(278) AQEShuffleRead
Input [17]: [product_name#85, item_sk#86, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101]
Arguments: coalesced

(279) InputAdapter
Input [17]: [product_name#85, item_sk#86, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101]

(280) NativeSort
Input [17]: [product_name#85, item_sk#86, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101]
Arguments: [item_sk#86 ASC NULLS FIRST, store_name#87 ASC NULLS FIRST, store_zip#88 ASC NULLS FIRST], false

(281) ReusedExchange [Reuses operator id: 55]
Output [11]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112]

(282) ShuffleQueryStage
Output [11]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112]
Arguments: X

(283) AQEShuffleRead
Input [11]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112]
Arguments: coalesced

(284) InputAdapter
Input [11]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112]
Arguments: [#102, #103, #104, #105, #106, #107, #108, #109, #110, #111, #112]

(285) InputAdapter
Input [11]: [#102#102, #103#103, #104#104, #105#105, #106#106, #107#107, #108#108, #109#109, #110#110, #111#111, #112#112]

(286) NativeSort
Input [11]: [#102#102, #103#103, #104#104, #105#105, #106#106, #107#107, #108#108, #109#109, #110#110, #111#111, #112#112]
Arguments: [ss_sold_date_sk#102 ASC NULLS FIRST], false

(684) Scan parquet
Output [2]: [d_date_sk#113, d_year#114]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)]
ReadSchema: struct<d_date_sk:int,d_year:int>

(288) InputAdapter
Input [2]: [d_date_sk#113, d_year#114]
Arguments: [#113, #114]

(289) NativeFilter
Input [2]: [#113#113, #114#114]
Condition : ((isnotnull(d_year#114) AND (d_year#114 = 2000)) AND isnotnull(d_date_sk#113))

(290) NativeShuffleExchange
Input [2]: [#113#113, #114#114]
Arguments: hashpartitioning(d_date_sk#113, 100), ENSURE_REQUIREMENTS, [plan_id=33]

(291) ShuffleQueryStage
Output [2]: [#113#113, #114#114]
Arguments: X

(292) AQEShuffleRead
Input [2]: [#113#113, #114#114]
Arguments: coalesced

(293) InputAdapter
Input [2]: [#113#113, #114#114]

(294) NativeSort
Input [2]: [#113#113, #114#114]
Arguments: [d_date_sk#113 ASC NULLS FIRST], false

(295) NativeSortMergeJoin
Left keys [1]: [ss_sold_date_sk#102]
Right keys [1]: [d_date_sk#113]
Join type: Inner
Join condition: None

(296) NativeProject
Output [11]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114]
Input [13]: [#102#102, #103#103, #104#104, #105#105, #106#106, #107#107, #108#108, #109#109, #110#110, #111#111, #112#112, #113#113, #114#114]

(297) NativeShuffleExchange
Input [11]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114]
Arguments: hashpartitioning(ss_store_sk#108, 100), ENSURE_REQUIREMENTS, [plan_id=34]

(298) ShuffleQueryStage
Output [11]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114]
Arguments: X

(299) AQEShuffleRead
Input [11]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114]
Arguments: coalesced

(300) InputAdapter
Input [11]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114]

(301) NativeSort
Input [11]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114]
Arguments: [ss_store_sk#108 ASC NULLS FIRST], false

(302) ReusedExchange [Reuses operator id: 78]
Output [3]: [s_store_sk#115, s_store_name#116, s_zip#117]

(303) ShuffleQueryStage
Output [3]: [s_store_sk#115, s_store_name#116, s_zip#117]
Arguments: X

(304) AQEShuffleRead
Input [3]: [s_store_sk#115, s_store_name#116, s_zip#117]
Arguments: coalesced

(305) InputAdapter
Input [3]: [s_store_sk#115, s_store_name#116, s_zip#117]
Arguments: [#115, #116, #117]

(306) InputAdapter
Input [3]: [#115#115, #116#116, #117#117]

(307) NativeSort
Input [3]: [#115#115, #116#116, #117#117]
Arguments: [s_store_sk#115 ASC NULLS FIRST], false

(308) NativeSortMergeJoin
Left keys [1]: [ss_store_sk#108]
Right keys [1]: [s_store_sk#115]
Join type: Inner
Join condition: None

(309) NativeProject
Output [12]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117]
Input [14]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, #115#115, #116#116, #117#117]

(310) NativeShuffleExchange
Input [12]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117]
Arguments: hashpartitioning(ss_customer_sk#104, 100), ENSURE_REQUIREMENTS, [plan_id=35]

(311) ShuffleQueryStage
Output [12]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117]
Arguments: X

(312) AQEShuffleRead
Input [12]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117]
Arguments: coalesced

(313) InputAdapter
Input [12]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117]

(314) NativeSort
Input [12]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117]
Arguments: [ss_customer_sk#104 ASC NULLS FIRST], false

(315) ReusedExchange [Reuses operator id: 93]
Output [6]: [c_customer_sk#118, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]

(316) ShuffleQueryStage
Output [6]: [c_customer_sk#118, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]
Arguments: X

(317) AQEShuffleRead
Input [6]: [c_customer_sk#118, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]
Arguments: coalesced

(318) InputAdapter
Input [6]: [c_customer_sk#118, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]
Arguments: [#118, #119, #120, #121, #122, #123]

(319) InputAdapter
Input [6]: [#118#118, #119#119, #120#120, #121#121, #122#122, #123#123]

(320) NativeSort
Input [6]: [#118#118, #119#119, #120#120, #121#121, #122#122, #123#123]
Arguments: [c_customer_sk#118 ASC NULLS FIRST], false

(321) NativeSortMergeJoin
Left keys [1]: [ss_customer_sk#104]
Right keys [1]: [c_customer_sk#118]
Join type: Inner
Join condition: None

(322) NativeProject
Output [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]
Input [18]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, #118#118, #119#119, #120#120, #121#121, #122#122, #123#123]

(323) NativeShuffleExchange
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]
Arguments: hashpartitioning(c_first_sales_date_sk#123, 100), ENSURE_REQUIREMENTS, [plan_id=36]

(324) ShuffleQueryStage
Output [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]
Arguments: X

(325) AQEShuffleRead
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]
Arguments: coalesced

(326) InputAdapter
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]

(327) NativeSort
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]
Arguments: [c_first_sales_date_sk#123 ASC NULLS FIRST], false

(328) ReusedExchange [Reuses operator id: 108]
Output [2]: [d_date_sk#124, d_year#125]

(329) ShuffleQueryStage
Output [2]: [d_date_sk#124, d_year#125]
Arguments: X

(330) AQEShuffleRead
Input [2]: [d_date_sk#124, d_year#125]
Arguments: coalesced

(331) InputAdapter
Input [2]: [d_date_sk#124, d_year#125]
Arguments: [#124, #125]

(332) InputAdapter
Input [2]: [#124#124, #125#125]

(333) NativeSort
Input [2]: [#124#124, #125#125]
Arguments: [d_date_sk#124 ASC NULLS FIRST], false

(334) NativeSortMergeJoin
Left keys [1]: [c_first_sales_date_sk#123]
Right keys [1]: [d_date_sk#124]
Join type: Inner
Join condition: None

(335) NativeProject
Output [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, d_year#125]
Input [18]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123, #124#124, #125#125]

(336) NativeShuffleExchange
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, d_year#125]
Arguments: hashpartitioning(c_first_shipto_date_sk#122, 100), ENSURE_REQUIREMENTS, [plan_id=37]

(337) ShuffleQueryStage
Output [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, d_year#125]
Arguments: X

(338) AQEShuffleRead
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, d_year#125]
Arguments: coalesced

(339) InputAdapter
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, d_year#125]

(340) NativeSort
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, d_year#125]
Arguments: [c_first_shipto_date_sk#122 ASC NULLS FIRST], false

(341) ReusedExchange [Reuses operator id: 108]
Output [2]: [d_date_sk#126, d_year#127]

(342) ShuffleQueryStage
Output [2]: [d_date_sk#126, d_year#127]
Arguments: X

(343) AQEShuffleRead
Input [2]: [d_date_sk#126, d_year#127]
Arguments: coalesced

(344) InputAdapter
Input [2]: [d_date_sk#126, d_year#127]
Arguments: [#126, #127]

(345) InputAdapter
Input [2]: [#126#126, #127#127]

(346) NativeSort
Input [2]: [#126#126, #127#127]
Arguments: [d_date_sk#126 ASC NULLS FIRST], false

(347) NativeSortMergeJoin
Left keys [1]: [c_first_shipto_date_sk#122]
Right keys [1]: [d_date_sk#126]
Join type: Inner
Join condition: None

(348) NativeProject
Output [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Input [18]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, d_year#125, #126#126, #127#127]

(349) NativeShuffleExchange
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: hashpartitioning(ss_cdemo_sk#105, 100), ENSURE_REQUIREMENTS, [plan_id=38]

(350) ShuffleQueryStage
Output [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: X

(351) AQEShuffleRead
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: coalesced

(352) InputAdapter
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]

(353) NativeSort
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: [ss_cdemo_sk#105 ASC NULLS FIRST], false

(354) ReusedExchange [Reuses operator id: 136]
Output [2]: [cd_demo_sk#128, cd_marital_status#129]

(355) ShuffleQueryStage
Output [2]: [cd_demo_sk#128, cd_marital_status#129]
Arguments: X

(356) AQEShuffleRead
Input [2]: [cd_demo_sk#128, cd_marital_status#129]
Arguments: coalesced

(357) InputAdapter
Input [2]: [cd_demo_sk#128, cd_marital_status#129]
Arguments: [#128, #129]

(358) InputAdapter
Input [2]: [#128#128, #129#129]

(359) NativeSort
Input [2]: [#128#128, #129#129]
Arguments: [cd_demo_sk#128 ASC NULLS FIRST], false

(360) NativeSortMergeJoin
Left keys [1]: [ss_cdemo_sk#105]
Right keys [1]: [cd_demo_sk#128]
Join type: Inner
Join condition: None

(361) NativeProject
Output [16]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, cd_marital_status#129]
Input [18]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, #128#128, #129#129]

(362) NativeShuffleExchange
Input [16]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, cd_marital_status#129]
Arguments: hashpartitioning(c_current_cdemo_sk#119, 100), ENSURE_REQUIREMENTS, [plan_id=39]

(363) ShuffleQueryStage
Output [16]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, cd_marital_status#129]
Arguments: X

(364) AQEShuffleRead
Input [16]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, cd_marital_status#129]
Arguments: coalesced

(365) InputAdapter
Input [16]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, cd_marital_status#129]

(366) NativeSort
Input [16]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, cd_marital_status#129]
Arguments: [c_current_cdemo_sk#119 ASC NULLS FIRST], false

(367) ReusedExchange [Reuses operator id: 136]
Output [2]: [cd_demo_sk#130, cd_marital_status#131]

(368) ShuffleQueryStage
Output [2]: [cd_demo_sk#130, cd_marital_status#131]
Arguments: X

(369) AQEShuffleRead
Input [2]: [cd_demo_sk#130, cd_marital_status#131]
Arguments: coalesced

(370) InputAdapter
Input [2]: [cd_demo_sk#130, cd_marital_status#131]
Arguments: [#130, #131]

(371) InputAdapter
Input [2]: [#130#130, #131#131]

(372) NativeSort
Input [2]: [#130#130, #131#131]
Arguments: [cd_demo_sk#130 ASC NULLS FIRST], false

(373) SortMergeJoin [codegen id : X]
Left keys [1]: [c_current_cdemo_sk#119]
Right keys [1]: [cd_demo_sk#130]
Join type: Inner
Join condition: NOT (cd_marital_status#129 = cd_marital_status#131)

(374) Project [codegen id : X]
Output [14]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Input [18]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, cd_marital_status#129, #130#130, #131#131]

(375) ConvertToNative
Input [14]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]

(376) NativeShuffleExchange
Input [14]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: hashpartitioning(ss_promo_sk#109, 100), ENSURE_REQUIREMENTS, [plan_id=40]

(377) ShuffleQueryStage
Output [14]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: X

(378) AQEShuffleRead
Input [14]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: coalesced

(379) InputAdapter
Input [14]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]

(380) NativeSort
Input [14]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: [ss_promo_sk#109 ASC NULLS FIRST], false

(381) ReusedExchange [Reuses operator id: 165]
Output [1]: [p_promo_sk#132]

(382) ShuffleQueryStage
Output [1]: [p_promo_sk#132]
Arguments: X

(383) AQEShuffleRead
Input [1]: [p_promo_sk#132]
Arguments: coalesced

(384) InputAdapter
Input [1]: [p_promo_sk#132]
Arguments: [#132]

(385) InputAdapter
Input [1]: [#132#132]

(386) NativeSort
Input [1]: [#132#132]
Arguments: [p_promo_sk#132 ASC NULLS FIRST], false

(387) NativeSortMergeJoin
Left keys [1]: [ss_promo_sk#109]
Right keys [1]: [p_promo_sk#132]
Join type: Inner
Join condition: None

(388) NativeProject
Output [13]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Input [15]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, #132#132]

(389) NativeShuffleExchange
Input [13]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: hashpartitioning(ss_hdemo_sk#106, 100), ENSURE_REQUIREMENTS, [plan_id=41]

(390) ShuffleQueryStage
Output [13]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: X

(391) AQEShuffleRead
Input [13]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: coalesced

(392) InputAdapter
Input [13]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]

(393) NativeSort
Input [13]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: [ss_hdemo_sk#106 ASC NULLS FIRST], false

(394) ReusedExchange [Reuses operator id: 180]
Output [2]: [hd_demo_sk#133, hd_income_band_sk#134]

(395) ShuffleQueryStage
Output [2]: [hd_demo_sk#133, hd_income_band_sk#134]
Arguments: X

(396) AQEShuffleRead
Input [2]: [hd_demo_sk#133, hd_income_band_sk#134]
Arguments: coalesced

(397) InputAdapter
Input [2]: [hd_demo_sk#133, hd_income_band_sk#134]
Arguments: [#133, #134]

(398) InputAdapter
Input [2]: [#133#133, #134#134]

(399) NativeSort
Input [2]: [#133#133, #134#134]
Arguments: [hd_demo_sk#133 ASC NULLS FIRST], false

(400) NativeSortMergeJoin
Left keys [1]: [ss_hdemo_sk#106]
Right keys [1]: [hd_demo_sk#133]
Join type: Inner
Join condition: None

(401) NativeProject
Output [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134]
Input [15]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, #133#133, #134#134]

(402) NativeShuffleExchange
Input [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134]
Arguments: hashpartitioning(c_current_hdemo_sk#120, 100), ENSURE_REQUIREMENTS, [plan_id=42]

(403) ShuffleQueryStage
Output [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134]
Arguments: X

(404) AQEShuffleRead
Input [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134]
Arguments: coalesced

(405) InputAdapter
Input [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134]

(406) NativeSort
Input [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134]
Arguments: [c_current_hdemo_sk#120 ASC NULLS FIRST], false

(407) ReusedExchange [Reuses operator id: 180]
Output [2]: [hd_demo_sk#135, hd_income_band_sk#136]

(408) ShuffleQueryStage
Output [2]: [hd_demo_sk#135, hd_income_band_sk#136]
Arguments: X

(409) AQEShuffleRead
Input [2]: [hd_demo_sk#135, hd_income_band_sk#136]
Arguments: coalesced

(410) InputAdapter
Input [2]: [hd_demo_sk#135, hd_income_band_sk#136]
Arguments: [#135, #136]

(411) InputAdapter
Input [2]: [#135#135, #136#136]

(412) NativeSort
Input [2]: [#135#135, #136#136]
Arguments: [hd_demo_sk#135 ASC NULLS FIRST], false

(413) NativeSortMergeJoin
Left keys [1]: [c_current_hdemo_sk#120]
Right keys [1]: [hd_demo_sk#135]
Join type: Inner
Join condition: None

(414) NativeProject
Output [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136]
Input [15]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, #135#135, #136#136]

(415) NativeShuffleExchange
Input [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136]
Arguments: hashpartitioning(ss_addr_sk#107, 100), ENSURE_REQUIREMENTS, [plan_id=43]

(416) ShuffleQueryStage
Output [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136]
Arguments: X

(417) AQEShuffleRead
Input [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136]
Arguments: coalesced

(418) InputAdapter
Input [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136]

(419) NativeSort
Input [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136]
Arguments: [ss_addr_sk#107 ASC NULLS FIRST], false

(420) ReusedExchange [Reuses operator id: 208]
Output [5]: [ca_address_sk#137, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]

(421) ShuffleQueryStage
Output [5]: [ca_address_sk#137, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]
Arguments: X

(422) AQEShuffleRead
Input [5]: [ca_address_sk#137, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]
Arguments: coalesced

(423) InputAdapter
Input [5]: [ca_address_sk#137, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]
Arguments: [#137, #138, #139, #140, #141]

(424) InputAdapter
Input [5]: [#137#137, #138#138, #139#139, #140#140, #141#141]

(425) NativeSort
Input [5]: [#137#137, #138#138, #139#139, #140#140, #141#141]
Arguments: [ca_address_sk#137 ASC NULLS FIRST], false

(426) NativeSortMergeJoin
Left keys [1]: [ss_addr_sk#107]
Right keys [1]: [ca_address_sk#137]
Join type: Inner
Join condition: None

(427) NativeProject
Output [16]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]
Input [18]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, #137#137, #138#138, #139#139, #140#140, #141#141]

(428) NativeShuffleExchange
Input [16]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]
Arguments: hashpartitioning(c_current_addr_sk#121, 100), ENSURE_REQUIREMENTS, [plan_id=44]

(429) ShuffleQueryStage
Output [16]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]
Arguments: X

(430) AQEShuffleRead
Input [16]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]
Arguments: coalesced

(431) InputAdapter
Input [16]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]

(432) NativeSort
Input [16]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]
Arguments: [c_current_addr_sk#121 ASC NULLS FIRST], false

(433) ReusedExchange [Reuses operator id: 208]
Output [5]: [ca_address_sk#142, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]

(434) ShuffleQueryStage
Output [5]: [ca_address_sk#142, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: X

(435) AQEShuffleRead
Input [5]: [ca_address_sk#142, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: coalesced

(436) InputAdapter
Input [5]: [ca_address_sk#142, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: [#142, #143, #144, #145, #146]

(437) InputAdapter
Input [5]: [#142#142, #143#143, #144#144, #145#145, #146#146]

(438) NativeSort
Input [5]: [#142#142, #143#143, #144#144, #145#145, #146#146]
Arguments: [ca_address_sk#142 ASC NULLS FIRST], false

(439) NativeSortMergeJoin
Left keys [1]: [c_current_addr_sk#121]
Right keys [1]: [ca_address_sk#142]
Join type: Inner
Join condition: None

(440) NativeProject
Output [19]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Input [21]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, #142#142, #143#143, #144#144, #145#145, #146#146]

(441) NativeShuffleExchange
Input [19]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: hashpartitioning(hd_income_band_sk#134, 100), ENSURE_REQUIREMENTS, [plan_id=45]

(442) ShuffleQueryStage
Output [19]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: X

(443) AQEShuffleRead
Input [19]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: coalesced

(444) InputAdapter
Input [19]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]

(445) NativeSort
Input [19]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: [hd_income_band_sk#134 ASC NULLS FIRST], false

(446) ReusedExchange [Reuses operator id: 236]
Output [1]: [ib_income_band_sk#147]

(447) ShuffleQueryStage
Output [1]: [ib_income_band_sk#147]
Arguments: X

(448) AQEShuffleRead
Input [1]: [ib_income_band_sk#147]
Arguments: coalesced

(449) InputAdapter
Input [1]: [ib_income_band_sk#147]
Arguments: [#147]

(450) InputAdapter
Input [1]: [#147#147]

(451) NativeSort
Input [1]: [#147#147]
Arguments: [ib_income_band_sk#147 ASC NULLS FIRST], false

(452) NativeSortMergeJoin
Left keys [1]: [hd_income_band_sk#134]
Right keys [1]: [ib_income_band_sk#147]
Join type: Inner
Join condition: None

(453) NativeProject
Output [18]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Input [20]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, #147#147]

(454) NativeShuffleExchange
Input [18]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: hashpartitioning(hd_income_band_sk#136, 100), ENSURE_REQUIREMENTS, [plan_id=46]

(455) ShuffleQueryStage
Output [18]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: X

(456) AQEShuffleRead
Input [18]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: coalesced

(457) InputAdapter
Input [18]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]

(458) NativeSort
Input [18]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: [hd_income_band_sk#136 ASC NULLS FIRST], false

(459) ReusedExchange [Reuses operator id: 236]
Output [1]: [ib_income_band_sk#148]

(460) ShuffleQueryStage
Output [1]: [ib_income_band_sk#148]
Arguments: X

(461) AQEShuffleRead
Input [1]: [ib_income_band_sk#148]
Arguments: coalesced

(462) InputAdapter
Input [1]: [ib_income_band_sk#148]
Arguments: [#148]

(463) InputAdapter
Input [1]: [#148#148]

(464) NativeSort
Input [1]: [#148#148]
Arguments: [ib_income_band_sk#148 ASC NULLS FIRST], false

(465) NativeSortMergeJoin
Left keys [1]: [hd_income_band_sk#136]
Right keys [1]: [ib_income_band_sk#148]
Join type: Inner
Join condition: None

(466) NativeProject
Output [17]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Input [19]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, #148#148]

(467) NativeShuffleExchange
Input [17]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: hashpartitioning(ss_item_sk#103, 100), ENSURE_REQUIREMENTS, [plan_id=47]

(468) ShuffleQueryStage
Output [17]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: X

(469) AQEShuffleRead
Input [17]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: coalesced

(470) InputAdapter
Input [17]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]

(471) NativeSort
Input [17]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: [ss_item_sk#103 ASC NULLS FIRST], false

(472) ReusedExchange [Reuses operator id: 265]
Output [2]: [i_item_sk#149, i_product_name#150]

(473) ShuffleQueryStage
Output [2]: [i_item_sk#149, i_product_name#150]
Arguments: X

(474) AQEShuffleRead
Input [2]: [i_item_sk#149, i_product_name#150]
Arguments: coalesced

(475) InputAdapter
Input [2]: [i_item_sk#149, i_product_name#150]
Arguments: [#149, #150]

(476) InputAdapter
Input [2]: [#149#149, #150#150]

(477) NativeSort
Input [2]: [#149#149, #150#150]
Arguments: [i_item_sk#149 ASC NULLS FIRST], false

(478) NativeSortMergeJoin
Left keys [1]: [ss_item_sk#103]
Right keys [1]: [i_item_sk#149]
Join type: Inner
Join condition: None

(479) NativeProject
Output [18]: [ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, d_year#125, d_year#127, s_store_name#116, s_zip#117, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, i_item_sk#149, i_product_name#150]
Input [19]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, #149#149, #150#150]

(480) NativeProject
Output [18]: [i_product_name#150 AS i_product_name#150, i_item_sk#149 AS i_item_sk#149, s_store_name#116 AS s_store_name#116, s_zip#117 AS s_zip#117, ca_street_number#138 AS ca_street_number#138, ca_street_name#139 AS ca_street_name#139, ca_city#140 AS ca_city#140, ca_zip#141 AS ca_zip#141, ca_street_number#143 AS ca_street_number#143, ca_street_name#144 AS ca_street_name#144, ca_city#145 AS ca_city#145, ca_zip#146 AS ca_zip#146, d_year#114 AS d_year#114, d_year#125 AS d_year#125, d_year#127 AS d_year#127, UnscaledValue(ss_wholesale_cost#110) AS _c15#151, UnscaledValue(ss_list_price#111) AS _c16#152, UnscaledValue(ss_coupon_amt#112) AS _c17#153]
Input [18]: [ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, d_year#125, d_year#127, s_store_name#116, s_zip#117, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, i_item_sk#149, i_product_name#150]

(481) NativeHashAggregate
Input [18]: [i_product_name#150, i_item_sk#149, s_store_name#116, s_zip#117, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, d_year#114, d_year#125, d_year#127, _c15#151, _c16#152, _c17#153]
Keys [15]: [i_product_name#150, i_item_sk#149, s_store_name#116, s_zip#117, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, d_year#114, d_year#125, d_year#127]
Functions [4]: [partial_count(1), partial_sum(_c15#151), partial_sum(_c16#152), partial_sum(_c17#153)]
Aggregate Attributes [4]: [count#77, sum#154, sum#155, sum#156]
Results [19]: [i_product_name#150, i_item_sk#149, s_store_name#116, s_zip#117, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, d_year#114, d_year#125, d_year#127, #28, #28, #28, #28]

(482) NativeHashAggregate
Input [19]: [i_product_name#150, i_item_sk#149, s_store_name#116, s_zip#117, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, d_year#114, d_year#125, d_year#127, #28, #28, #28, #28]
Keys [15]: [i_product_name#150, i_item_sk#149, s_store_name#116, s_zip#117, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, d_year#114, d_year#125, d_year#127]
Functions [4]: [count(1), sum(UnscaledValue(ss_wholesale_cost#110)), sum(UnscaledValue(ss_list_price#111)), sum(UnscaledValue(ss_coupon_amt#112))]
Aggregate Attributes [4]: [count(1)#81, sum(UnscaledValue(ss_wholesale_cost#110))#82, sum(UnscaledValue(ss_list_price#111))#83, sum(UnscaledValue(ss_coupon_amt#112))#84]
Results [19]: [i_product_name#150, i_item_sk#149, s_store_name#116, s_zip#117, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, d_year#114, d_year#125, d_year#127, count(1)#81, sum(UnscaledValue(ss_wholesale_cost#110))#82, sum(UnscaledValue(ss_list_price#111))#83, sum(UnscaledValue(ss_coupon_amt#112))#84]

(483) NativeProject
Output [8]: [i_item_sk#149 AS item_sk#157, s_store_name#116 AS store_name#158, s_zip#117 AS store_zip#159, d_year#114 AS syear#160, count(1)#81 AS cnt#161, MakeDecimal(sum(UnscaledValue(ss_wholesale_cost#110))#82,17,2) AS s1#162, MakeDecimal(sum(UnscaledValue(ss_list_price#111))#83,17,2) AS s2#163, MakeDecimal(sum(UnscaledValue(ss_coupon_amt#112))#84,17,2) AS s3#164]
Input [19]: [i_product_name#150, i_item_sk#149, s_store_name#116, s_zip#117, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, d_year#114, d_year#125, d_year#127, count(1)#81, sum(UnscaledValue(ss_wholesale_cost#110))#82, sum(UnscaledValue(ss_list_price#111))#83, sum(UnscaledValue(ss_coupon_amt#112))#84]

(484) NativeShuffleExchange
Input [8]: [item_sk#157, store_name#158, store_zip#159, syear#160, cnt#161, s1#162, s2#163, s3#164]
Arguments: hashpartitioning(item_sk#157, store_name#158, store_zip#159, 100), ENSURE_REQUIREMENTS, [plan_id=48]

(485) ShuffleQueryStage
Output [8]: [item_sk#157, store_name#158, store_zip#159, syear#160, cnt#161, s1#162, s2#163, s3#164]
Arguments: X

(486) AQEShuffleRead
Input [8]: [item_sk#157, store_name#158, store_zip#159, syear#160, cnt#161, s1#162, s2#163, s3#164]
Arguments: coalesced

(487) InputAdapter
Input [8]: [item_sk#157, store_name#158, store_zip#159, syear#160, cnt#161, s1#162, s2#163, s3#164]

(488) NativeSort
Input [8]: [item_sk#157, store_name#158, store_zip#159, syear#160, cnt#161, s1#162, s2#163, s3#164]
Arguments: [item_sk#157 ASC NULLS FIRST, store_name#158 ASC NULLS FIRST, store_zip#159 ASC NULLS FIRST], false

(489) SortMergeJoin [codegen id : X]
Left keys [3]: [item_sk#86, store_name#87, store_zip#88]
Right keys [3]: [item_sk#157, store_name#158, store_zip#159]
Join type: Inner
Join condition: (cnt#161 <= cnt#98)

(490) Project [codegen id : X]
Output [21]: [product_name#85, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101, s1#162, s2#163, s3#164, syear#160, cnt#161]
Input [25]: [product_name#85, item_sk#86, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101, item_sk#157, store_name#158, store_zip#159, syear#160, cnt#161, s1#162, s2#163, s3#164]

(491) ConvertToNative
Input [21]: [product_name#85, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101, s1#162, s2#163, s3#164, syear#160, cnt#161]

(492) NativeShuffleExchange
Input [21]: [product_name#85, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101, s1#162, s2#163, s3#164, syear#160, cnt#161]
Arguments: rangepartitioning(product_name#85 ASC NULLS FIRST, store_name#87 ASC NULLS FIRST, cnt#161 ASC NULLS FIRST, s1#99 ASC NULLS FIRST, s1#162 ASC NULLS FIRST, 100), ENSURE_REQUIREMENTS, [plan_id=49]

(493) ShuffleQueryStage
Output [21]: [product_name#85, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101, s1#162, s2#163, s3#164, syear#160, cnt#161]
Arguments: X

(494) AQEShuffleRead
Input [21]: [product_name#85, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101, s1#162, s2#163, s3#164, syear#160, cnt#161]
Arguments: coalesced

(495) InputAdapter
Input [21]: [product_name#85, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101, s1#162, s2#163, s3#164, syear#160, cnt#161]

(496) NativeSort
Input [21]: [product_name#85, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101, s1#162, s2#163, s3#164, syear#160, cnt#161]
Arguments: [product_name#85 ASC NULLS FIRST, store_name#87 ASC NULLS FIRST, cnt#161 ASC NULLS FIRST, s1#99 ASC NULLS FIRST, s1#162 ASC NULLS FIRST], true

(497) Scan parquet
Output [12]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_ticket_number#9, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_sold_date_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)]
ReadSchema: struct<ss_sold_date_sk:int,ss_item_sk:int,ss_customer_sk:int,ss_cdemo_sk:int,ss_hdemo_sk:int,ss_addr_sk:int,ss_store_sk:int,ss_promo_sk:int,ss_ticket_number:int,ss_wholesale_cost:decimal(7,2),ss_list_price:decimal(7,2),ss_coupon_amt:decimal(7,2)>

(498) Filter
Input [12]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_ticket_number#9, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Condition : ((((((((isnotnull(ss_item_sk#2) AND isnotnull(ss_ticket_number#9)) AND isnotnull(ss_sold_date_sk#1)) AND isnotnull(ss_store_sk#7)) AND isnotnull(ss_customer_sk#3)) AND isnotnull(ss_cdemo_sk#4)) AND isnotnull(ss_promo_sk#8)) AND isnotnull(ss_hdemo_sk#5)) AND isnotnull(ss_addr_sk#6))

(499) Exchange
Input [12]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_ticket_number#9, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Arguments: hashpartitioning(ss_item_sk#2, ss_ticket_number#9, 100), ENSURE_REQUIREMENTS, [plan_id=50]

(500) Sort
Input [12]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_ticket_number#9, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Arguments: [ss_item_sk#2 ASC NULLS FIRST, ss_ticket_number#9 ASC NULLS FIRST], false, 0

(501) Scan parquet
Output [2]: [sr_item_sk#13, sr_ticket_number#14]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)]
ReadSchema: struct<sr_item_sk:int,sr_ticket_number:int>

(502) Filter
Input [2]: [sr_item_sk#13, sr_ticket_number#14]
Condition : (isnotnull(sr_item_sk#13) AND isnotnull(sr_ticket_number#14))

(503) Exchange
Input [2]: [sr_item_sk#13, sr_ticket_number#14]
Arguments: hashpartitioning(sr_item_sk#13, sr_ticket_number#14, 100), ENSURE_REQUIREMENTS, [plan_id=51]

(504) Sort
Input [2]: [sr_item_sk#13, sr_ticket_number#14]
Arguments: [sr_item_sk#13 ASC NULLS FIRST, sr_ticket_number#14 ASC NULLS FIRST], false, 0

(505) SortMergeJoin
Left keys [2]: [ss_item_sk#2, ss_ticket_number#9]
Right keys [2]: [sr_item_sk#13, sr_ticket_number#14]
Join type: Inner
Join condition: None

(506) Project
Output [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Input [14]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_ticket_number#9, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, sr_item_sk#13, sr_ticket_number#14]

(507) Exchange
Input [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Arguments: hashpartitioning(ss_item_sk#2, 100), ENSURE_REQUIREMENTS, [plan_id=52]

(508) Sort
Input [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Arguments: [ss_item_sk#2 ASC NULLS FIRST], false, 0

(509) Scan parquet
Output [3]: [cs_item_sk#15, cs_order_number#16, cs_ext_list_price#17]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_order_number)]
ReadSchema: struct<cs_item_sk:int,cs_order_number:int,cs_ext_list_price:decimal(7,2)>

(510) Filter
Input [3]: [cs_item_sk#15, cs_order_number#16, cs_ext_list_price#17]
Condition : (isnotnull(cs_item_sk#15) AND isnotnull(cs_order_number#16))

(511) Exchange
Input [3]: [cs_item_sk#15, cs_order_number#16, cs_ext_list_price#17]
Arguments: hashpartitioning(cs_item_sk#15, cs_order_number#16, 100), ENSURE_REQUIREMENTS, [plan_id=53]

(512) Sort
Input [3]: [cs_item_sk#15, cs_order_number#16, cs_ext_list_price#17]
Arguments: [cs_item_sk#15 ASC NULLS FIRST, cs_order_number#16 ASC NULLS FIRST], false, 0

(513) Scan parquet
Output [5]: [cr_item_sk#18, cr_order_number#19, cr_refunded_cash#20, cr_reversed_charge#21, cr_store_credit#22]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)]
ReadSchema: struct<cr_item_sk:int,cr_order_number:int,cr_refunded_cash:decimal(7,2),cr_reversed_charge:decimal(7,2),cr_store_credit:decimal(7,2)>

(514) Filter
Input [5]: [cr_item_sk#18, cr_order_number#19, cr_refunded_cash#20, cr_reversed_charge#21, cr_store_credit#22]
Condition : (isnotnull(cr_item_sk#18) AND isnotnull(cr_order_number#19))

(515) Exchange
Input [5]: [cr_item_sk#18, cr_order_number#19, cr_refunded_cash#20, cr_reversed_charge#21, cr_store_credit#22]
Arguments: hashpartitioning(cr_item_sk#18, cr_order_number#19, 100), ENSURE_REQUIREMENTS, [plan_id=54]

(516) Sort
Input [5]: [cr_item_sk#18, cr_order_number#19, cr_refunded_cash#20, cr_reversed_charge#21, cr_store_credit#22]
Arguments: [cr_item_sk#18 ASC NULLS FIRST, cr_order_number#19 ASC NULLS FIRST], false, 0

(517) SortMergeJoin
Left keys [2]: [cs_item_sk#15, cs_order_number#16]
Right keys [2]: [cr_item_sk#18, cr_order_number#19]
Join type: Inner
Join condition: None

(518) Project
Output [5]: [cs_item_sk#15, cs_ext_list_price#17, cr_refunded_cash#20, cr_reversed_charge#21, cr_store_credit#22]
Input [8]: [cs_item_sk#15, cs_order_number#16, cs_ext_list_price#17, cr_item_sk#18, cr_order_number#19, cr_refunded_cash#20, cr_reversed_charge#21, cr_store_credit#22]

(519) HashAggregate
Input [5]: [cs_item_sk#15, cs_ext_list_price#17, cr_refunded_cash#20, cr_reversed_charge#21, cr_store_credit#22]
Keys [1]: [cs_item_sk#15]
Functions [2]: [partial_sum(UnscaledValue(cs_ext_list_price#17)), partial_sum(((cr_refunded_cash#20 + cr_reversed_charge#21) + cr_store_credit#22))]
Aggregate Attributes [3]: [sum#25, sum#26, isEmpty#27]
Results [4]: [cs_item_sk#15, sum#165, sum#166, isEmpty#167]

(520) Exchange
Input [4]: [cs_item_sk#15, sum#165, sum#166, isEmpty#167]
Arguments: hashpartitioning(cs_item_sk#15, 100), ENSURE_REQUIREMENTS, [plan_id=55]

(521) HashAggregate
Input [4]: [cs_item_sk#15, sum#165, sum#166, isEmpty#167]
Keys [1]: [cs_item_sk#15]
Functions [2]: [sum(UnscaledValue(cs_ext_list_price#17)), sum(((cr_refunded_cash#20 + cr_reversed_charge#21) + cr_store_credit#22))]
Aggregate Attributes [2]: [sum(UnscaledValue(cs_ext_list_price#17))#30, sum(((cr_refunded_cash#20 + cr_reversed_charge#21) + cr_store_credit#22))#31]
Results [3]: [cs_item_sk#15, MakeDecimal(sum(UnscaledValue(cs_ext_list_price#17))#30,17,2) AS sale#32, sum(((cr_refunded_cash#20 + cr_reversed_charge#21) + cr_store_credit#22))#31 AS refund#33]

(522) Filter
Input [3]: [cs_item_sk#15, sale#32, refund#33]
Condition : ((isnotnull(sale#32) AND isnotnull(refund#33)) AND (cast(sale#32 as decimal(21,2)) > (2 * refund#33)))

(523) Project
Output [1]: [cs_item_sk#15]
Input [3]: [cs_item_sk#15, sale#32, refund#33]

(524) Sort
Input [1]: [cs_item_sk#15]
Arguments: [cs_item_sk#15 ASC NULLS FIRST], false, 0

(525) SortMergeJoin
Left keys [1]: [ss_item_sk#2]
Right keys [1]: [cs_item_sk#15]
Join type: Inner
Join condition: None

(526) Project
Output [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Input [12]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, cs_item_sk#15]

(527) Exchange
Input [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Arguments: hashpartitioning(ss_sold_date_sk#1, 100), ENSURE_REQUIREMENTS, [plan_id=56]

(528) Sort
Input [11]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12]
Arguments: [ss_sold_date_sk#1 ASC NULLS FIRST], false, 0

(529) Scan parquet
Output [2]: [d_date_sk#34, d_year#35]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk)]
ReadSchema: struct<d_date_sk:int,d_year:int>

(530) Filter
Input [2]: [d_date_sk#34, d_year#35]
Condition : ((isnotnull(d_year#35) AND (d_year#35 = 1999)) AND isnotnull(d_date_sk#34))

(531) Exchange
Input [2]: [d_date_sk#34, d_year#35]
Arguments: hashpartitioning(d_date_sk#34, 100), ENSURE_REQUIREMENTS, [plan_id=57]

(532) Sort
Input [2]: [d_date_sk#34, d_year#35]
Arguments: [d_date_sk#34 ASC NULLS FIRST], false, 0

(533) SortMergeJoin
Left keys [1]: [ss_sold_date_sk#1]
Right keys [1]: [d_date_sk#34]
Join type: Inner
Join condition: None

(534) Project
Output [11]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35]
Input [13]: [ss_sold_date_sk#1, ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_date_sk#34, d_year#35]

(535) Exchange
Input [11]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35]
Arguments: hashpartitioning(ss_store_sk#7, 100), ENSURE_REQUIREMENTS, [plan_id=58]

(536) Sort
Input [11]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35]
Arguments: [ss_store_sk#7 ASC NULLS FIRST], false, 0

(537) Scan parquet
Output [3]: [s_store_sk#36, s_store_name#37, s_zip#38]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_zip)]
ReadSchema: struct<s_store_sk:int,s_store_name:string,s_zip:string>

(538) Filter
Input [3]: [s_store_sk#36, s_store_name#37, s_zip#38]
Condition : ((isnotnull(s_store_sk#36) AND isnotnull(s_store_name#37)) AND isnotnull(s_zip#38))

(539) Exchange
Input [3]: [s_store_sk#36, s_store_name#37, s_zip#38]
Arguments: hashpartitioning(s_store_sk#36, 100), ENSURE_REQUIREMENTS, [plan_id=59]

(540) Sort
Input [3]: [s_store_sk#36, s_store_name#37, s_zip#38]
Arguments: [s_store_sk#36 ASC NULLS FIRST], false, 0

(541) SortMergeJoin
Left keys [1]: [ss_store_sk#7]
Right keys [1]: [s_store_sk#36]
Join type: Inner
Join condition: None

(542) Project
Output [12]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38]
Input [14]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_store_sk#7, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_sk#36, s_store_name#37, s_zip#38]

(543) Exchange
Input [12]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38]
Arguments: hashpartitioning(ss_customer_sk#3, 100), ENSURE_REQUIREMENTS, [plan_id=60]

(544) Sort
Input [12]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38]
Arguments: [ss_customer_sk#3 ASC NULLS FIRST], false, 0

(545) Scan parquet
Output [6]: [c_customer_sk#39, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_first_sales_date_sk), IsNotNull(c_first_shipto_date_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk), IsNotNull(c_current_addr_sk)]
ReadSchema: struct<c_customer_sk:int,c_current_cdemo_sk:int,c_current_hdemo_sk:int,c_current_addr_sk:int,c_first_shipto_date_sk:int,c_first_sales_date_sk:int>

(546) Filter
Input [6]: [c_customer_sk#39, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]
Condition : (((((isnotnull(c_customer_sk#39) AND isnotnull(c_first_sales_date_sk#44)) AND isnotnull(c_first_shipto_date_sk#43)) AND isnotnull(c_current_cdemo_sk#40)) AND isnotnull(c_current_hdemo_sk#41)) AND isnotnull(c_current_addr_sk#42))

(547) Exchange
Input [6]: [c_customer_sk#39, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]
Arguments: hashpartitioning(c_customer_sk#39, 100), ENSURE_REQUIREMENTS, [plan_id=61]

(548) Sort
Input [6]: [c_customer_sk#39, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]
Arguments: [c_customer_sk#39 ASC NULLS FIRST], false, 0

(549) SortMergeJoin
Left keys [1]: [ss_customer_sk#3]
Right keys [1]: [c_customer_sk#39]
Join type: Inner
Join condition: None

(550) Project
Output [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]
Input [18]: [ss_item_sk#2, ss_customer_sk#3, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_customer_sk#39, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]

(551) Exchange
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]
Arguments: hashpartitioning(c_first_sales_date_sk#44, 100), ENSURE_REQUIREMENTS, [plan_id=62]

(552) Sort
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44]
Arguments: [c_first_sales_date_sk#44 ASC NULLS FIRST], false, 0

(553) Scan parquet
Output [2]: [d_date_sk#45, d_year#46]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(d_date_sk)]
ReadSchema: struct<d_date_sk:int,d_year:int>

(554) Filter
Input [2]: [d_date_sk#45, d_year#46]
Condition : isnotnull(d_date_sk#45)

(555) Exchange
Input [2]: [d_date_sk#45, d_year#46]
Arguments: hashpartitioning(d_date_sk#45, 100), ENSURE_REQUIREMENTS, [plan_id=63]

(556) Sort
Input [2]: [d_date_sk#45, d_year#46]
Arguments: [d_date_sk#45 ASC NULLS FIRST], false, 0

(557) SortMergeJoin
Left keys [1]: [c_first_sales_date_sk#44]
Right keys [1]: [d_date_sk#45]
Join type: Inner
Join condition: None

(558) Project
Output [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, d_year#46]
Input [18]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, c_first_sales_date_sk#44, d_date_sk#45, d_year#46]

(559) Exchange
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, d_year#46]
Arguments: hashpartitioning(c_first_shipto_date_sk#43, 100), ENSURE_REQUIREMENTS, [plan_id=64]

(560) Sort
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, d_year#46]
Arguments: [c_first_shipto_date_sk#43 ASC NULLS FIRST], false, 0

(561) Scan parquet
Output [2]: [d_date_sk#47, d_year#48]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(d_date_sk)]
ReadSchema: struct<d_date_sk:int,d_year:int>

(562) Filter
Input [2]: [d_date_sk#47, d_year#48]
Condition : isnotnull(d_date_sk#47)

(563) Exchange
Input [2]: [d_date_sk#47, d_year#48]
Arguments: hashpartitioning(d_date_sk#47, 100), ENSURE_REQUIREMENTS, [plan_id=65]

(564) Sort
Input [2]: [d_date_sk#47, d_year#48]
Arguments: [d_date_sk#47 ASC NULLS FIRST], false, 0

(565) SortMergeJoin
Left keys [1]: [c_first_shipto_date_sk#43]
Right keys [1]: [d_date_sk#47]
Join type: Inner
Join condition: None

(566) Project
Output [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Input [18]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, c_first_shipto_date_sk#43, d_year#46, d_date_sk#47, d_year#48]

(567) Exchange
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: hashpartitioning(ss_cdemo_sk#4, 100), ENSURE_REQUIREMENTS, [plan_id=66]

(568) Sort
Input [16]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: [ss_cdemo_sk#4 ASC NULLS FIRST], false, 0

(569) Scan parquet
Output [2]: [cd_demo_sk#49, cd_marital_status#50]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status)]
ReadSchema: struct<cd_demo_sk:int,cd_marital_status:string>

(570) Filter
Input [2]: [cd_demo_sk#49, cd_marital_status#50]
Condition : (isnotnull(cd_demo_sk#49) AND isnotnull(cd_marital_status#50))

(571) Exchange
Input [2]: [cd_demo_sk#49, cd_marital_status#50]
Arguments: hashpartitioning(cd_demo_sk#49, 100), ENSURE_REQUIREMENTS, [plan_id=67]

(572) Sort
Input [2]: [cd_demo_sk#49, cd_marital_status#50]
Arguments: [cd_demo_sk#49 ASC NULLS FIRST], false, 0

(573) SortMergeJoin
Left keys [1]: [ss_cdemo_sk#4]
Right keys [1]: [cd_demo_sk#49]
Join type: Inner
Join condition: None

(574) Project
Output [16]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, cd_marital_status#50]
Input [18]: [ss_item_sk#2, ss_cdemo_sk#4, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, cd_demo_sk#49, cd_marital_status#50]

(575) Exchange
Input [16]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, cd_marital_status#50]
Arguments: hashpartitioning(c_current_cdemo_sk#40, 100), ENSURE_REQUIREMENTS, [plan_id=68]

(576) Sort
Input [16]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, cd_marital_status#50]
Arguments: [c_current_cdemo_sk#40 ASC NULLS FIRST], false, 0

(577) Scan parquet
Output [2]: [cd_demo_sk#51, cd_marital_status#52]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status)]
ReadSchema: struct<cd_demo_sk:int,cd_marital_status:string>

(578) Filter
Input [2]: [cd_demo_sk#51, cd_marital_status#52]
Condition : (isnotnull(cd_demo_sk#51) AND isnotnull(cd_marital_status#52))

(579) Exchange
Input [2]: [cd_demo_sk#51, cd_marital_status#52]
Arguments: hashpartitioning(cd_demo_sk#51, 100), ENSURE_REQUIREMENTS, [plan_id=69]

(580) Sort
Input [2]: [cd_demo_sk#51, cd_marital_status#52]
Arguments: [cd_demo_sk#51 ASC NULLS FIRST], false, 0

(581) SortMergeJoin
Left keys [1]: [c_current_cdemo_sk#40]
Right keys [1]: [cd_demo_sk#51]
Join type: Inner
Join condition: NOT (cd_marital_status#50 = cd_marital_status#52)

(582) Project
Output [14]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Input [18]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_cdemo_sk#40, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, cd_marital_status#50, cd_demo_sk#51, cd_marital_status#52]

(583) Exchange
Input [14]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: hashpartitioning(ss_promo_sk#8, 100), ENSURE_REQUIREMENTS, [plan_id=70]

(584) Sort
Input [14]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: [ss_promo_sk#8 ASC NULLS FIRST], false, 0

(585) Scan parquet
Output [1]: [p_promo_sk#53]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(p_promo_sk)]
ReadSchema: struct<p_promo_sk:int>

(586) Filter
Input [1]: [p_promo_sk#53]
Condition : isnotnull(p_promo_sk#53)

(587) Exchange
Input [1]: [p_promo_sk#53]
Arguments: hashpartitioning(p_promo_sk#53, 100), ENSURE_REQUIREMENTS, [plan_id=71]

(588) Sort
Input [1]: [p_promo_sk#53]
Arguments: [p_promo_sk#53 ASC NULLS FIRST], false, 0

(589) SortMergeJoin
Left keys [1]: [ss_promo_sk#8]
Right keys [1]: [p_promo_sk#53]
Join type: Inner
Join condition: None

(590) Project
Output [13]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Input [15]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, p_promo_sk#53]

(591) Exchange
Input [13]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: hashpartitioning(ss_hdemo_sk#5, 100), ENSURE_REQUIREMENTS, [plan_id=72]

(592) Sort
Input [13]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48]
Arguments: [ss_hdemo_sk#5 ASC NULLS FIRST], false, 0

(593) Scan parquet
Output [2]: [hd_demo_sk#54, hd_income_band_sk#55]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)]
ReadSchema: struct<hd_demo_sk:int,hd_income_band_sk:int>

(594) Filter
Input [2]: [hd_demo_sk#54, hd_income_band_sk#55]
Condition : (isnotnull(hd_demo_sk#54) AND isnotnull(hd_income_band_sk#55))

(595) Exchange
Input [2]: [hd_demo_sk#54, hd_income_band_sk#55]
Arguments: hashpartitioning(hd_demo_sk#54, 100), ENSURE_REQUIREMENTS, [plan_id=73]

(596) Sort
Input [2]: [hd_demo_sk#54, hd_income_band_sk#55]
Arguments: [hd_demo_sk#54 ASC NULLS FIRST], false, 0

(597) SortMergeJoin
Left keys [1]: [ss_hdemo_sk#5]
Right keys [1]: [hd_demo_sk#54]
Join type: Inner
Join condition: None

(598) Project
Output [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55]
Input [15]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, hd_demo_sk#54, hd_income_band_sk#55]

(599) Exchange
Input [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55]
Arguments: hashpartitioning(c_current_hdemo_sk#41, 100), ENSURE_REQUIREMENTS, [plan_id=74]

(600) Sort
Input [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55]
Arguments: [c_current_hdemo_sk#41 ASC NULLS FIRST], false, 0

(601) Scan parquet
Output [2]: [hd_demo_sk#56, hd_income_band_sk#57]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)]
ReadSchema: struct<hd_demo_sk:int,hd_income_band_sk:int>

(602) Filter
Input [2]: [hd_demo_sk#56, hd_income_band_sk#57]
Condition : (isnotnull(hd_demo_sk#56) AND isnotnull(hd_income_band_sk#57))

(603) Exchange
Input [2]: [hd_demo_sk#56, hd_income_band_sk#57]
Arguments: hashpartitioning(hd_demo_sk#56, 100), ENSURE_REQUIREMENTS, [plan_id=75]

(604) Sort
Input [2]: [hd_demo_sk#56, hd_income_band_sk#57]
Arguments: [hd_demo_sk#56 ASC NULLS FIRST], false, 0

(605) SortMergeJoin
Left keys [1]: [c_current_hdemo_sk#41]
Right keys [1]: [hd_demo_sk#56]
Join type: Inner
Join condition: None

(606) Project
Output [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57]
Input [15]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_hdemo_sk#41, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_demo_sk#56, hd_income_band_sk#57]

(607) Exchange
Input [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57]
Arguments: hashpartitioning(ss_addr_sk#6, 100), ENSURE_REQUIREMENTS, [plan_id=76]

(608) Sort
Input [13]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57]
Arguments: [ss_addr_sk#6 ASC NULLS FIRST], false, 0

(609) Scan parquet
Output [5]: [ca_address_sk#58, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(ca_address_sk)]
ReadSchema: struct<ca_address_sk:int,ca_street_number:string,ca_street_name:string,ca_city:string,ca_zip:string>

(610) Filter
Input [5]: [ca_address_sk#58, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]
Condition : isnotnull(ca_address_sk#58)

(611) Exchange
Input [5]: [ca_address_sk#58, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]
Arguments: hashpartitioning(ca_address_sk#58, 100), ENSURE_REQUIREMENTS, [plan_id=77]

(612) Sort
Input [5]: [ca_address_sk#58, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]
Arguments: [ca_address_sk#58 ASC NULLS FIRST], false, 0

(613) SortMergeJoin
Left keys [1]: [ss_addr_sk#6]
Right keys [1]: [ca_address_sk#58]
Join type: Inner
Join condition: None

(614) Project
Output [16]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]
Input [18]: [ss_item_sk#2, ss_addr_sk#6, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_address_sk#58, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]

(615) Exchange
Input [16]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]
Arguments: hashpartitioning(c_current_addr_sk#42, 100), ENSURE_REQUIREMENTS, [plan_id=78]

(616) Sort
Input [16]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62]
Arguments: [c_current_addr_sk#42 ASC NULLS FIRST], false, 0

(617) Scan parquet
Output [5]: [ca_address_sk#63, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(ca_address_sk)]
ReadSchema: struct<ca_address_sk:int,ca_street_number:string,ca_street_name:string,ca_city:string,ca_zip:string>

(618) Filter
Input [5]: [ca_address_sk#63, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Condition : isnotnull(ca_address_sk#63)

(619) Exchange
Input [5]: [ca_address_sk#63, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: hashpartitioning(ca_address_sk#63, 100), ENSURE_REQUIREMENTS, [plan_id=79]

(620) Sort
Input [5]: [ca_address_sk#63, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: [ca_address_sk#63 ASC NULLS FIRST], false, 0

(621) SortMergeJoin
Left keys [1]: [c_current_addr_sk#42]
Right keys [1]: [ca_address_sk#63]
Join type: Inner
Join condition: None

(622) Project
Output [19]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Input [21]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, c_current_addr_sk#42, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_address_sk#63, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]

(623) Exchange
Input [19]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: hashpartitioning(hd_income_band_sk#55, 100), ENSURE_REQUIREMENTS, [plan_id=80]

(624) Sort
Input [19]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: [hd_income_band_sk#55 ASC NULLS FIRST], false, 0

(625) Scan parquet
Output [1]: [ib_income_band_sk#68]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(ib_income_band_sk)]
ReadSchema: struct<ib_income_band_sk:int>

(626) Filter
Input [1]: [ib_income_band_sk#68]
Condition : isnotnull(ib_income_band_sk#68)

(627) Exchange
Input [1]: [ib_income_band_sk#68]
Arguments: hashpartitioning(ib_income_band_sk#68, 100), ENSURE_REQUIREMENTS, [plan_id=81]

(628) Sort
Input [1]: [ib_income_band_sk#68]
Arguments: [ib_income_band_sk#68 ASC NULLS FIRST], false, 0

(629) SortMergeJoin
Left keys [1]: [hd_income_band_sk#55]
Right keys [1]: [ib_income_band_sk#68]
Join type: Inner
Join condition: None

(630) Project
Output [18]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Input [20]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#55, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, ib_income_band_sk#68]

(631) Exchange
Input [18]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: hashpartitioning(hd_income_band_sk#57, 100), ENSURE_REQUIREMENTS, [plan_id=82]

(632) Sort
Input [18]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: [hd_income_band_sk#57 ASC NULLS FIRST], false, 0

(633) Scan parquet
Output [1]: [ib_income_band_sk#69]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(ib_income_band_sk)]
ReadSchema: struct<ib_income_band_sk:int>

(634) Filter
Input [1]: [ib_income_band_sk#69]
Condition : isnotnull(ib_income_band_sk#69)

(635) Exchange
Input [1]: [ib_income_band_sk#69]
Arguments: hashpartitioning(ib_income_band_sk#69, 100), ENSURE_REQUIREMENTS, [plan_id=83]

(636) Sort
Input [1]: [ib_income_band_sk#69]
Arguments: [ib_income_band_sk#69 ASC NULLS FIRST], false, 0

(637) SortMergeJoin
Left keys [1]: [hd_income_band_sk#57]
Right keys [1]: [ib_income_band_sk#69]
Join type: Inner
Join condition: None

(638) Project
Output [17]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Input [19]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, hd_income_band_sk#57, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, ib_income_band_sk#69]

(639) Exchange
Input [17]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: hashpartitioning(ss_item_sk#2, 100), ENSURE_REQUIREMENTS, [plan_id=84]

(640) Sort
Input [17]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67]
Arguments: [ss_item_sk#2 ASC NULLS FIRST], false, 0

(641) Scan parquet
Output [4]: [i_item_sk#70, i_current_price#71, i_color#72, i_product_name#73]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(i_current_price), In(i_color, [burlywood,floral,indian,medium,purple,spring]), GreaterThanOrEqual(i_current_price,64.00), LessThanOrEqual(i_current_price,74.00), GreaterThanOrEqual(i_current_price,65.00), LessThanOrEqual(i_current_price,79.00), IsNotNull(i_item_sk)]
ReadSchema: struct<i_item_sk:int,i_current_price:decimal(7,2),i_color:string,i_product_name:string>

(642) Filter
Input [4]: [i_item_sk#70, i_current_price#71, i_color#72, i_product_name#73]
Condition : ((((((isnotnull(i_current_price#71) AND i_color#72 IN (purple,burlywood,indian,spring,floral,medium)) AND (i_current_price#71 >= 64.00)) AND (i_current_price#71 <= 74.00)) AND (i_current_price#71 >= 65.00)) AND (i_current_price#71 <= 79.00)) AND isnotnull(i_item_sk#70))

(643) Project
Output [2]: [i_item_sk#70, i_product_name#73]
Input [4]: [i_item_sk#70, i_current_price#71, i_color#72, i_product_name#73]

(644) Exchange
Input [2]: [i_item_sk#70, i_product_name#73]
Arguments: hashpartitioning(i_item_sk#70, 100), ENSURE_REQUIREMENTS, [plan_id=85]

(645) Sort
Input [2]: [i_item_sk#70, i_product_name#73]
Arguments: [i_item_sk#70 ASC NULLS FIRST], false, 0

(646) SortMergeJoin
Left keys [1]: [ss_item_sk#2]
Right keys [1]: [i_item_sk#70]
Join type: Inner
Join condition: None

(647) Project
Output [18]: [ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, d_year#46, d_year#48, s_store_name#37, s_zip#38, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, i_item_sk#70, i_product_name#73]
Input [19]: [ss_item_sk#2, ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, s_store_name#37, s_zip#38, d_year#46, d_year#48, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, i_item_sk#70, i_product_name#73]

(648) HashAggregate
Input [18]: [ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#35, d_year#46, d_year#48, s_store_name#37, s_zip#38, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, i_item_sk#70, i_product_name#73]
Keys [15]: [i_product_name#73, i_item_sk#70, s_store_name#37, s_zip#38, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, d_year#35, d_year#46, d_year#48]
Functions [4]: [partial_count(1), partial_sum(UnscaledValue(ss_wholesale_cost#10)), partial_sum(UnscaledValue(ss_list_price#11)), partial_sum(UnscaledValue(ss_coupon_amt#12))]
Aggregate Attributes [4]: [count#77, sum#78, sum#79, sum#80]
Results [19]: [i_product_name#73, i_item_sk#70, s_store_name#37, s_zip#38, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, d_year#35, d_year#46, d_year#48, count#168, sum#169, sum#170, sum#171]

(649) HashAggregate
Input [19]: [i_product_name#73, i_item_sk#70, s_store_name#37, s_zip#38, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, d_year#35, d_year#46, d_year#48, count#168, sum#169, sum#170, sum#171]
Keys [15]: [i_product_name#73, i_item_sk#70, s_store_name#37, s_zip#38, ca_street_number#59, ca_street_name#60, ca_city#61, ca_zip#62, ca_street_number#64, ca_street_name#65, ca_city#66, ca_zip#67, d_year#35, d_year#46, d_year#48]
Functions [4]: [count(1), sum(UnscaledValue(ss_wholesale_cost#10)), sum(UnscaledValue(ss_list_price#11)), sum(UnscaledValue(ss_coupon_amt#12))]
Aggregate Attributes [4]: [count(1)#81, sum(UnscaledValue(ss_wholesale_cost#10))#82, sum(UnscaledValue(ss_list_price#11))#83, sum(UnscaledValue(ss_coupon_amt#12))#84]
Results [17]: [i_product_name#73 AS product_name#85, i_item_sk#70 AS item_sk#86, s_store_name#37 AS store_name#87, s_zip#38 AS store_zip#88, ca_street_number#59 AS b_street_number#89, ca_street_name#60 AS b_streen_name#90, ca_city#61 AS b_city#91, ca_zip#62 AS b_zip#92, ca_street_number#64 AS c_street_number#93, ca_street_name#65 AS c_street_name#94, ca_city#66 AS c_city#95, ca_zip#67 AS c_zip#96, d_year#35 AS syear#97, count(1)#81 AS cnt#98, MakeDecimal(sum(UnscaledValue(ss_wholesale_cost#10))#82,17,2) AS s1#99, MakeDecimal(sum(UnscaledValue(ss_list_price#11))#83,17,2) AS s2#100, MakeDecimal(sum(UnscaledValue(ss_coupon_amt#12))#84,17,2) AS s3#101]

(650) Exchange
Input [17]: [product_name#85, item_sk#86, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101]
Arguments: hashpartitioning(item_sk#86, store_name#87, store_zip#88, 100), ENSURE_REQUIREMENTS, [plan_id=86]

(651) Sort
Input [17]: [product_name#85, item_sk#86, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101]
Arguments: [item_sk#86 ASC NULLS FIRST, store_name#87 ASC NULLS FIRST, store_zip#88 ASC NULLS FIRST], false, 0

(652) Scan parquet
Output [12]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_ticket_number#172, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_sold_date_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)]
ReadSchema: struct<ss_sold_date_sk:int,ss_item_sk:int,ss_customer_sk:int,ss_cdemo_sk:int,ss_hdemo_sk:int,ss_addr_sk:int,ss_store_sk:int,ss_promo_sk:int,ss_ticket_number:int,ss_wholesale_cost:decimal(7,2),ss_list_price:decimal(7,2),ss_coupon_amt:decimal(7,2)>

(653) Filter
Input [12]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_ticket_number#172, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112]
Condition : ((((((((isnotnull(ss_item_sk#103) AND isnotnull(ss_ticket_number#172)) AND isnotnull(ss_sold_date_sk#102)) AND isnotnull(ss_store_sk#108)) AND isnotnull(ss_customer_sk#104)) AND isnotnull(ss_cdemo_sk#105)) AND isnotnull(ss_promo_sk#109)) AND isnotnull(ss_hdemo_sk#106)) AND isnotnull(ss_addr_sk#107))

(654) Exchange
Input [12]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_ticket_number#172, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112]
Arguments: hashpartitioning(ss_item_sk#103, ss_ticket_number#172, 100), ENSURE_REQUIREMENTS, [plan_id=87]

(655) Sort
Input [12]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_ticket_number#172, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112]
Arguments: [ss_item_sk#103 ASC NULLS FIRST, ss_ticket_number#172 ASC NULLS FIRST], false, 0

(656) Scan parquet
Output [2]: [sr_item_sk#173, sr_ticket_number#174]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)]
ReadSchema: struct<sr_item_sk:int,sr_ticket_number:int>

(657) Filter
Input [2]: [sr_item_sk#173, sr_ticket_number#174]
Condition : (isnotnull(sr_item_sk#173) AND isnotnull(sr_ticket_number#174))

(658) Exchange
Input [2]: [sr_item_sk#173, sr_ticket_number#174]
Arguments: hashpartitioning(sr_item_sk#173, sr_ticket_number#174, 100), ENSURE_REQUIREMENTS, [plan_id=88]

(659) Sort
Input [2]: [sr_item_sk#173, sr_ticket_number#174]
Arguments: [sr_item_sk#173 ASC NULLS FIRST, sr_ticket_number#174 ASC NULLS FIRST], false, 0

(660) SortMergeJoin
Left keys [2]: [ss_item_sk#103, ss_ticket_number#172]
Right keys [2]: [sr_item_sk#173, sr_ticket_number#174]
Join type: Inner
Join condition: None

(661) Project
Output [11]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112]
Input [14]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_ticket_number#172, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, sr_item_sk#173, sr_ticket_number#174]

(662) Exchange
Input [11]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112]
Arguments: hashpartitioning(ss_item_sk#103, 100), ENSURE_REQUIREMENTS, [plan_id=89]

(663) Sort
Input [11]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112]
Arguments: [ss_item_sk#103 ASC NULLS FIRST], false, 0

(664) Scan parquet
Output [3]: [cs_item_sk#175, cs_order_number#176, cs_ext_list_price#177]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_order_number)]
ReadSchema: struct<cs_item_sk:int,cs_order_number:int,cs_ext_list_price:decimal(7,2)>

(665) Filter
Input [3]: [cs_item_sk#175, cs_order_number#176, cs_ext_list_price#177]
Condition : (isnotnull(cs_item_sk#175) AND isnotnull(cs_order_number#176))

(666) Exchange
Input [3]: [cs_item_sk#175, cs_order_number#176, cs_ext_list_price#177]
Arguments: hashpartitioning(cs_item_sk#175, cs_order_number#176, 100), ENSURE_REQUIREMENTS, [plan_id=90]

(667) Sort
Input [3]: [cs_item_sk#175, cs_order_number#176, cs_ext_list_price#177]
Arguments: [cs_item_sk#175 ASC NULLS FIRST, cs_order_number#176 ASC NULLS FIRST], false, 0

(668) Scan parquet
Output [5]: [cr_item_sk#178, cr_order_number#179, cr_refunded_cash#180, cr_reversed_charge#181, cr_store_credit#182]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)]
ReadSchema: struct<cr_item_sk:int,cr_order_number:int,cr_refunded_cash:decimal(7,2),cr_reversed_charge:decimal(7,2),cr_store_credit:decimal(7,2)>

(669) Filter
Input [5]: [cr_item_sk#178, cr_order_number#179, cr_refunded_cash#180, cr_reversed_charge#181, cr_store_credit#182]
Condition : (isnotnull(cr_item_sk#178) AND isnotnull(cr_order_number#179))

(670) Exchange
Input [5]: [cr_item_sk#178, cr_order_number#179, cr_refunded_cash#180, cr_reversed_charge#181, cr_store_credit#182]
Arguments: hashpartitioning(cr_item_sk#178, cr_order_number#179, 100), ENSURE_REQUIREMENTS, [plan_id=91]

(671) Sort
Input [5]: [cr_item_sk#178, cr_order_number#179, cr_refunded_cash#180, cr_reversed_charge#181, cr_store_credit#182]
Arguments: [cr_item_sk#178 ASC NULLS FIRST, cr_order_number#179 ASC NULLS FIRST], false, 0

(672) SortMergeJoin
Left keys [2]: [cs_item_sk#175, cs_order_number#176]
Right keys [2]: [cr_item_sk#178, cr_order_number#179]
Join type: Inner
Join condition: None

(673) Project
Output [5]: [cs_item_sk#175, cs_ext_list_price#177, cr_refunded_cash#180, cr_reversed_charge#181, cr_store_credit#182]
Input [8]: [cs_item_sk#175, cs_order_number#176, cs_ext_list_price#177, cr_item_sk#178, cr_order_number#179, cr_refunded_cash#180, cr_reversed_charge#181, cr_store_credit#182]

(674) HashAggregate
Input [5]: [cs_item_sk#175, cs_ext_list_price#177, cr_refunded_cash#180, cr_reversed_charge#181, cr_store_credit#182]
Keys [1]: [cs_item_sk#175]
Functions [2]: [partial_sum(UnscaledValue(cs_ext_list_price#177)), partial_sum(((cr_refunded_cash#180 + cr_reversed_charge#181) + cr_store_credit#182))]
Aggregate Attributes [3]: [sum#183, sum#184, isEmpty#185]
Results [4]: [cs_item_sk#175, sum#186, sum#187, isEmpty#188]

(675) Exchange
Input [4]: [cs_item_sk#175, sum#186, sum#187, isEmpty#188]
Arguments: hashpartitioning(cs_item_sk#175, 100), ENSURE_REQUIREMENTS, [plan_id=92]

(676) HashAggregate
Input [4]: [cs_item_sk#175, sum#186, sum#187, isEmpty#188]
Keys [1]: [cs_item_sk#175]
Functions [2]: [sum(UnscaledValue(cs_ext_list_price#177)), sum(((cr_refunded_cash#180 + cr_reversed_charge#181) + cr_store_credit#182))]
Aggregate Attributes [2]: [sum(UnscaledValue(cs_ext_list_price#177))#30, sum(((cr_refunded_cash#180 + cr_reversed_charge#181) + cr_store_credit#182))#31]
Results [3]: [cs_item_sk#175, MakeDecimal(sum(UnscaledValue(cs_ext_list_price#177))#30,17,2) AS sale#32, sum(((cr_refunded_cash#180 + cr_reversed_charge#181) + cr_store_credit#182))#31 AS refund#33]

(677) Filter
Input [3]: [cs_item_sk#175, sale#32, refund#33]
Condition : ((isnotnull(sale#32) AND isnotnull(refund#33)) AND (cast(sale#32 as decimal(21,2)) > (2 * refund#33)))

(678) Project
Output [1]: [cs_item_sk#175]
Input [3]: [cs_item_sk#175, sale#32, refund#33]

(679) Sort
Input [1]: [cs_item_sk#175]
Arguments: [cs_item_sk#175 ASC NULLS FIRST], false, 0

(680) SortMergeJoin
Left keys [1]: [ss_item_sk#103]
Right keys [1]: [cs_item_sk#175]
Join type: Inner
Join condition: None

(681) Project
Output [11]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112]
Input [12]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, cs_item_sk#175]

(682) Exchange
Input [11]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112]
Arguments: hashpartitioning(ss_sold_date_sk#102, 100), ENSURE_REQUIREMENTS, [plan_id=93]

(683) Sort
Input [11]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112]
Arguments: [ss_sold_date_sk#102 ASC NULLS FIRST], false, 0

(684) Scan parquet
Output [2]: [d_date_sk#113, d_year#114]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)]
ReadSchema: struct<d_date_sk:int,d_year:int>

(685) Filter
Input [2]: [d_date_sk#113, d_year#114]
Condition : ((isnotnull(d_year#114) AND (d_year#114 = 2000)) AND isnotnull(d_date_sk#113))

(686) Exchange
Input [2]: [d_date_sk#113, d_year#114]
Arguments: hashpartitioning(d_date_sk#113, 100), ENSURE_REQUIREMENTS, [plan_id=94]

(687) Sort
Input [2]: [d_date_sk#113, d_year#114]
Arguments: [d_date_sk#113 ASC NULLS FIRST], false, 0

(688) SortMergeJoin
Left keys [1]: [ss_sold_date_sk#102]
Right keys [1]: [d_date_sk#113]
Join type: Inner
Join condition: None

(689) Project
Output [11]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114]
Input [13]: [ss_sold_date_sk#102, ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_date_sk#113, d_year#114]

(690) Exchange
Input [11]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114]
Arguments: hashpartitioning(ss_store_sk#108, 100), ENSURE_REQUIREMENTS, [plan_id=95]

(691) Sort
Input [11]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114]
Arguments: [ss_store_sk#108 ASC NULLS FIRST], false, 0

(692) Scan parquet
Output [3]: [s_store_sk#115, s_store_name#116, s_zip#117]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_zip)]
ReadSchema: struct<s_store_sk:int,s_store_name:string,s_zip:string>

(693) Filter
Input [3]: [s_store_sk#115, s_store_name#116, s_zip#117]
Condition : ((isnotnull(s_store_sk#115) AND isnotnull(s_store_name#116)) AND isnotnull(s_zip#117))

(694) Exchange
Input [3]: [s_store_sk#115, s_store_name#116, s_zip#117]
Arguments: hashpartitioning(s_store_sk#115, 100), ENSURE_REQUIREMENTS, [plan_id=96]

(695) Sort
Input [3]: [s_store_sk#115, s_store_name#116, s_zip#117]
Arguments: [s_store_sk#115 ASC NULLS FIRST], false, 0

(696) SortMergeJoin
Left keys [1]: [ss_store_sk#108]
Right keys [1]: [s_store_sk#115]
Join type: Inner
Join condition: None

(697) Project
Output [12]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117]
Input [14]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_store_sk#108, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_sk#115, s_store_name#116, s_zip#117]

(698) Exchange
Input [12]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117]
Arguments: hashpartitioning(ss_customer_sk#104, 100), ENSURE_REQUIREMENTS, [plan_id=97]

(699) Sort
Input [12]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117]
Arguments: [ss_customer_sk#104 ASC NULLS FIRST], false, 0

(700) Scan parquet
Output [6]: [c_customer_sk#118, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_first_sales_date_sk), IsNotNull(c_first_shipto_date_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk), IsNotNull(c_current_addr_sk)]
ReadSchema: struct<c_customer_sk:int,c_current_cdemo_sk:int,c_current_hdemo_sk:int,c_current_addr_sk:int,c_first_shipto_date_sk:int,c_first_sales_date_sk:int>

(701) Filter
Input [6]: [c_customer_sk#118, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]
Condition : (((((isnotnull(c_customer_sk#118) AND isnotnull(c_first_sales_date_sk#123)) AND isnotnull(c_first_shipto_date_sk#122)) AND isnotnull(c_current_cdemo_sk#119)) AND isnotnull(c_current_hdemo_sk#120)) AND isnotnull(c_current_addr_sk#121))

(702) Exchange
Input [6]: [c_customer_sk#118, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]
Arguments: hashpartitioning(c_customer_sk#118, 100), ENSURE_REQUIREMENTS, [plan_id=98]

(703) Sort
Input [6]: [c_customer_sk#118, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]
Arguments: [c_customer_sk#118 ASC NULLS FIRST], false, 0

(704) SortMergeJoin
Left keys [1]: [ss_customer_sk#104]
Right keys [1]: [c_customer_sk#118]
Join type: Inner
Join condition: None

(705) Project
Output [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]
Input [18]: [ss_item_sk#103, ss_customer_sk#104, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_customer_sk#118, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]

(706) Exchange
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]
Arguments: hashpartitioning(c_first_sales_date_sk#123, 100), ENSURE_REQUIREMENTS, [plan_id=99]

(707) Sort
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123]
Arguments: [c_first_sales_date_sk#123 ASC NULLS FIRST], false, 0

(708) Scan parquet
Output [2]: [d_date_sk#124, d_year#125]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(d_date_sk)]
ReadSchema: struct<d_date_sk:int,d_year:int>

(709) Filter
Input [2]: [d_date_sk#124, d_year#125]
Condition : isnotnull(d_date_sk#124)

(710) Exchange
Input [2]: [d_date_sk#124, d_year#125]
Arguments: hashpartitioning(d_date_sk#124, 100), ENSURE_REQUIREMENTS, [plan_id=100]

(711) Sort
Input [2]: [d_date_sk#124, d_year#125]
Arguments: [d_date_sk#124 ASC NULLS FIRST], false, 0

(712) SortMergeJoin
Left keys [1]: [c_first_sales_date_sk#123]
Right keys [1]: [d_date_sk#124]
Join type: Inner
Join condition: None

(713) Project
Output [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, d_year#125]
Input [18]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, c_first_sales_date_sk#123, d_date_sk#124, d_year#125]

(714) Exchange
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, d_year#125]
Arguments: hashpartitioning(c_first_shipto_date_sk#122, 100), ENSURE_REQUIREMENTS, [plan_id=101]

(715) Sort
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, d_year#125]
Arguments: [c_first_shipto_date_sk#122 ASC NULLS FIRST], false, 0

(716) Scan parquet
Output [2]: [d_date_sk#126, d_year#127]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(d_date_sk)]
ReadSchema: struct<d_date_sk:int,d_year:int>

(717) Filter
Input [2]: [d_date_sk#126, d_year#127]
Condition : isnotnull(d_date_sk#126)

(718) Exchange
Input [2]: [d_date_sk#126, d_year#127]
Arguments: hashpartitioning(d_date_sk#126, 100), ENSURE_REQUIREMENTS, [plan_id=102]

(719) Sort
Input [2]: [d_date_sk#126, d_year#127]
Arguments: [d_date_sk#126 ASC NULLS FIRST], false, 0

(720) SortMergeJoin
Left keys [1]: [c_first_shipto_date_sk#122]
Right keys [1]: [d_date_sk#126]
Join type: Inner
Join condition: None

(721) Project
Output [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Input [18]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, c_first_shipto_date_sk#122, d_year#125, d_date_sk#126, d_year#127]

(722) Exchange
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: hashpartitioning(ss_cdemo_sk#105, 100), ENSURE_REQUIREMENTS, [plan_id=103]

(723) Sort
Input [16]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: [ss_cdemo_sk#105 ASC NULLS FIRST], false, 0

(724) Scan parquet
Output [2]: [cd_demo_sk#128, cd_marital_status#129]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status)]
ReadSchema: struct<cd_demo_sk:int,cd_marital_status:string>

(725) Filter
Input [2]: [cd_demo_sk#128, cd_marital_status#129]
Condition : (isnotnull(cd_demo_sk#128) AND isnotnull(cd_marital_status#129))

(726) Exchange
Input [2]: [cd_demo_sk#128, cd_marital_status#129]
Arguments: hashpartitioning(cd_demo_sk#128, 100), ENSURE_REQUIREMENTS, [plan_id=104]

(727) Sort
Input [2]: [cd_demo_sk#128, cd_marital_status#129]
Arguments: [cd_demo_sk#128 ASC NULLS FIRST], false, 0

(728) SortMergeJoin
Left keys [1]: [ss_cdemo_sk#105]
Right keys [1]: [cd_demo_sk#128]
Join type: Inner
Join condition: None

(729) Project
Output [16]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, cd_marital_status#129]
Input [18]: [ss_item_sk#103, ss_cdemo_sk#105, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, cd_demo_sk#128, cd_marital_status#129]

(730) Exchange
Input [16]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, cd_marital_status#129]
Arguments: hashpartitioning(c_current_cdemo_sk#119, 100), ENSURE_REQUIREMENTS, [plan_id=105]

(731) Sort
Input [16]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, cd_marital_status#129]
Arguments: [c_current_cdemo_sk#119 ASC NULLS FIRST], false, 0

(732) Scan parquet
Output [2]: [cd_demo_sk#130, cd_marital_status#131]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status)]
ReadSchema: struct<cd_demo_sk:int,cd_marital_status:string>

(733) Filter
Input [2]: [cd_demo_sk#130, cd_marital_status#131]
Condition : (isnotnull(cd_demo_sk#130) AND isnotnull(cd_marital_status#131))

(734) Exchange
Input [2]: [cd_demo_sk#130, cd_marital_status#131]
Arguments: hashpartitioning(cd_demo_sk#130, 100), ENSURE_REQUIREMENTS, [plan_id=106]

(735) Sort
Input [2]: [cd_demo_sk#130, cd_marital_status#131]
Arguments: [cd_demo_sk#130 ASC NULLS FIRST], false, 0

(736) SortMergeJoin
Left keys [1]: [c_current_cdemo_sk#119]
Right keys [1]: [cd_demo_sk#130]
Join type: Inner
Join condition: NOT (cd_marital_status#129 = cd_marital_status#131)

(737) Project
Output [14]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Input [18]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_cdemo_sk#119, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, cd_marital_status#129, cd_demo_sk#130, cd_marital_status#131]

(738) Exchange
Input [14]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: hashpartitioning(ss_promo_sk#109, 100), ENSURE_REQUIREMENTS, [plan_id=107]

(739) Sort
Input [14]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: [ss_promo_sk#109 ASC NULLS FIRST], false, 0

(740) Scan parquet
Output [1]: [p_promo_sk#132]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(p_promo_sk)]
ReadSchema: struct<p_promo_sk:int>

(741) Filter
Input [1]: [p_promo_sk#132]
Condition : isnotnull(p_promo_sk#132)

(742) Exchange
Input [1]: [p_promo_sk#132]
Arguments: hashpartitioning(p_promo_sk#132, 100), ENSURE_REQUIREMENTS, [plan_id=108]

(743) Sort
Input [1]: [p_promo_sk#132]
Arguments: [p_promo_sk#132 ASC NULLS FIRST], false, 0

(744) SortMergeJoin
Left keys [1]: [ss_promo_sk#109]
Right keys [1]: [p_promo_sk#132]
Join type: Inner
Join condition: None

(745) Project
Output [13]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Input [15]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_promo_sk#109, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, p_promo_sk#132]

(746) Exchange
Input [13]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: hashpartitioning(ss_hdemo_sk#106, 100), ENSURE_REQUIREMENTS, [plan_id=109]

(747) Sort
Input [13]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127]
Arguments: [ss_hdemo_sk#106 ASC NULLS FIRST], false, 0

(748) Scan parquet
Output [2]: [hd_demo_sk#133, hd_income_band_sk#134]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)]
ReadSchema: struct<hd_demo_sk:int,hd_income_band_sk:int>

(749) Filter
Input [2]: [hd_demo_sk#133, hd_income_band_sk#134]
Condition : (isnotnull(hd_demo_sk#133) AND isnotnull(hd_income_band_sk#134))

(750) Exchange
Input [2]: [hd_demo_sk#133, hd_income_band_sk#134]
Arguments: hashpartitioning(hd_demo_sk#133, 100), ENSURE_REQUIREMENTS, [plan_id=110]

(751) Sort
Input [2]: [hd_demo_sk#133, hd_income_band_sk#134]
Arguments: [hd_demo_sk#133 ASC NULLS FIRST], false, 0

(752) SortMergeJoin
Left keys [1]: [ss_hdemo_sk#106]
Right keys [1]: [hd_demo_sk#133]
Join type: Inner
Join condition: None

(753) Project
Output [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134]
Input [15]: [ss_item_sk#103, ss_hdemo_sk#106, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, hd_demo_sk#133, hd_income_band_sk#134]

(754) Exchange
Input [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134]
Arguments: hashpartitioning(c_current_hdemo_sk#120, 100), ENSURE_REQUIREMENTS, [plan_id=111]

(755) Sort
Input [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134]
Arguments: [c_current_hdemo_sk#120 ASC NULLS FIRST], false, 0

(756) Scan parquet
Output [2]: [hd_demo_sk#135, hd_income_band_sk#136]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)]
ReadSchema: struct<hd_demo_sk:int,hd_income_band_sk:int>

(757) Filter
Input [2]: [hd_demo_sk#135, hd_income_band_sk#136]
Condition : (isnotnull(hd_demo_sk#135) AND isnotnull(hd_income_band_sk#136))

(758) Exchange
Input [2]: [hd_demo_sk#135, hd_income_band_sk#136]
Arguments: hashpartitioning(hd_demo_sk#135, 100), ENSURE_REQUIREMENTS, [plan_id=112]

(759) Sort
Input [2]: [hd_demo_sk#135, hd_income_band_sk#136]
Arguments: [hd_demo_sk#135 ASC NULLS FIRST], false, 0

(760) SortMergeJoin
Left keys [1]: [c_current_hdemo_sk#120]
Right keys [1]: [hd_demo_sk#135]
Join type: Inner
Join condition: None

(761) Project
Output [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136]
Input [15]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_hdemo_sk#120, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_demo_sk#135, hd_income_band_sk#136]

(762) Exchange
Input [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136]
Arguments: hashpartitioning(ss_addr_sk#107, 100), ENSURE_REQUIREMENTS, [plan_id=113]

(763) Sort
Input [13]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136]
Arguments: [ss_addr_sk#107 ASC NULLS FIRST], false, 0

(764) Scan parquet
Output [5]: [ca_address_sk#137, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(ca_address_sk)]
ReadSchema: struct<ca_address_sk:int,ca_street_number:string,ca_street_name:string,ca_city:string,ca_zip:string>

(765) Filter
Input [5]: [ca_address_sk#137, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]
Condition : isnotnull(ca_address_sk#137)

(766) Exchange
Input [5]: [ca_address_sk#137, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]
Arguments: hashpartitioning(ca_address_sk#137, 100), ENSURE_REQUIREMENTS, [plan_id=114]

(767) Sort
Input [5]: [ca_address_sk#137, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]
Arguments: [ca_address_sk#137 ASC NULLS FIRST], false, 0

(768) SortMergeJoin
Left keys [1]: [ss_addr_sk#107]
Right keys [1]: [ca_address_sk#137]
Join type: Inner
Join condition: None

(769) Project
Output [16]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]
Input [18]: [ss_item_sk#103, ss_addr_sk#107, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_address_sk#137, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]

(770) Exchange
Input [16]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]
Arguments: hashpartitioning(c_current_addr_sk#121, 100), ENSURE_REQUIREMENTS, [plan_id=115]

(771) Sort
Input [16]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141]
Arguments: [c_current_addr_sk#121 ASC NULLS FIRST], false, 0

(772) Scan parquet
Output [5]: [ca_address_sk#142, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(ca_address_sk)]
ReadSchema: struct<ca_address_sk:int,ca_street_number:string,ca_street_name:string,ca_city:string,ca_zip:string>

(773) Filter
Input [5]: [ca_address_sk#142, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Condition : isnotnull(ca_address_sk#142)

(774) Exchange
Input [5]: [ca_address_sk#142, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: hashpartitioning(ca_address_sk#142, 100), ENSURE_REQUIREMENTS, [plan_id=116]

(775) Sort
Input [5]: [ca_address_sk#142, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: [ca_address_sk#142 ASC NULLS FIRST], false, 0

(776) SortMergeJoin
Left keys [1]: [c_current_addr_sk#121]
Right keys [1]: [ca_address_sk#142]
Join type: Inner
Join condition: None

(777) Project
Output [19]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Input [21]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, c_current_addr_sk#121, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_address_sk#142, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]

(778) Exchange
Input [19]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: hashpartitioning(hd_income_band_sk#134, 100), ENSURE_REQUIREMENTS, [plan_id=117]

(779) Sort
Input [19]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: [hd_income_band_sk#134 ASC NULLS FIRST], false, 0

(780) Scan parquet
Output [1]: [ib_income_band_sk#147]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(ib_income_band_sk)]
ReadSchema: struct<ib_income_band_sk:int>

(781) Filter
Input [1]: [ib_income_band_sk#147]
Condition : isnotnull(ib_income_band_sk#147)

(782) Exchange
Input [1]: [ib_income_band_sk#147]
Arguments: hashpartitioning(ib_income_band_sk#147, 100), ENSURE_REQUIREMENTS, [plan_id=118]

(783) Sort
Input [1]: [ib_income_band_sk#147]
Arguments: [ib_income_band_sk#147 ASC NULLS FIRST], false, 0

(784) SortMergeJoin
Left keys [1]: [hd_income_band_sk#134]
Right keys [1]: [ib_income_band_sk#147]
Join type: Inner
Join condition: None

(785) Project
Output [18]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Input [20]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#134, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, ib_income_band_sk#147]

(786) Exchange
Input [18]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: hashpartitioning(hd_income_band_sk#136, 100), ENSURE_REQUIREMENTS, [plan_id=119]

(787) Sort
Input [18]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: [hd_income_band_sk#136 ASC NULLS FIRST], false, 0

(788) Scan parquet
Output [1]: [ib_income_band_sk#148]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(ib_income_band_sk)]
ReadSchema: struct<ib_income_band_sk:int>

(789) Filter
Input [1]: [ib_income_band_sk#148]
Condition : isnotnull(ib_income_band_sk#148)

(790) Exchange
Input [1]: [ib_income_band_sk#148]
Arguments: hashpartitioning(ib_income_band_sk#148, 100), ENSURE_REQUIREMENTS, [plan_id=120]

(791) Sort
Input [1]: [ib_income_band_sk#148]
Arguments: [ib_income_band_sk#148 ASC NULLS FIRST], false, 0

(792) SortMergeJoin
Left keys [1]: [hd_income_band_sk#136]
Right keys [1]: [ib_income_band_sk#148]
Join type: Inner
Join condition: None

(793) Project
Output [17]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Input [19]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, hd_income_band_sk#136, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, ib_income_band_sk#148]

(794) Exchange
Input [17]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: hashpartitioning(ss_item_sk#103, 100), ENSURE_REQUIREMENTS, [plan_id=121]

(795) Sort
Input [17]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146]
Arguments: [ss_item_sk#103 ASC NULLS FIRST], false, 0

(796) Scan parquet
Output [4]: [i_item_sk#149, i_current_price#189, i_color#190, i_product_name#150]
Batched: true
Location: InMemoryFileIndex [file:/<warehouse_dir>]
PushedFilters: [IsNotNull(i_current_price), In(i_color, [burlywood,floral,indian,medium,purple,spring]), GreaterThanOrEqual(i_current_price,64.00), LessThanOrEqual(i_current_price,74.00), GreaterThanOrEqual(i_current_price,65.00), LessThanOrEqual(i_current_price,79.00), IsNotNull(i_item_sk)]
ReadSchema: struct<i_item_sk:int,i_current_price:decimal(7,2),i_color:string,i_product_name:string>

(797) Filter
Input [4]: [i_item_sk#149, i_current_price#189, i_color#190, i_product_name#150]
Condition : ((((((isnotnull(i_current_price#189) AND i_color#190 IN (purple,burlywood,indian,spring,floral,medium)) AND (i_current_price#189 >= 64.00)) AND (i_current_price#189 <= 74.00)) AND (i_current_price#189 >= 65.00)) AND (i_current_price#189 <= 79.00)) AND isnotnull(i_item_sk#149))

(798) Project
Output [2]: [i_item_sk#149, i_product_name#150]
Input [4]: [i_item_sk#149, i_current_price#189, i_color#190, i_product_name#150]

(799) Exchange
Input [2]: [i_item_sk#149, i_product_name#150]
Arguments: hashpartitioning(i_item_sk#149, 100), ENSURE_REQUIREMENTS, [plan_id=122]

(800) Sort
Input [2]: [i_item_sk#149, i_product_name#150]
Arguments: [i_item_sk#149 ASC NULLS FIRST], false, 0

(801) SortMergeJoin
Left keys [1]: [ss_item_sk#103]
Right keys [1]: [i_item_sk#149]
Join type: Inner
Join condition: None

(802) Project
Output [18]: [ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, d_year#125, d_year#127, s_store_name#116, s_zip#117, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, i_item_sk#149, i_product_name#150]
Input [19]: [ss_item_sk#103, ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, s_store_name#116, s_zip#117, d_year#125, d_year#127, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, i_item_sk#149, i_product_name#150]

(803) HashAggregate
Input [18]: [ss_wholesale_cost#110, ss_list_price#111, ss_coupon_amt#112, d_year#114, d_year#125, d_year#127, s_store_name#116, s_zip#117, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, i_item_sk#149, i_product_name#150]
Keys [15]: [i_product_name#150, i_item_sk#149, s_store_name#116, s_zip#117, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, d_year#114, d_year#125, d_year#127]
Functions [4]: [partial_count(1), partial_sum(UnscaledValue(ss_wholesale_cost#110)), partial_sum(UnscaledValue(ss_list_price#111)), partial_sum(UnscaledValue(ss_coupon_amt#112))]
Aggregate Attributes [4]: [count#77, sum#154, sum#155, sum#156]
Results [19]: [i_product_name#150, i_item_sk#149, s_store_name#116, s_zip#117, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, d_year#114, d_year#125, d_year#127, count#168, sum#191, sum#192, sum#193]

(804) HashAggregate
Input [19]: [i_product_name#150, i_item_sk#149, s_store_name#116, s_zip#117, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, d_year#114, d_year#125, d_year#127, count#168, sum#191, sum#192, sum#193]
Keys [15]: [i_product_name#150, i_item_sk#149, s_store_name#116, s_zip#117, ca_street_number#138, ca_street_name#139, ca_city#140, ca_zip#141, ca_street_number#143, ca_street_name#144, ca_city#145, ca_zip#146, d_year#114, d_year#125, d_year#127]
Functions [4]: [count(1), sum(UnscaledValue(ss_wholesale_cost#110)), sum(UnscaledValue(ss_list_price#111)), sum(UnscaledValue(ss_coupon_amt#112))]
Aggregate Attributes [4]: [count(1)#81, sum(UnscaledValue(ss_wholesale_cost#110))#82, sum(UnscaledValue(ss_list_price#111))#83, sum(UnscaledValue(ss_coupon_amt#112))#84]
Results [8]: [i_item_sk#149 AS item_sk#157, s_store_name#116 AS store_name#158, s_zip#117 AS store_zip#159, d_year#114 AS syear#160, count(1)#81 AS cnt#161, MakeDecimal(sum(UnscaledValue(ss_wholesale_cost#110))#82,17,2) AS s1#162, MakeDecimal(sum(UnscaledValue(ss_list_price#111))#83,17,2) AS s2#163, MakeDecimal(sum(UnscaledValue(ss_coupon_amt#112))#84,17,2) AS s3#164]

(805) Exchange
Input [8]: [item_sk#157, store_name#158, store_zip#159, syear#160, cnt#161, s1#162, s2#163, s3#164]
Arguments: hashpartitioning(item_sk#157, store_name#158, store_zip#159, 100), ENSURE_REQUIREMENTS, [plan_id=123]

(806) Sort
Input [8]: [item_sk#157, store_name#158, store_zip#159, syear#160, cnt#161, s1#162, s2#163, s3#164]
Arguments: [item_sk#157 ASC NULLS FIRST, store_name#158 ASC NULLS FIRST, store_zip#159 ASC NULLS FIRST], false, 0

(807) SortMergeJoin
Left keys [3]: [item_sk#86, store_name#87, store_zip#88]
Right keys [3]: [item_sk#157, store_name#158, store_zip#159]
Join type: Inner
Join condition: (cnt#161 <= cnt#98)

(808) Project
Output [21]: [product_name#85, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101, s1#162, s2#163, s3#164, syear#160, cnt#161]
Input [25]: [product_name#85, item_sk#86, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101, item_sk#157, store_name#158, store_zip#159, syear#160, cnt#161, s1#162, s2#163, s3#164]

(809) Exchange
Input [21]: [product_name#85, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101, s1#162, s2#163, s3#164, syear#160, cnt#161]
Arguments: rangepartitioning(product_name#85 ASC NULLS FIRST, store_name#87 ASC NULLS FIRST, cnt#161 ASC NULLS FIRST, s1#99 ASC NULLS FIRST, s1#162 ASC NULLS FIRST, 100), ENSURE_REQUIREMENTS, [plan_id=124]

(810) Sort
Input [21]: [product_name#85, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101, s1#162, s2#163, s3#164, syear#160, cnt#161]
Arguments: [product_name#85 ASC NULLS FIRST, store_name#87 ASC NULLS FIRST, cnt#161 ASC NULLS FIRST, s1#99 ASC NULLS FIRST, s1#162 ASC NULLS FIRST], true, 0

(811) AdaptiveSparkPlan
Output [21]: [product_name#85, store_name#87, store_zip#88, b_street_number#89, b_streen_name#90, b_city#91, b_zip#92, c_street_number#93, c_street_name#94, c_city#95, c_zip#96, syear#97, cnt#98, s1#99, s2#100, s3#101, s1#162, s2#163, s3#164, syear#160, cnt#161]
Arguments: isFinalPlan=true

