(p *plan.JoinMerge)
| 234 | return NewProjection(m.Ctx, p), nil |
| 235 | } |
| 236 | func (m *JobExecutor) WalkJoin(p *plan.JoinMerge) (Task, error) { |
| 237 | execTask := NewTaskParallel(m.Ctx) |
| 238 | //u.Debugf("join.Left: %#v \nright:%#v", p.Left, p.Right) |
| 239 | l, err := m.WalkPlanAll(p.Left) |
| 240 | if err != nil { |
| 241 | u.Errorf("whoops %T %v", l, err) |
| 242 | return nil, err |
| 243 | } |
| 244 | err = execTask.Add(l) |
| 245 | if err != nil { |
| 246 | u.Errorf("whoops %T %v", l, err) |
| 247 | return nil, err |
| 248 | } |
| 249 | r, err := m.WalkPlanAll(p.Right) |
| 250 | if err != nil { |
| 251 | return nil, err |
| 252 | } |
| 253 | err = execTask.Add(r) |
| 254 | if err != nil { |
| 255 | return nil, err |
| 256 | } |
| 257 | |
| 258 | jm := NewJoinNaiveMerge(m.Ctx, l.(TaskRunner), r.(TaskRunner), p) |
| 259 | err = execTask.Add(jm) |
| 260 | if err != nil { |
| 261 | return nil, err |
| 262 | } |
| 263 | return execTask, nil |
| 264 | } |
| 265 | func (m *JobExecutor) WalkJoinKey(p *plan.JoinKey) (Task, error) { |
| 266 | return NewJoinKey(m.Ctx, p), nil |
| 267 | } |
nothing calls this directly
no test coverage detected