You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@kudu.apache.org by "Alexey Serbin (Code Review)" <ge...@cloudera.org> on 2025/04/24 03:26:56 UTC

[kudu-CR](branch-1.18.x) [common] ColumnPredicate clean-up

Alexey Serbin has uploaded this change for review. ( http://gerrit.cloudera.org:8080/22808


Change subject: [common] ColumnPredicate clean-up
......................................................................

[common] ColumnPredicate clean-up

Since I'm planning to update the code in common/column_predicate.cc
in follow-up changelists, in this separate patch I cleaned up
the code a bit:
  * use 'if constexpr' where possible for cleaner code
  * clean up CHECK/DCHECK assertions
  * make it C++ style guide-compliant
  * address other minor issues reported by linters

I verified that the new code's benchmark numbers didn't degrade
by running and comparing output of
  KUDU_ALLOW_SLOW_TESTS=1 ./bin/column_predicate-test

Specifically, by running NullPredicateBenchmark.TestIsNotNull multiple
times before and after this patch at the same machine, I observed better
numbers in average, with typical numbers like below:

Before:
  int32  NOT NULL   (c IS NOT NULL) 91937.5M evals/sec     0.03 cycles/eval
  int32  NULL       (c IS NOT NULL) 93090.9M evals/sec     0.03 cycles/eval
    NullPredicateBenchmark.TestIsNotNull (23 ms)

After:
  int32  NOT NULL   (c IS NOT NULL) 104682.1M evals/sec    0.02 cycles/eval
  int32  NULL       (c IS NOT NULL) 114375.1M evals/sec    0.02 cycles/eval
    NullPredicateBenchmark.TestIsNotNull (20 ms)

This patch doesn't have any functional modifications.

Change-Id: I5d238a86d301b09247d8ed1d7deeb738eb20b11f
Reviewed-on: http://gerrit.cloudera.org:8080/22805
Tested-by: Alexey Serbin <al...@apache.org>
Reviewed-by: Yifan Zhang <ch...@163.com>
(cherry picked from commit d09bf07b3162bccba3805b9db3c7a17ac44197b6)
---
M src/kudu/common/column_predicate.cc
1 file changed, 103 insertions(+), 104 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/08/22808/1
-- 
To view, visit http://gerrit.cloudera.org:8080/22808
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: branch-1.18.x
Gerrit-MessageType: newchange
Gerrit-Change-Id: I5d238a86d301b09247d8ed1d7deeb738eb20b11f
Gerrit-Change-Number: 22808
Gerrit-PatchSet: 1
Gerrit-Owner: Alexey Serbin <al...@apache.org>

[kudu-CR](branch-1.18.x) [common] ColumnPredicate clean-up

Posted by "Alexey Serbin (Code Review)" <ge...@cloudera.org>.
Alexey Serbin has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/22808 )

Change subject: [common] ColumnPredicate clean-up
......................................................................

[common] ColumnPredicate clean-up

Since I'm planning to update the code in common/column_predicate.cc
in follow-up changelists, in this separate patch I cleaned up
the code a bit:
  * use 'if constexpr' where possible for cleaner code
  * clean up CHECK/DCHECK assertions
  * make it C++ style guide-compliant
  * address other minor issues reported by linters

I verified that the new code's benchmark numbers didn't degrade
by running and comparing output of
  KUDU_ALLOW_SLOW_TESTS=1 ./bin/column_predicate-test

Specifically, by running NullPredicateBenchmark.TestIsNotNull multiple
times before and after this patch at the same machine, I observed better
numbers in average, with typical numbers like below:

Before:
  int32  NOT NULL   (c IS NOT NULL) 91937.5M evals/sec     0.03 cycles/eval
  int32  NULL       (c IS NOT NULL) 93090.9M evals/sec     0.03 cycles/eval
    NullPredicateBenchmark.TestIsNotNull (23 ms)

After:
  int32  NOT NULL   (c IS NOT NULL) 104682.1M evals/sec    0.02 cycles/eval
  int32  NULL       (c IS NOT NULL) 114375.1M evals/sec    0.02 cycles/eval
    NullPredicateBenchmark.TestIsNotNull (20 ms)

This patch doesn't have any functional modifications.

Change-Id: I5d238a86d301b09247d8ed1d7deeb738eb20b11f
Reviewed-on: http://gerrit.cloudera.org:8080/22805
Tested-by: Alexey Serbin <al...@apache.org>
Reviewed-by: Yifan Zhang <ch...@163.com>
(cherry picked from commit d09bf07b3162bccba3805b9db3c7a17ac44197b6)
Reviewed-on: http://gerrit.cloudera.org:8080/22808
---
M src/kudu/common/column_predicate.cc
1 file changed, 103 insertions(+), 104 deletions(-)

