I just noticed that this code is not very well integrated with the code above it. We do not actually have to test for (root instanceof ReceivePlanNode) and (recList.size() == 1) -- these conditions are all already discovered or introduced in separate code paths just above this code. he specific mv fix code for each case should be moved up into the corresponding block.