[
https://issues.apache.org/jira/browse/HBASE-18086?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16095149#comment-16095149
]
Enis Soztutar commented on HBASE-18086:
---------------------------------------
- This method is not used, did you mean to use it?:
{code}
+std::string Row(const std::string &prefix, uint64_t i) {
{code}
- We should accumulate the cells for every family, and do 1 put per row,
instead of 1 put per-row per-family:
{code}
+ for (auto family : families) {
+ auto n_cols = Random::rand32(1, cols);
+ auto put = Put{row};
+ put.AddColumn(family, kNumColumn, std::to_string(n_cols));
+ for (unsigned int k = 1; k <= n_cols; k++) {
+ put.AddColumn(family, std::to_string(k), row);
+ }
+ table->Put(put);
+ }
{code}
- You should not call the methods with passing {{FLAGS_num_rows - 1}}, because
total_rows is 10000, rather than 9999, etc. Instead total_rows should be sent
as it, but if you want to get the width of the max element, then you can send
total_rows to the PrefixZero function, and internally inside the function you
can do this logic of {{total_rows - 1}}.
- Why are we doing Deletes before Append / Increment? Are append and increments
going to rows that always have previous Puts? What happens when Delete and
Append comes with the same timestamp?
- The problem with doing scans and get verification differently is that we are
complicating this logic unnecessarily. Can we please make it so that we do a
round of multi-gets and a round of Scans. The test should be simple to
understand and simple to debug. Having half of the threads doing one thing, and
the other half doing the other just complicates the logic for no good reason.
Please make it so that both scans and Gets can verify the same set of rows, and
uses the same {{VerifyResult()}} like function to verify the data.
- Same thing with the Puts / Increments. We would want to have the Puts and
Increment / Appends as separate (optional) steps as it is in the LoadTestTool.
bq. w.r.t. letting multi-get requests go to different regions, in patch v16
iteration i would issue gets for iteration i+2 (scans and gets are interleaved).
I am not sure whether this helps. The rows for the multi-gets still go to the
same region, but the regions are shifted now. Am I missing something?
> Create native client which creates load on selected cluster
> -----------------------------------------------------------
>
> Key: HBASE-18086
> URL: https://issues.apache.org/jira/browse/HBASE-18086
> Project: HBase
> Issue Type: Sub-task
> Reporter: Ted Yu
> Assignee: Ted Yu
> Attachments: 18086.v11.txt, 18086.v12.txt, 18086.v14.txt,
> 18086.v17.txt, 18086.v1.txt, 18086.v3.txt, 18086.v4.txt, 18086.v5.txt,
> 18086.v6.txt, 18086.v7.txt, 18086.v8.txt
>
>
> This task is to create a client which uses multiple threads to conduct Puts
> followed by Gets against selected cluster.
> Default is to run the tool against local cluster.
> This would give us some idea on the characteristics of native client in terms
> of handling high load.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)