[TACHYON-62] Netty

Netty implementation of the data server.

This patch is not done yet.  Its intent is to show the work I have right now for commenting.

This PR should not be merged until performance results come in.
Let's fix these in a diff PR.
On Aug 28, 2014 4:43 PM, "Mubarak Seyed" <notifications@github.com> wrote:

> In core/src/main/java/tachyon/worker/nio/NIODataServer.java:
>
> > +    socketChannel.configureBlocking(false);
> > +
> > +    // Register the new SocketChannel with our Selector, indicating we'd like to be notified
> > +    // when there is data waiting to be read.
> > +    socketChannel.register(mSelector, SelectionKey.OP_READ);
> > +  }
> > +
> > +  /**
> > +   * Close the data server.
> > +   *
> > +   * @throws IOException
> > +   */
> > +  @Override
> > +  public void close() throws IOException {
> > +    mShutdown = true;
> > +    mServerChannel.close();
>
> Sorry that i am reviewing NIO based DataServer code too. Need
> try/catch/finally here as mSelector#close never be called if
> mServerChannel.close() throws IOException. If you think this issue is not
> related to this PR then we can file a JIRA. Thanks
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/amplab/tachyon/pull/333/files#r16875164>.
>