Is your feature request related to a problem or challenge? Please describe what you are trying to do.
As a step towards implementing true shuffle, we need ShuffleReaderExec to be able to read from multiple locations per partition instead of from a single location.
Describe the solution you'd like
ShuffleReaderExec should accept Vec<Vec<PartitionLocation>> instead of Vec<PartitionLocation>.
Describe alternatives you've considered
None
Additional context
None