David Ribeiro Alves has posted comments on this change.

Change subject: Add Reinserts to tablet_history_gc-itest
......................................................................


Patch Set 10:

(16 comments)

http://gerrit.cloudera.org:8080/#/c/4997/10//COMMIT_MSG
Commit Message:

Line 17: this was already flaky so we'll see how troublesome that is..
> I'm looking into this right now, trying to pick up from where Alexey left o
I unflaked the test prior to this patch by reverting to manual flush


http://gerrit.cloudera.org:8080/#/c/4997/10/src/kudu/integration-tests/tablet_history_gc-itest.cc
File src/kudu/integration-tests/tablet_history_gc-itest.cc:

Line 21: 
> nit: please add <unordered_set> include file
Done


PS10, Line 286: int32_t rows_inserted_ = 0;
> Consider removing this and replacing with a local variable, like rows_delet
Done


PS10, Line 317: SetStringCopy
> nit: SetString() now does copying; so consider replacing SetStringCopy() wi
Done


Line 396:         // TODO: Allow for reinsert onto deleted rows after KUDU-237 
has been
> Remove this comment, also should we consider treating insert and reinsert a
the mechanics are quite different and it would be a bit of a refactoring so I'm 
going to push back on this. While cleaner in a sense I don't think it would 
test more than we're testing now.


PS10, Line 506: MaterializedTestRow test_row
> Why not to use reference instead?  Why is it necessary to make a copy and t
we don't take non-const references as per our style. changed this to a pointer


PS10, Line 507: CHECK_EQ
> Why not ASSERT_EQ() ?
Done


PS10, Line 556: MaterializedTestTable snapshot = CloneLatestSnapshot();
> Is it crucial to make a snapshot every time regardless of number of deleted
Done


PS10, Line 565: break
> Consider moving this up into the very beginning of the scope next to the 'i
Done


PS10, Line 567: reinserts
> nit: consider adding call to reserve the space:
regardless of the number of num_rows_to_reinsert we only do so for rows that 
were previously deleted so we're not really sure how big the vector needs to 
be. You do make a good point about the name of the var. Will change it to 
max_rows_to_reinsert.


PS10, Line 569: int32_t
> nit: consider adding const specifier for better readability:
Done


Line 569:           int32_t row_key = *std::next(deleted_rows_.begin(), 
random.Uniform(num_deleted_rows));
> hrm, O(k*n) kind of sucks, i wonder if this needs to be made faster
maybe it could, but this is not perf-critical code, right? so, does it matter? 
I doubt very much that this shows up on any perf trace we take of this test.


PS10, Line 570: MaterializedTestRow test_row
> Why not to use a reference instead of copy here?  If using reference, then 
we don't take non-const references as per our style. changed this to a pointer


PS10, Line 571: CHECK_EQ
> Why not just ASSERT_EQ() ?
Done


PS10, Line 602: 20000
> nit: may be, create a constant for this timeout and use it here and in all 
Done


PS10, Line 617: VLOG(1) << "Reinserted " << reinserts.size() << " rows";
> Is the 'reinserts' container valid at this point?  There is set_reinserts(s
ah good catch. fixed


-- 
To view, visit http://gerrit.cloudera.org:8080/4997
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I6b774b14d79bd7c0c0bf62b585bd70d6d975feaa
Gerrit-PatchSet: 10
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: David Ribeiro Alves <dral...@apache.org>
Gerrit-Reviewer: Alexey Serbin <aser...@cloudera.com>
Gerrit-Reviewer: David Ribeiro Alves <dral...@apache.org>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Mike Percy <mpe...@apache.org>
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon <t...@apache.org>
Gerrit-HasComments: Yes

Reply via email to