github.com/whtcorpsinc/milevadb-prod@v0.0.0-20211104133533-f57f4be3b597/interlock/testdata/executor_suite_out.json (about)

     1  [
     2    {
     3      "Name": "TestSetOperation",
     4      "Cases": [
     5        {
     6          "ALLEGROALLEGROSQL": "select * from t3 union select * from t1",
     7          "Causet": [
     8            "HashAgg_11 16000.00 root  group by:DeferredCauset#5, funcs:firstrow(DeferredCauset#5)->DeferredCauset#5",
     9            "└─Union_12 20000.00 root  ",
    10            "  ├─BlockReader_15 10000.00 root  data:BlockFullScan_14",
    11            "  │ └─BlockFullScan_14 10000.00 cop[einsteindb] causet:t3 keep order:false, stats:pseudo",
    12            "  └─BlockReader_18 10000.00 root  data:BlockFullScan_17",
    13            "    └─BlockFullScan_17 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo"
    14          ],
    15          "Res": [
    16            "1",
    17            "2",
    18            "3",
    19            "<nil>"
    20          ]
    21        },
    22        {
    23          "ALLEGROALLEGROSQL": "select * from t2 union all select * from t1",
    24          "Causet": [
    25            "Union_8 20000.00 root  ",
    26            "├─BlockReader_11 10000.00 root  data:BlockFullScan_10",
    27            "│ └─BlockFullScan_10 10000.00 cop[einsteindb] causet:t2 keep order:false, stats:pseudo",
    28            "└─BlockReader_14 10000.00 root  data:BlockFullScan_13",
    29            "  └─BlockFullScan_13 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo"
    30          ],
    31          "Res": [
    32            "1",
    33            "1",
    34            "1",
    35            "2",
    36            "2",
    37            "3",
    38            "<nil>",
    39            "<nil>",
    40            "<nil>"
    41          ]
    42        },
    43        {
    44          "ALLEGROALLEGROSQL": "select * from t1 except select * from t3",
    45          "Causet": [
    46            "HashJoin_7 6400.00 root  anti semi join, equal:[nulleq(test.t1.a, test.t3.a)]",
    47            "├─BlockReader_18(Build) 10000.00 root  data:BlockFullScan_17",
    48            "│ └─BlockFullScan_17 10000.00 cop[einsteindb] causet:t3 keep order:false, stats:pseudo",
    49            "└─HashAgg_10(Probe) 8000.00 root  group by:test.t1.a, funcs:firstrow(test.t1.a)->test.t1.a",
    50            "  └─BlockReader_15 10000.00 root  data:BlockFullScan_14",
    51            "    └─BlockFullScan_14 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo"
    52          ],
    53          "Res": [
    54            "1",
    55            "<nil>"
    56          ]
    57        },
    58        {
    59          "ALLEGROALLEGROSQL": "select * from t1 intersect select * from t2",
    60          "Causet": [
    61            "HashJoin_7 6400.00 root  semi join, equal:[nulleq(test.t1.a, test.t2.a)]",
    62            "├─BlockReader_18(Build) 10000.00 root  data:BlockFullScan_17",
    63            "│ └─BlockFullScan_17 10000.00 cop[einsteindb] causet:t2 keep order:false, stats:pseudo",
    64            "└─HashAgg_10(Probe) 8000.00 root  group by:test.t1.a, funcs:firstrow(test.t1.a)->test.t1.a",
    65            "  └─BlockReader_15 10000.00 root  data:BlockFullScan_14",
    66            "    └─BlockFullScan_14 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo"
    67          ],
    68          "Res": [
    69            "1",
    70            "2",
    71            "<nil>"
    72          ]
    73        },
    74        {
    75          "ALLEGROALLEGROSQL": "select * from t1 union all select * from t2 union all select * from t3",
    76          "Causet": [
    77            "Union_11 30000.00 root  ",
    78            "├─BlockReader_14 10000.00 root  data:BlockFullScan_13",
    79            "│ └─BlockFullScan_13 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo",
    80            "├─BlockReader_17 10000.00 root  data:BlockFullScan_16",
    81            "│ └─BlockFullScan_16 10000.00 cop[einsteindb] causet:t2 keep order:false, stats:pseudo",
    82            "└─BlockReader_20 10000.00 root  data:BlockFullScan_19",
    83            "  └─BlockFullScan_19 10000.00 cop[einsteindb] causet:t3 keep order:false, stats:pseudo"
    84          ],
    85          "Res": [
    86            "1",
    87            "1",
    88            "1",
    89            "2",
    90            "2",
    91            "2",
    92            "3",
    93            "3",
    94            "<nil>",
    95            "<nil>",
    96            "<nil>"
    97          ]
    98        },
    99        {
   100          "ALLEGROALLEGROSQL": "select * from t1 union all select * from t2 except select * from t3",
   101          "Causet": [
   102            "HashJoin_12 12800.00 root  anti semi join, equal:[nulleq(DeferredCauset#7, test.t3.a)]",
   103            "├─BlockReader_25(Build) 10000.00 root  data:BlockFullScan_24",
   104            "│ └─BlockFullScan_24 10000.00 cop[einsteindb] causet:t3 keep order:false, stats:pseudo",
   105            "└─HashAgg_15(Probe) 16000.00 root  group by:DeferredCauset#7, funcs:firstrow(DeferredCauset#7)->DeferredCauset#7",
   106            "  └─Union_16 20000.00 root  ",
   107            "    ├─BlockReader_19 10000.00 root  data:BlockFullScan_18",
   108            "    │ └─BlockFullScan_18 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo",
   109            "    └─BlockReader_22 10000.00 root  data:BlockFullScan_21",
   110            "      └─BlockFullScan_21 10000.00 cop[einsteindb] causet:t2 keep order:false, stats:pseudo"
   111          ],
   112          "Res": [
   113            "1",
   114            "<nil>"
   115          ]
   116        },
   117        {
   118          "ALLEGROALLEGROSQL": "select * from t1 intersect select * from t2 intersect select * from t1",
   119          "Causet": [
   120            "HashJoin_12 5120.00 root  semi join, equal:[nulleq(test.t1.a, test.t1.a)]",
   121            "├─BlockReader_27(Build) 10000.00 root  data:BlockFullScan_26",
   122            "│ └─BlockFullScan_26 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo",
   123            "└─HashJoin_14(Probe) 6400.00 root  semi join, equal:[nulleq(test.t1.a, test.t2.a)]",
   124            "  ├─BlockReader_24(Build) 10000.00 root  data:BlockFullScan_23",
   125            "  │ └─BlockFullScan_23 10000.00 cop[einsteindb] causet:t2 keep order:false, stats:pseudo",
   126            "  └─HashAgg_17(Probe) 8000.00 root  group by:test.t1.a, funcs:firstrow(test.t1.a)->test.t1.a",
   127            "    └─BlockReader_22 10000.00 root  data:BlockFullScan_21",
   128            "      └─BlockFullScan_21 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo"
   129          ],
   130          "Res": [
   131            "1",
   132            "2",
   133            "<nil>"
   134          ]
   135        },
   136        {
   137          "ALLEGROALLEGROSQL": "select * from t1 union all select * from t2 intersect select * from t3",
   138          "Causet": [
   139            "Union_12 16400.00 root  ",
   140            "├─BlockReader_15 10000.00 root  data:BlockFullScan_14",
   141            "│ └─BlockFullScan_14 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo",
   142            "└─HashJoin_17 6400.00 root  semi join, equal:[nulleq(test.t2.a, test.t3.a)]",
   143            "  ├─BlockReader_27(Build) 10000.00 root  data:BlockFullScan_26",
   144            "  │ └─BlockFullScan_26 10000.00 cop[einsteindb] causet:t3 keep order:false, stats:pseudo",
   145            "  └─HashAgg_20(Probe) 8000.00 root  group by:test.t2.a, funcs:firstrow(test.t2.a)->test.t2.a",
   146            "    └─BlockReader_25 10000.00 root  data:BlockFullScan_24",
   147            "      └─BlockFullScan_24 10000.00 cop[einsteindb] causet:t2 keep order:false, stats:pseudo"
   148          ],
   149          "Res": [
   150            "1",
   151            "1",
   152            "2",
   153            "2",
   154            "3",
   155            "<nil>"
   156          ]
   157        },
   158        {
   159          "ALLEGROALLEGROSQL": "select * from t1 except select * from t2 intersect select * from t3",
   160          "Causet": [
   161            "HashJoin_11 6400.00 root  anti semi join, equal:[nulleq(test.t1.a, test.t2.a)]",
   162            "├─HashJoin_20(Build) 6400.00 root  semi join, equal:[nulleq(test.t2.a, test.t3.a)]",
   163            "│ ├─BlockReader_31(Build) 10000.00 root  data:BlockFullScan_30",
   164            "│ │ └─BlockFullScan_30 10000.00 cop[einsteindb] causet:t3 keep order:false, stats:pseudo",
   165            "│ └─HashAgg_23(Probe) 8000.00 root  group by:test.t2.a, funcs:firstrow(test.t2.a)->test.t2.a",
   166            "│   └─BlockReader_28 10000.00 root  data:BlockFullScan_27",
   167            "│     └─BlockFullScan_27 10000.00 cop[einsteindb] causet:t2 keep order:false, stats:pseudo",
   168            "└─HashAgg_14(Probe) 8000.00 root  group by:test.t1.a, funcs:firstrow(test.t1.a)->test.t1.a",
   169            "  └─BlockReader_19 10000.00 root  data:BlockFullScan_18",
   170            "    └─BlockFullScan_18 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo"
   171          ],
   172          "Res": [
   173            "1",
   174            "3",
   175            "<nil>"
   176          ]
   177        }
   178      ]
   179    },
   180    {
   181      "Name": "TestSetOperationOnDiffDefCausType",
   182      "Cases": [
   183        {
   184          "ALLEGROALLEGROSQL": "select * from t3 union select * from t1",
   185          "Causet": [
   186            "HashAgg_11 16000.00 root  group by:DeferredCauset#7, DeferredCauset#8, funcs:firstrow(DeferredCauset#7)->DeferredCauset#7, funcs:firstrow(DeferredCauset#8)->DeferredCauset#8",
   187            "└─Union_12 20000.00 root  ",
   188            "  ├─BlockReader_15 10000.00 root  data:BlockFullScan_14",
   189            "  │ └─BlockFullScan_14 10000.00 cop[einsteindb] causet:t3 keep order:false, stats:pseudo",
   190            "  └─Projection_16 10000.00 root  test.t1.a, cast(test.t1.b, decimal(30,10) BINARY)->DeferredCauset#8",
   191            "    └─BlockReader_18 10000.00 root  data:BlockFullScan_17",
   192            "      └─BlockFullScan_17 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo"
   193          ],
   194          "Res": [
   195            "1 1.0000000000",
   196            "2 2.0000000000",
   197            "2 2.1000000000",
   198            "3 3.0000000000",
   199            "<nil> <nil>"
   200          ]
   201        },
   202        {
   203          "ALLEGROALLEGROSQL": "select * from t2 union all select * from t1",
   204          "Causet": [
   205            "Union_8 20000.00 root  ",
   206            "├─BlockReader_11 10000.00 root  data:BlockFullScan_10",
   207            "│ └─BlockFullScan_10 10000.00 cop[einsteindb] causet:t2 keep order:false, stats:pseudo",
   208            "└─Projection_12 10000.00 root  test.t1.a, cast(test.t1.b, varchar(20) BINARY CHARACTER SET utf8mb4 COLLATE utf8mb4_bin)->DeferredCauset#8",
   209            "  └─BlockReader_14 10000.00 root  data:BlockFullScan_13",
   210            "    └─BlockFullScan_13 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo"
   211          ],
   212          "Res": [
   213            "1 1",
   214            "1 1",
   215            "1 1",
   216            "2 2",
   217            "2 2",
   218            "3 3",
   219            "<nil> 3",
   220            "<nil> <nil>",
   221            "<nil> <nil>"
   222          ]
   223        },
   224        {
   225          "ALLEGROALLEGROSQL": "select * from t1 except select * from t3",
   226          "Causet": [
   227            "HashJoin_7 6400.00 root  anti semi join, equal:[nulleq(test.t1.a, test.t3.a)], other cond:nulleq(cast(test.t1.b), test.t3.b)",
   228            "├─BlockReader_18(Build) 10000.00 root  data:BlockFullScan_17",
   229            "│ └─BlockFullScan_17 10000.00 cop[einsteindb] causet:t3 keep order:false, stats:pseudo",
   230            "└─HashAgg_10(Probe) 8000.00 root  group by:test.t1.a, test.t1.b, funcs:firstrow(test.t1.a)->test.t1.a, funcs:firstrow(test.t1.b)->test.t1.b",
   231            "  └─BlockReader_15 10000.00 root  data:BlockFullScan_14",
   232            "    └─BlockFullScan_14 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo"
   233          ],
   234          "Res": [
   235            "1 1",
   236            "2 2",
   237            "<nil> <nil>"
   238          ]
   239        },
   240        {
   241          "ALLEGROALLEGROSQL": "select * from t1 intersect select * from t2",
   242          "Causet": [
   243            "HashJoin_7 6400.00 root  semi join, equal:[nulleq(test.t1.a, test.t2.a)], other cond:nulleq(cast(test.t1.b), cast(test.t2.b))",
   244            "├─BlockReader_18(Build) 10000.00 root  data:BlockFullScan_17",
   245            "│ └─BlockFullScan_17 10000.00 cop[einsteindb] causet:t2 keep order:false, stats:pseudo",
   246            "└─HashAgg_10(Probe) 8000.00 root  group by:test.t1.a, test.t1.b, funcs:firstrow(test.t1.a)->test.t1.a, funcs:firstrow(test.t1.b)->test.t1.b",
   247            "  └─BlockReader_15 10000.00 root  data:BlockFullScan_14",
   248            "    └─BlockFullScan_14 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo"
   249          ],
   250          "Res": [
   251            "1 1",
   252            "2 2",
   253            "<nil> <nil>"
   254          ]
   255        },
   256        {
   257          "ALLEGROALLEGROSQL": "select * from t1 union all select * from t2 union all select * from t3",
   258          "Causet": [
   259            "Union_11 30000.00 root  ",
   260            "├─Projection_12 10000.00 root  test.t1.a, cast(test.t1.b, varbinary(30) BINARY)->DeferredCauset#11",
   261            "│ └─BlockReader_14 10000.00 root  data:BlockFullScan_13",
   262            "│   └─BlockFullScan_13 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo",
   263            "├─Projection_15 10000.00 root  test.t2.a, cast(test.t2.b, varbinary(30) BINARY)->DeferredCauset#11",
   264            "│ └─BlockReader_17 10000.00 root  data:BlockFullScan_16",
   265            "│   └─BlockFullScan_16 10000.00 cop[einsteindb] causet:t2 keep order:false, stats:pseudo",
   266            "└─Projection_18 10000.00 root  test.t3.a, cast(test.t3.b, varbinary(30) BINARY)->DeferredCauset#11",
   267            "  └─BlockReader_20 10000.00 root  data:BlockFullScan_19",
   268            "    └─BlockFullScan_19 10000.00 cop[einsteindb] causet:t3 keep order:false, stats:pseudo"
   269          ],
   270          "Res": [
   271            "1 1",
   272            "1 1",
   273            "1 1",
   274            "2 2",
   275            "2 2",
   276            "2 2.1000000000",
   277            "3 3",
   278            "3 3.0000000000",
   279            "<nil> 3",
   280            "<nil> <nil>",
   281            "<nil> <nil>"
   282          ]
   283        },
   284        {
   285          "ALLEGROALLEGROSQL": "select * from t1 union all select * from t2 except select * from t3",
   286          "Causet": [
   287            "HashJoin_12 12800.00 root  anti semi join, equal:[nulleq(DeferredCauset#10, test.t3.a)], other cond:nulleq(cast(DeferredCauset#11), cast(test.t3.b))",
   288            "├─BlockReader_25(Build) 10000.00 root  data:BlockFullScan_24",
   289            "│ └─BlockFullScan_24 10000.00 cop[einsteindb] causet:t3 keep order:false, stats:pseudo",
   290            "└─HashAgg_15(Probe) 16000.00 root  group by:DeferredCauset#10, DeferredCauset#11, funcs:firstrow(DeferredCauset#10)->DeferredCauset#10, funcs:firstrow(DeferredCauset#11)->DeferredCauset#11",
   291            "  └─Union_16 20000.00 root  ",
   292            "    ├─Projection_17 10000.00 root  test.t1.a, cast(test.t1.b, varbinary(20))->DeferredCauset#11",
   293            "    │ └─BlockReader_19 10000.00 root  data:BlockFullScan_18",
   294            "    │   └─BlockFullScan_18 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo",
   295            "    └─Projection_20 10000.00 root  test.t2.a, cast(test.t2.b, varbinary(20))->DeferredCauset#11",
   296            "      └─BlockReader_22 10000.00 root  data:BlockFullScan_21",
   297            "        └─BlockFullScan_21 10000.00 cop[einsteindb] causet:t2 keep order:false, stats:pseudo"
   298          ],
   299          "Res": [
   300            "1 1",
   301            "2 2",
   302            "<nil> 3",
   303            "<nil> <nil>"
   304          ]
   305        },
   306        {
   307          "ALLEGROALLEGROSQL": "select * from t1 intersect select * from t2 intersect select * from t1",
   308          "Causet": [
   309            "HashJoin_12 5120.00 root  semi join, equal:[nulleq(test.t1.a, test.t1.a) nulleq(test.t1.b, test.t1.b)]",
   310            "├─BlockReader_27(Build) 10000.00 root  data:BlockFullScan_26",
   311            "│ └─BlockFullScan_26 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo",
   312            "└─HashJoin_14(Probe) 6400.00 root  semi join, equal:[nulleq(test.t1.a, test.t2.a)], other cond:nulleq(cast(test.t1.b), cast(test.t2.b))",
   313            "  ├─BlockReader_24(Build) 10000.00 root  data:BlockFullScan_23",
   314            "  │ └─BlockFullScan_23 10000.00 cop[einsteindb] causet:t2 keep order:false, stats:pseudo",
   315            "  └─HashAgg_17(Probe) 8000.00 root  group by:test.t1.a, test.t1.b, funcs:firstrow(test.t1.a)->test.t1.a, funcs:firstrow(test.t1.b)->test.t1.b",
   316            "    └─BlockReader_22 10000.00 root  data:BlockFullScan_21",
   317            "      └─BlockFullScan_21 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo"
   318          ],
   319          "Res": [
   320            "1 1",
   321            "2 2",
   322            "<nil> <nil>"
   323          ]
   324        },
   325        {
   326          "ALLEGROALLEGROSQL": "select * from t1 union all select * from t2 intersect select * from t3",
   327          "Causet": [
   328            "Union_12 16400.00 root  ",
   329            "├─Projection_13 10000.00 root  test.t1.a, cast(test.t1.b, varbinary(20))->DeferredCauset#11",
   330            "│ └─BlockReader_15 10000.00 root  data:BlockFullScan_14",
   331            "│   └─BlockFullScan_14 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo",
   332            "└─Projection_16 6400.00 root  test.t2.a, cast(test.t2.b, varbinary(20))->DeferredCauset#11",
   333            "  └─HashJoin_17 6400.00 root  semi join, equal:[nulleq(test.t2.a, test.t3.a)], other cond:nulleq(cast(test.t2.b), cast(test.t3.b))",
   334            "    ├─BlockReader_27(Build) 10000.00 root  data:BlockFullScan_26",
   335            "    │ └─BlockFullScan_26 10000.00 cop[einsteindb] causet:t3 keep order:false, stats:pseudo",
   336            "    └─HashAgg_20(Probe) 8000.00 root  group by:test.t2.a, test.t2.b, funcs:firstrow(test.t2.a)->test.t2.a, funcs:firstrow(test.t2.b)->test.t2.b",
   337            "      └─BlockReader_25 10000.00 root  data:BlockFullScan_24",
   338            "        └─BlockFullScan_24 10000.00 cop[einsteindb] causet:t2 keep order:false, stats:pseudo"
   339          ],
   340          "Res": [
   341            "1 1",
   342            "1 1",
   343            "2 2",
   344            "3 3",
   345            "<nil> <nil>"
   346          ]
   347        },
   348        {
   349          "ALLEGROALLEGROSQL": "select * from t1 except select * from t2 intersect select * from t3",
   350          "Causet": [
   351            "HashJoin_11 6400.00 root  anti semi join, equal:[nulleq(test.t1.a, test.t2.a)], other cond:nulleq(cast(test.t1.b), cast(test.t2.b))",
   352            "├─HashJoin_20(Build) 6400.00 root  semi join, equal:[nulleq(test.t2.a, test.t3.a)], other cond:nulleq(cast(test.t2.b), cast(test.t3.b))",
   353            "│ ├─BlockReader_31(Build) 10000.00 root  data:BlockFullScan_30",
   354            "│ │ └─BlockFullScan_30 10000.00 cop[einsteindb] causet:t3 keep order:false, stats:pseudo",
   355            "│ └─HashAgg_23(Probe) 8000.00 root  group by:test.t2.a, test.t2.b, funcs:firstrow(test.t2.a)->test.t2.a, funcs:firstrow(test.t2.b)->test.t2.b",
   356            "│   └─BlockReader_28 10000.00 root  data:BlockFullScan_27",
   357            "│     └─BlockFullScan_27 10000.00 cop[einsteindb] causet:t2 keep order:false, stats:pseudo",
   358            "└─HashAgg_14(Probe) 8000.00 root  group by:test.t1.a, test.t1.b, funcs:firstrow(test.t1.a)->test.t1.a, funcs:firstrow(test.t1.b)->test.t1.b",
   359            "  └─BlockReader_19 10000.00 root  data:BlockFullScan_18",
   360            "    └─BlockFullScan_18 10000.00 cop[einsteindb] causet:t1 keep order:false, stats:pseudo"
   361          ],
   362          "Res": [
   363            "1 1",
   364            "2 2",
   365            "3 3",
   366            "<nil> <nil>"
   367          ]
   368        }
   369      ]
   370    }
   371  ]