Managing data partitioning in a PLINQ query