Adar Dembo has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/15450 )

Change subject: [util] Minor changes in BlockBloomFilter requested by Impala
......................................................................


Patch Set 1:

(2 comments)

http://gerrit.cloudera.org:8080/#/c/15450/1//COMMIT_MSG
Commit Message:

http://gerrit.cloudera.org:8080/#/c/15450/1//COMMIT_MSG@15
PS1, Line 15: This change forced using static function pointers that are 
initialized
            : only once on construction of the very first BlockBloomFilter in 
ctor.
Is that safe enough though? If you call OrEqualArray() without ever 
instantiating a BlockBloomFilter, won't that be a problem?

Seems like you might need a solution like in unwind_safeness.cc (using a 
library constructor to initialize global state), or nvm_cache.cc (using a 
globally-defined std::once_flag to initialize global state). The latter is 
probably safer; I think std::once_flag is POD since it has a trivial 
constructor and all of its members are value types.


http://gerrit.cloudera.org:8080/#/c/15450/1/src/kudu/util/hash_util.h
File src/kudu/util/hash_util.h:

http://gerrit.cloudera.org:8080/#/c/15450/1/src/kudu/util/hash_util.h@139
PS1, Line 139:         CHECK(false) <<
If logging.h isn't included, where does CHECK come from?



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I5944f80f4c071ce787eded3f5b41d3bc56560cd0
Gerrit-Change-Number: 15450
Gerrit-PatchSet: 1
Gerrit-Owner: Bankim Bhavsar <[email protected]>
Gerrit-Reviewer: Adar Dembo <[email protected]>
Gerrit-Reviewer: Bankim Bhavsar <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Thomas Tauber-Marshall <[email protected]>
Gerrit-Reviewer: Wenzhe Zhou <[email protected]>
Gerrit-Comment-Date: Mon, 16 Mar 2020 18:22:07 +0000
Gerrit-HasComments: Yes

Reply via email to