[ https://issues.apache.org/jira/browse/HBASE-18174?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16041710#comment-16041710 ]
Ted Yu commented on HBASE-18174: -------------------------------- With patch v7 where I use lambda inside RawAsyncTable::CheckAndPut(), I got linker error: {code} /usr/src/hbase/hbase-native-client/buck-out/gen/core/core#default,static/libcore.a(raw-async-table.cc.o): In function `hbase::RawAsyncTable::CheckAndPut(std::string const&, std::string const&, std::string const&, std::string const&, hbase::Put const&)': /usr/src/hbase/hbase-native-client/core/raw-async-table.cc:135: undefined reference to `hbase::AsyncSingleRequestRpcRetryingCaller<bool>::Call()' /usr/src/hbase/hbase-native-client/buck-out/gen/core/core#default,static/libcore.a(raw-async-table.cc.o): In function `void __gnu_cxx::new_allocator<hbase::AsyncSingleRequestRpcRetryingCaller<bool> >::construct<hbase::AsyncSingleRequestRpcRetryingCaller<bool>, std::shared_ptr<hbase::AsyncConnection>&, std::shared_ptr<folly::HHWheelTimer>&, std::shared_ptr<hbase::pb::TableName>&, std::string&, hbase::RegionLocateType&, std::function<folly::Future<bool> (std::shared_ptr<hbase::HBaseRpcController>, std::shared_ptr<hbase::RegionLocation>, std::shared_ptr<hbase::RpcClient>)>&, std::chrono::duration<long, std::ratio<1l, 1000000000l> >&, unsigned int&, std::chrono::duration<long, std::ratio<1l, 1000000000l> >&, std::chrono::duration<long, std::ratio<1l, 1000000000l> >&, unsigned int&>(hbase::AsyncSingleRequestRpcRetryingCaller<bool>*, std::shared_ptr<hbase::AsyncConnection>&, std::shared_ptr<folly::HHWheelTimer>&, std::shared_ptr<hbase::pb::TableName>&, std::string&, hbase::RegionLocateType&, std::function<folly::Future<bool> (std::shared_ptr<hbase::HBaseRpcController>, std::shared_ptr<hbase::RegionLocation>, std::shared_ptr<hbase::RpcClient>)>&, std::chrono::duration<long, std::ratio<1l, 1000000000l> >&, unsigned int&, std::chrono::duration<long, std::ratio<1l, 1000000000l> >&, std::chrono::duration<long, std::ratio<1l, 1000000000l> >&, unsigned int&)': /usr/bin/../lib/gcc/x86_64-linux-gnu/5.3.1/../../../../include/c++/5.3.1/ext/new_allocator.h:120: undefined reference to `hbase::AsyncSingleRequestRpcRetryingCaller<bool>::AsyncSingleRequestRpcRetryingCaller(std::shared_ptr<hbase::AsyncConnection>, std::shared_ptr<folly::HHWheelTimer>, std::shared_ptr<hbase::pb::TableName>, std::string const&, hbase::RegionLocateType, std::function<folly::Future<bool> (std::shared_ptr<hbase::HBaseRpcController>, std::shared_ptr<hbase::RegionLocation>, std::shared_ptr<hbase::RpcClient>)>, std::chrono::duration<long, std::ratio<1l, 1000000000l> >, unsigned int, std::chrono::duration<long, std::ratio<1l, 1000000000l> >, std::chrono::duration<long, std::ratio<1l, 1000000000l> >, unsigned int)' {code} > Implement Table#checkAndPut() > ----------------------------- > > Key: HBASE-18174 > URL: https://issues.apache.org/jira/browse/HBASE-18174 > Project: HBase > Issue Type: Sub-task > Reporter: Ted Yu > Attachments: 18174.v1.txt, 18174.v7.lambda.txt > > > This task is to implement Table#checkAndPut() method -- This message was sent by Atlassian JIRA (v6.3.15#6346)