Program: 8183
Project: 8183
Buggy source:
/** 
 * Constructor with custom eventloop group and timeout
 * @param config          for netty
 * @param securityContext security context (ssl, authentication)
 * @param uris            to connect to
 */
public EtcdNettyClient(final EtcdNettyConfig config,final EtcdSecurityContext securityContext,final URI... uris){
  logger.info("String_Node_Str");
  this.lastWorkingUriIndex=0;
  this.config=config.clone();
  this.securityContext=securityContext.clone();
  this.uris=uris;
  this.eventLoopGroup=config.getEventLoopGroup();
  this.bootstrap=new Bootstrap().group(eventLoopGroup).channel(config.getSocketChannelClass()).option(ChannelOption.ALLOCATOR,PooledByteBufAllocator.DEFAULT).option(ChannelOption.TCP_NODELAY,true).option(ChannelOption.CONNECT_TIMEOUT_MILLIS,config.getConnectTimeout()).resolver(new DnsAddressResolverGroup(NioDatagramChannel.class,DnsServerAddresses.defaultAddresses())).handler(new ChannelInitializer<SocketChannel>(){
    @Override public void initChannel(    SocketChannel ch) throws Exception {
      ChannelPipeline p=ch.pipeline();
      if (securityContext.hasNettySsl()) {
        p.addLast(securityContext.nettySslContext().newHandler(ch.alloc()));
      }
 else       if (securityContext.hasSsl()) {
        p.addLast(new SslHandler(securityContext.sslContext().createSSLEngine()));
      }
      p.addLast("String_Node_Str",new HttpClientCodec());
      p.addLast("String_Node_Str",new HttpBasicAuthHandler());
      p.addLast("String_Node_Str",new ChunkedWriteHandler());
      p.addLast("String_Node_Str",new HttpObjectAggregator(config.getMaxFrameSize()));
    }
  }
);
}

Fixed version (ground truth):
/** 
 * Constructor with custom eventloop group and timeout
 * @param config          for netty
 * @param securityContext security context (ssl, authentication)
 * @param uris            to connect to
 */
public EtcdNettyClient(final EtcdNettyConfig config,final EtcdSecurityContext securityContext,final URI... uris){
  logger.info("String_Node_Str");
  this.lastWorkingUriIndex=0;
  this.config=config.clone();
  this.securityContext=securityContext.clone();
  this.uris=uris;
  this.eventLoopGroup=config.getEventLoopGroup() == null ? new NioEventLoopGroup() : config.getEventLoopGroup();
  this.bootstrap=new Bootstrap().group(eventLoopGroup).channel(config.getSocketChannelClass()).option(ChannelOption.ALLOCATOR,PooledByteBufAllocator.DEFAULT).option(ChannelOption.TCP_NODELAY,true).option(ChannelOption.CONNECT_TIMEOUT_MILLIS,config.getConnectTimeout()).resolver(new DnsAddressResolverGroup(NioDatagramChannel.class,DnsServerAddresses.defaultAddresses())).handler(new ChannelInitializer<SocketChannel>(){
    @Override public void initChannel(    SocketChannel ch) throws Exception {
      ChannelPipeline p=ch.pipeline();
      if (securityContext.hasNettySsl()) {
        p.addLast(securityContext.nettySslContext().newHandler(ch.alloc()));
      }
 else       if (securityContext.hasSsl()) {
        p.addLast(new SslHandler(securityContext.sslContext().createSSLEngine()));
      }
      p.addLast("String_Node_Str",new HttpClientCodec());
      p.addLast("String_Node_Str",new HttpBasicAuthHandler());
      p.addLast("String_Node_Str",new ChunkedWriteHandler());
      p.addLast("String_Node_Str",new HttpObjectAggregator(config.getMaxFrameSize()));
    }
  }
);
}