Approvals:
  Yifan Zhang: Looks good to me, approved
  Alexey Serbin: Verified

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

Gerrit-Project: kudu
Gerrit-Branch: branch-1.18.x
Gerrit-MessageType: merged
Gerrit-Change-Id: I5d238a86d301b09247d8ed1d7deeb738eb20b11f
Gerrit-Change-Number: 22808
Gerrit-PatchSet: 2
Gerrit-Owner: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Yifan Zhang <ch...@163.com>

[kudu-CR](branch-1.18.x) [common] ColumnPredicate clean-up

Posted by "Alexey Serbin (Code Review)" <ge...@cloudera.org>.
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/22808 )

Change subject: [common] ColumnPredicate clean-up
......................................................................


Patch Set 1: Verified+1

unrelated test failures


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

Gerrit-Project: kudu
Gerrit-Branch: branch-1.18.x
Gerrit-MessageType: comment
Gerrit-Change-Id: I5d238a86d301b09247d8ed1d7deeb738eb20b11f
Gerrit-Change-Number: 22808
Gerrit-PatchSet: 1
Gerrit-Owner: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Yifan Zhang <ch...@163.com>
Gerrit-Comment-Date: Thu, 24 Apr 2025 05:36:36 +0000
Gerrit-HasComments: No

[kudu-CR](branch-1.18.x) [common] ColumnPredicate clean-up

Posted by "Kudu Jenkins (Code Review)" <ge...@cloudera.org>.
Kudu Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/22808 )

Change subject: [common] ColumnPredicate clean-up
......................................................................


Patch Set 1:

Build Started http://jenkins.kudu.apache.org/job/pre_commit/1306/


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

Gerrit-Project: kudu
Gerrit-Branch: branch-1.18.x
Gerrit-MessageType: comment
Gerrit-Change-Id: I5d238a86d301b09247d8ed1d7deeb738eb20b11f
Gerrit-Change-Number: 22808
Gerrit-PatchSet: 1
Gerrit-Owner: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Comment-Date: Thu, 24 Apr 2025 03:27:02 +0000
Gerrit-HasComments: No

[kudu-CR](branch-1.18.x) [common] ColumnPredicate clean-up

Posted by "Alexey Serbin (Code Review)" <ge...@cloudera.org>.
Alexey Serbin has removed a vote on this change.

Change subject: [common] ColumnPredicate clean-up
......................................................................


Removed Verified-1 by Kudu Jenkins (120)
-- 
To view, visit http://gerrit.cloudera.org:8080/22808
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: branch-1.18.x
Gerrit-MessageType: deleteVote
Gerrit-Change-Id: I5d238a86d301b09247d8ed1d7deeb738eb20b11f
Gerrit-Change-Number: 22808
Gerrit-PatchSet: 1
Gerrit-Owner: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Yifan Zhang <ch...@163.com>

[kudu-CR](branch-1.18.x) [common] ColumnPredicate clean-up

Posted by "Yifan Zhang (Code Review)" <ge...@cloudera.org>.
Yifan Zhang has posted comments on this change. ( http://gerrit.cloudera.org:8080/22808 )

Change subject: [common] ColumnPredicate clean-up
......................................................................


Patch Set 1: Code-Review+2


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

Gerrit-Project: kudu
Gerrit-Branch: branch-1.18.x
Gerrit-MessageType: comment
Gerrit-Change-Id: I5d238a86d301b09247d8ed1d7deeb738eb20b11f
Gerrit-Change-Number: 22808
Gerrit-PatchSet: 1
Gerrit-Owner: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Yifan Zhang <ch...@163.com>
Gerrit-Comment-Date: Thu, 24 Apr 2025 05:19:24 +0000
Gerrit-HasComments: No

[kudu-CR](branch-1.18.x) [common] ColumnPredicate clean-up

Posted by "Kudu Jenkins (Code Review)" <ge...@cloudera.org>.
Kudu Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/22808 )

Change subject: [common] ColumnPredicate clean-up
......................................................................


Patch Set 1: Verified-1

Build Failed 

http://jenkins.kudu.apache.org/job/pre_commit/1306/ : FAILURE


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

Gerrit-Project: kudu
Gerrit-Branch: branch-1.18.x
Gerrit-MessageType: comment
Gerrit-Change-Id: I5d238a86d301b09247d8ed1d7deeb738eb20b11f
Gerrit-Change-Number: 22808
Gerrit-PatchSet: 1
Gerrit-Owner: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Yifan Zhang <ch...@163.com>
Gerrit-Comment-Date: Thu, 24 Apr 2025 04:23:53 +0000
Gerrit-HasComments: No