private void initPipeline(ServerBootstrap bootstrap, Configuration conf) throws Exception {
    SHUFFLE = getShuffle(conf);
    // TODO Setup SSL Shuffle
    //  if (conf.getBoolean(MRConfig.SHUFFLE_SSL_ENABLED_KEY,
    //                      MRConfig.SHUFFLE_SSL_ENABLED_DEFAULT)) {
    //    LOG.info("Encrypted shuffle is enabled.");
    //    sslFactory = new SSLFactory(SSLFactory.Mode.SERVER, conf);
    //    sslFactory.init();
    //  }

    ChannelInitializer<NioSocketChannel> channelInitializer =
        new ChannelInitializer<NioSocketChannel>() {
          @Override
      public void initChannel(NioSocketChannel ch) throws Exception {
        ChannelPipeline pipeline = ch.pipeline();
        if (sslFactory != null) {
          pipeline.addLast("ssl", new SslHandler(sslFactory.createSSLEngine()));
        }
        if (LOG.isDebugEnabled()) {
          pipeline.addLast("loggingHandler", new LoggingHandler(LogLevel.DEBUG));
        }
        pipeline.addLast("decoder", new HttpRequestDecoder());
        pipeline.addLast("aggregator", new HttpObjectAggregator(1 << 16));
        pipeline.addLast("encoder", new HttpResponseEncoder());
        pipeline.addLast("chunking", new ChunkedWriteHandler());
        pipeline.addLast("shuffle", SHUFFLE);
        pipeline.addLast("idle", new IdleStateHandler(0, connectionKeepAliveTimeOut, 0));
        pipeline.addLast(TIMEOUT_HANDLER, new TimeoutHandler());
      }
    };
    bootstrap.childHandler(channelInitializer);
  }
Should the shuffle use posix_fadvise calls to manage the OS cache during
sendfile
llap-server/src/java/org/apache/hadoop/hive/llap/shufflehandler/ShuffleHandler.java