If the Observable supplied as content for HttpClientRequest produces an error, the request processing never completes. The following code reproduces the issue:
RxNetty.createHttpPost("http://www.google.com", Observable.<ByteBuf>error(new NullPointerException()))
.toBlocking()
.lastOrDefault(null);
When Observable.<ByteBuf>error(new NullPointerException()) above is replaced with an Observable.<ByteBuf>empty() then the processing completes.