Skip to content

UnsafeExternalSorter

Creating Instance

UnsafeExternalSorter takes the following to be created:

  • [[taskMemoryManager]] memory:TaskMemoryManager.md[TaskMemoryManager]
  • [[blockManager]] storage:BlockManager.md[BlockManager]
  • <>
  • [[taskContext]] TaskContext
  • [[recordComparatorSupplier]] Supplier
  • [[prefixComparator]] PrefixComparator
  • [[initialSize]] Initial size
  • [[pageSizeBytes]] Page size (in bytes)
  • [[numElementsForSpillThreshold]] numElementsForSpillThreshold
  • [[existingInMemorySorter]] memory:UnsafeInMemorySorter.md[UnsafeInMemorySorter]
  • [[canUseRadixSort]] canUseRadixSort flag

== [[serializerManager]] SerializerManager

UnsafeExternalSorter is given a serializer:SerializerManager.md[SerializerManager] when <>.

UnsafeExternalSorter uses the SerializerManager for <>, <>, and (SpillableIterator) <> (to request UnsafeSorterSpillWriter for a memory:UnsafeSorterSpillWriter.md#getReader[UnsafeSorterSpillReader]).


Last update: 2020-11-21
Back to top