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

Enis Soztutar commented on HBASE-18507:
---------------------------------------

Thanks for the updating the work with templates. 

- We have updated the base folly version, these will not compile anymore: 
{code}
-#include <folly/Try.h>
 #include <folly/futures/Future.h>
 #include <folly/futures/Promise.h>
+#include <folly/futures/Try.h>
{code}
also 
{code}
-#include <folly/Unit.h>
-#include <folly/futures/Future.h>
+#include <folly/futures/Unit.h>
{code}
(you can update the folly version using the same exact version, and commands 
from {{docker-files/Dockerfile}}, see section for folly and wangle. 
- The patch undo's the changes already committed from HBASE-18564 (especially 
client-test.cc). Can you please only do changes related to the new patch. 
- remove: 
{code}
+  LOG(INFO) << "Does this work";
{code}
{code}
+  for (const auto& row : rows) {
+    VLOG(4) << "row is " << row->row();
+  }
{code}
- Nice tests, we can add more like the ones in multi-retry-test. 
- Are you gonna address this? 
{code}
+  // TODO pass the below as parameter
+  // connection_conf_->read_rpc_timeout();
+  // connection_conf_->write_rpc_timeout();
{code}
- Let's throw an exception here: 
{code}
+          //TODO runtime_error reqd ?
{code}
also this should not be caught, or should be rethrown: 
{code}
+      } catch (const std::bad_typeid &e) {
+        std::cout << " caught " << e.what() << '\n';
+      }
{code}
- This does not look right:
{code}
if (strstr(typeid(*pget).name(), "Get") != nullptr) 
{code}
why are you doing string comparison. It is very inefficient to do this. We 
should just compare the typeids, or templatize this code path as well.
- Remove if not needed: 
{code}
+// template class RequestConverter<hbase::Row>;
{code}
{code}
+// template class AsyncBatchRpcRetryingCaller<folly::Unit>;
{code}
- We have talked (offline) about Puts returning {{folly::Unit}} instead of 
empty {{Result}} objects. Are you gonna address that?
{code}
+folly::Future<std::vector<folly::Try<std::shared_ptr<Result>>>> 
RawAsyncTable::Put(
{code}
- Remaining looks good. 

> [C++] Support for MultiPuts in AsyncBatchRpcRetryingCaller class
> ----------------------------------------------------------------
>
>                 Key: HBASE-18507
>                 URL: https://issues.apache.org/jira/browse/HBASE-18507
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Sudeep Sunthankar
>            Assignee: Sudeep Sunthankar
>         Attachments: HBASE-18507.HBASE-14850.v1.patch, 
> HBASE-18507.HBASE-14850.v2.patch
>
>
> We will be addressing Multi Puts changes to AsyncBatchRpcRetryingCaller class 
> here



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to