diff --git a/planner/core/encode.go b/planner/core/encode.go index 28ea98cd9936b..a5c491de941d1 100644 --- a/planner/core/encode.go +++ b/planner/core/encode.go @@ -133,6 +133,8 @@ func (pn *planEncoder) encodePlan(p Plan, isRoot bool, store kv.StoreType, depth if copPlan.tablePlan != nil { pn.encodePlan(copPlan.tablePlan, false, store, depth) } + case *PhysicalShuffleReceiverStub: + pn.encodePlan(copPlan.DataSource, isRoot, store, depth) case *PhysicalCTE: pn.ctes = append(pn.ctes, copPlan) } diff --git a/planner/core/plan_test.go b/planner/core/plan_test.go index f40b8894293f1..cba8e0e642f59 100644 --- a/planner/core/plan_test.go +++ b/planner/core/plan_test.go @@ -223,6 +223,7 @@ func TestEncodeDecodePlan(t *testing.T) { planTree = getPlanTree() require.Contains(t, planTree, "Shuffle") require.Contains(t, planTree, "ShuffleReceiver") + require.Contains(t, planTree, "TableFullScan") } func TestNormalizedDigest(t *testing.T) {