[ 
https://issues.apache.org/jira/browse/HDFS-6994?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14125914#comment-14125914
 ] 

Colin Patrick McCabe commented on HDFS-6994:
--------------------------------------------

bq. Alan wrote: Ha. I was thinking "what name would I recommend instead?" this 
morning and came up with libhdfs++. 

:)  I was thinking 'n' not 'h'.  libndfs++.

As discussed earlier in this thread, libhdfs is going to keep on keeping on, 
since we need it for s3 support (and other stuff).  This library isn't really a 
replacement for libhdfs, but something different with different advantages and 
drawbacks.

bq. Haohui wrote: I think this is a fair point. C++11 covers a lot of issues 
for the original boost use case. The only remaining gap I see, however, is 
boost::asio.

This code doesn't use boost::asio.

bq. Alan wrote: I'm very much against boost showing up in Hadoop in any way, 
shape, or form. It's always long term pain. I'd much rather take the short term 
hit of requiring a modern compiler than deal with boost.

For CentOS 6, it's not as simple as just "upgrade the compiler."  Binaries 
generated with a C\+\+11 compiler will pull in a newer version of libstdc\+\+ 
than those generated with the earlier compiler.  This in turn means that your 
binaries will not be able to use any of the system libraries (that you got with 
apt-get or yum).  Since we have to support CentOS 6, this is a deal-breaker for 
us actually using this library in the next few years.

I think the practical solution is just to use make boost a compiler option for 
those who want it.  The important thing to keep in mind is that: *the code can 
build without boost, and that is the configuration that Jenkins should build 
and test.*  Anyone who wants a non-boost version can easily build it (in fact, 
it will be the default), and we can document that the boost version is just 
there temporarily for compatibility reasons.

> libhdfs3 - A native C/C++ HDFS client
> -------------------------------------
>
>                 Key: HDFS-6994
>                 URL: https://issues.apache.org/jira/browse/HDFS-6994
>             Project: Hadoop HDFS
>          Issue Type: Task
>          Components: hdfs-client
>            Reporter: Zhanwei Wang
>         Attachments: HDFS-6994-rpc-8.patch, HDFS-6994.patch
>
>
> Hi All
> I just got the permission to open source libhdfs3, which is a native C/C++ 
> HDFS client based on Hadoop RPC protocol and HDFS Data Transfer Protocol.
> libhdfs3 provide the libhdfs style C interface and a C++ interface. Support 
> both HADOOP RPC version 8 and 9. Support Namenode HA and Kerberos 
> authentication.
> libhdfs3 is currently used by HAWQ of Pivotal
> I'd like to integrate libhdfs3 into HDFS source code to benefit others.
> You can find libhdfs3 code from github
> https://github.com/PivotalRD/libhdfs3
> http://pivotalrd.github.io/libhdfs3/



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to