Source:
<code><START> private HashBuilderOperator( <END> OperatorContext operatorContext, PartitionedLookupSourceFactory lookupSourceFactory, int partitionIndex, List<Integer> outputChannels, List<Integer> hashChannels, OptionalInt preComputedHashChannel, Optional<JoinFilterFunctionFactory> filterFunctionFactory, Optional<Integer> sortChannel, List<JoinFilterFunctionFactory> searchFunctionFactories, int expectedPositions, PagesIndex.Factory pagesIndexFactory, boolean spillEnabled, SingleStreamSpillerFactory singleStreamSpillerFactory) { requireNonNull(pagesIndexFactory, "pagesIndexFactory is null"); this.operatorContext = operatorContext; this.partitionIndex = partitionIndex; this.filterFunctionFactory = filterFunctionFactory; this.sortChannel = sortChannel; this.searchFunctionFactories = searchFunctionFactories; this.localUserMemoryContext = operatorContext.localUserMemoryContext(); this.localRevocableMemoryContext = operatorContext.localRevocableMemoryContext(); this.index = pagesIndexFactory.newPagesIndex(lookupSourceFactory.getTypes(), expectedPositions); this.lookupSourceFactory = lookupSourceFactory; lookupSourceFactoryDestroyed = lookupSourceFactory.isDestroyed(); this.outputChannels = outputChannels; this.hashChannels = hashChannels; this.preComputedHashChannel = preComputedHashChannel; this.hashCollisionsCounter = new HashCollisionsCounter(operatorContext); operatorContext.setInfoSupplier(hashCollisionsCounter); this.spillEnabled = spillEnabled; this.singleStreamSpillerFactory = requireNonNull(singleStreamSpillerFactory, "singleStreamSpillerFactory is null"); }</code><technical_language>In Presto maintain "single purpose" commit rule. If main goal of this commit is fix memory account - needed accomplish this goal in commit. If generally improved - done in a separate commit a separate commit message. next time is blame sees modifier changed - miss-leaded this modifier change required fix memory accounting issue</technical_language>

Target:
public HashBuilderOperator( OperatorContext operatorContext, PartitionedLookupSourceFactory lookupSourceFactory, int partitionIndex, List<Integer> outputChannels, List<Integer> hashChannels, OptionalInt preComputedHashChannel, Optional<JoinFilterFunctionFactory> filterFunctionFactory, Optional<Integer> sortChannel, List<JoinFilterFunctionFactory> searchFunctionFactories, int expectedPositions, PagesIndex.Factory pagesIndexFactory, boolean spillEnabled, SingleStreamSpillerFactory singleStreamSpillerFactory) { requireNonNull(pagesIndexFactory, "pagesIndexFactory is null"); this.operatorContext = operatorContext; this.partitionIndex = partitionIndex; this.filterFunctionFactory = filterFunctionFactory; this.sortChannel = sortChannel; this.searchFunctionFactories = searchFunctionFactories; this.localUserMemoryContext = operatorContext.localUserMemoryContext(); this.localRevocableMemoryContext = operatorContext.localRevocableMemoryContext(); this.index = pagesIndexFactory.newPagesIndex(lookupSourceFactory.getTypes(), expectedPositions); this.lookupSourceFactory = lookupSourceFactory; lookupSourceFactoryDestroyed = lookupSourceFactory.isDestroyed(); this.outputChannels = outputChannels; this.hashChannels = hashChannels; this.preComputedHashChannel = preComputedHashChannel; this.hashCollisionsCounter = new HashCollisionsCounter(operatorContext); operatorContext.setInfoSupplier(hashCollisionsCounter); this.spillEnabled = spillEnabled; this.singleStreamSpillerFactory = requireNonNull(singleStreamSpillerFactory, "singleStreamSpillerFactory is null"); }