// 2) Bind RHS to the flow, which wouldn't happen otherwise.
// Note that RHS has no output, so there shouldn't be any danger in doing this.
filterPipe = new NaiveMerge(largePipe.getName(), largePipe, smallPipe);
// Load the bloom filter into memory and apply it to the LHS.
filterPipe = new Each(filterPipe, largeJoinFields, new BloomJoinFilter(bloomJobID, false));
ConfigDef config = filterPipe.getStepConfigDef(); // tell BloomAssemblyStrategy which bloom filter to expect
config.setProperty(BloomProps.SOURCE_BLOOM_FILTER_ID, bloomJobID);
config.setProperty(BloomProps.REQUIRED_BLOOM_FILTER_PATH, bloomFinalFilter);
return filterPipe;