ExternalSort was using tmp dir which sometimes is full, new implementation uses whatever dir the preprocessing is happening in as a place to store temporary sort files