You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@impala.apache.org by "Quanlong Huang (Code Review)" <ge...@cloudera.org> on 2019/02/21 14:16:47 UTC

[Impala-ASF-CR](2.x) IMPALA-7046: introduce "global" debug actions

Hello Impala Public Jenkins,

I'd like you to do a code review. Please visit

    http://gerrit.cloudera.org:8080/12548

to review the following change.


Change subject: IMPALA-7046: introduce "global" debug_actions
......................................................................

IMPALA-7046: introduce "global" debug_actions

The motivation is to add jitter to backend startup in test_failpoints.
The race in IMPALA-7033 can be reproduced by adding jitter to the exec
rpcs when some backends fail. Let's add jitter to test_failpoints to get
better coverage of exec startup races.

This builds on top of the debug action extensions added in the async
admission control patch by allowing the new "global" debug actions
(i.e. actions that can be used in points outside of the ExecNodes).
See the code comments for details.

For now, we're only using the SLEEP and JITTER commands, but I've
included a FAIL command as well since I'll want to use that to write a
test for IMPALA-6788 to simulate exec rpc failure.

Note that I don't bother resolving the actions ahead of time (like we do
for ExecNode actions). It doesn't seem worth it since the resolution
only needs to occur after we've matched the label and I don't expect the
same label to be hit many times within a single thread. We can always
optimize this later if needed.

Testing:
- Verified that test_failpoints can reproduce the race in
  IMPALA-7033 by reverting that fix and testing.
- Ran the modified tests and grepped the impalad log to see
  that the sleeps are still occuring.
- Manually verify global FAIL command (in a build with another patch).
- Manually verified invalid debug_actions (both ExecNode and global)

Change-Id: I77663a539be18711a4f12c470ffd7474e3d69388
Reviewed-on: http://gerrit.cloudera.org:8080/10690
Reviewed-by: Impala Public Jenkins <im...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>
---
M be/src/runtime/coordinator.cc
M be/src/runtime/debug-options.cc
M be/src/scheduling/admission-controller.cc
M be/src/service/client-request-state.cc
M be/src/util/debug-util.cc
M be/src/util/debug-util.h
M common/thrift/ImpalaService.thrift
M tests/custom_cluster/test_admission_controller.py
M tests/failure/test_failpoints.py
M tests/query_test/test_observability.py
10 files changed, 200 insertions(+), 70 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/48/12548/1
-- 
To view, visit http://gerrit.cloudera.org:8080/12548
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: 2.x
Gerrit-MessageType: newchange
Gerrit-Change-Id: I77663a539be18711a4f12c470ffd7474e3d69388
Gerrit-Change-Number: 12548
Gerrit-PatchSet: 1
Gerrit-Owner: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Dan Hecht <dh...@gmail.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>

[Impala-ASF-CR](2.x) IMPALA-7046: introduce "global" debug actions

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

Change subject: IMPALA-7046: introduce "global" debug_actions
......................................................................


Patch Set 2: Verified+1


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

Gerrit-Project: Impala-ASF
Gerrit-Branch: 2.x
Gerrit-MessageType: comment
Gerrit-Change-Id: I77663a539be18711a4f12c470ffd7474e3d69388
Gerrit-Change-Number: 12548
Gerrit-PatchSet: 2
Gerrit-Owner: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Dan Hecht <dh...@gmail.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Tim Armstrong <ta...@cloudera.com>
Gerrit-Comment-Date: Fri, 22 Feb 2019 05:24:25 +0000
Gerrit-HasComments: No

[Impala-ASF-CR](2.x) IMPALA-7046: introduce "global" debug actions

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

Change subject: IMPALA-7046: introduce "global" debug_actions
......................................................................


Patch Set 2:

Build started: https://jenkins.impala.io/job/gerrit-verify-dryrun/3818/ DRY_RUN=false


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

Gerrit-Project: Impala-ASF
Gerrit-Branch: 2.x
Gerrit-MessageType: comment
Gerrit-Change-Id: I77663a539be18711a4f12c470ffd7474e3d69388
Gerrit-Change-Number: 12548
Gerrit-PatchSet: 2
Gerrit-Owner: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Dan Hecht <dh...@gmail.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Tim Armstrong <ta...@cloudera.com>
Gerrit-Comment-Date: Fri, 22 Feb 2019 01:35:00 +0000
Gerrit-HasComments: No

[Impala-ASF-CR](2.x) IMPALA-7046: introduce "global" debug actions

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

Change subject: IMPALA-7046: introduce "global" debug_actions
......................................................................


Patch Set 1:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/12548/1/tests/custom_cluster/test_admission_controller.py
File tests/custom_cluster/test_admission_controller.py:

http://gerrit.cloudera.org:8080/#/c/12548/1/tests/custom_cluster/test_admission_controller.py@549
PS1, Line 549: "
> Done
Feel free to ignore these formatting changes - it may increase the changes of conflicts with later patches.



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

Gerrit-Project: Impala-ASF
Gerrit-Branch: 2.x
Gerrit-MessageType: comment
Gerrit-Change-Id: I77663a539be18711a4f12c470ffd7474e3d69388
Gerrit-Change-Number: 12548
Gerrit-PatchSet: 1
Gerrit-Owner: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Dan Hecht <dh...@gmail.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Tim Armstrong <ta...@cloudera.com>
Gerrit-Comment-Date: Fri, 22 Feb 2019 01:13:42 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR](2.x) IMPALA-7046: introduce "global" debug actions

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

Change subject: IMPALA-7046: introduce "global" debug_actions
......................................................................


Patch Set 1:

(4 comments)

http://gerrit.cloudera.org:8080/#/c/12548/1/tests/custom_cluster/test_admission_controller.py
File tests/custom_cluster/test_admission_controller.py:

http://gerrit.cloudera.org:8080/#/c/12548/1/tests/custom_cluster/test_admission_controller.py@549
PS1, Line 549: "
flake8: E128 continuation line under-indented for visual indent


http://gerrit.cloudera.org:8080/#/c/12548/1/tests/custom_cluster/test_admission_controller.py@559
PS1, Line 559: "
flake8: E128 continuation line under-indented for visual indent


http://gerrit.cloudera.org:8080/#/c/12548/1/tests/query_test/test_observability.py
File tests/query_test/test_observability.py:

http://gerrit.cloudera.org:8080/#/c/12548/1/tests/query_test/test_observability.py@93
PS1, Line 93: {
flake8: E128 continuation line under-indented for visual indent


http://gerrit.cloudera.org:8080/#/c/12548/1/tests/query_test/test_observability.py@128
PS1, Line 128: {
flake8: E128 continuation line under-indented for visual indent



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

Gerrit-Project: Impala-ASF
Gerrit-Branch: 2.x
Gerrit-MessageType: comment
Gerrit-Change-Id: I77663a539be18711a4f12c470ffd7474e3d69388
Gerrit-Change-Number: 12548
Gerrit-PatchSet: 1
Gerrit-Owner: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Dan Hecht <dh...@gmail.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Comment-Date: Thu, 21 Feb 2019 14:17:36 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR](2.x) IMPALA-7046: introduce "global" debug actions

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

Change subject: IMPALA-7046: introduce "global" debug_actions
......................................................................


Patch Set 2:

(4 comments)

http://gerrit.cloudera.org:8080/#/c/12548/1/tests/custom_cluster/test_admission_controller.py
File tests/custom_cluster/test_admission_controller.py:

http://gerrit.cloudera.org:8080/#/c/12548/1/tests/custom_cluster/test_admission_controller.py@549
PS1, Line 549: "
> flake8: E128 continuation line under-indented for visual indent
Done


http://gerrit.cloudera.org:8080/#/c/12548/1/tests/custom_cluster/test_admission_controller.py@559
PS1, Line 559: "
> flake8: E128 continuation line under-indented for visual indent
Done


http://gerrit.cloudera.org:8080/#/c/12548/1/tests/query_test/test_observability.py
File tests/query_test/test_observability.py:

http://gerrit.cloudera.org:8080/#/c/12548/1/tests/query_test/test_observability.py@93
PS1, Line 93: q
> flake8: E128 continuation line under-indented for visual indent
Done


http://gerrit.cloudera.org:8080/#/c/12548/1/tests/query_test/test_observability.py@128
PS1, Line 128: q
> flake8: E128 continuation line under-indented for visual indent
Done



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

Gerrit-Project: Impala-ASF
Gerrit-Branch: 2.x
Gerrit-MessageType: comment
Gerrit-Change-Id: I77663a539be18711a4f12c470ffd7474e3d69388
Gerrit-Change-Number: 12548
Gerrit-PatchSet: 2
Gerrit-Owner: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Dan Hecht <dh...@gmail.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Comment-Date: Thu, 21 Feb 2019 14:35:50 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR](2.x) IMPALA-7046: introduce "global" debug actions

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

Change subject: IMPALA-7046: introduce "global" debug_actions
......................................................................


Patch Set 2:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/2197/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


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

Gerrit-Project: Impala-ASF
Gerrit-Branch: 2.x
Gerrit-MessageType: comment
Gerrit-Change-Id: I77663a539be18711a4f12c470ffd7474e3d69388
Gerrit-Change-Number: 12548
Gerrit-PatchSet: 2
Gerrit-Owner: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Dan Hecht <dh...@gmail.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Comment-Date: Thu, 21 Feb 2019 15:16:42 +0000
Gerrit-HasComments: No

[Impala-ASF-CR](2.x) IMPALA-7046: introduce "global" debug actions

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

Change subject: IMPALA-7046: introduce "global" debug_actions
......................................................................


Patch Set 1:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/2196/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


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

Gerrit-Project: Impala-ASF
Gerrit-Branch: 2.x
Gerrit-MessageType: comment
Gerrit-Change-Id: I77663a539be18711a4f12c470ffd7474e3d69388
Gerrit-Change-Number: 12548
Gerrit-PatchSet: 1
Gerrit-Owner: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Dan Hecht <dh...@gmail.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Comment-Date: Thu, 21 Feb 2019 14:58:46 +0000
Gerrit-HasComments: No

[Impala-ASF-CR](2.x) IMPALA-7046: introduce "global" debug actions

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/12548 )

Change subject: IMPALA-7046: introduce "global" debug_actions
......................................................................

IMPALA-7046: introduce "global" debug_actions

The motivation is to add jitter to backend startup in test_failpoints.
The race in IMPALA-7033 can be reproduced by adding jitter to the exec
rpcs when some backends fail. Let's add jitter to test_failpoints to get
better coverage of exec startup races.

This builds on top of the debug action extensions added in the async
admission control patch by allowing the new "global" debug actions
(i.e. actions that can be used in points outside of the ExecNodes).
See the code comments for details.

For now, we're only using the SLEEP and JITTER commands, but I've
included a FAIL command as well since I'll want to use that to write a
test for IMPALA-6788 to simulate exec rpc failure.

Note that I don't bother resolving the actions ahead of time (like we do
for ExecNode actions). It doesn't seem worth it since the resolution
only needs to occur after we've matched the label and I don't expect the
same label to be hit many times within a single thread. We can always
optimize this later if needed.

Testing:
- Verified that test_failpoints can reproduce the race in
  IMPALA-7033 by reverting that fix and testing.
- Ran the modified tests and grepped the impalad log to see
  that the sleeps are still occuring.
- Manually verify global FAIL command (in a build with another patch).
- Manually verified invalid debug_actions (both ExecNode and global)

Change-Id: I77663a539be18711a4f12c470ffd7474e3d69388
Reviewed-on: http://gerrit.cloudera.org:8080/10690
Reviewed-by: Impala Public Jenkins <im...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>
Reviewed-on: http://gerrit.cloudera.org:8080/12548
Reviewed-by: Tim Armstrong <ta...@cloudera.com>
---
M be/src/runtime/coordinator.cc
M be/src/runtime/debug-options.cc
M be/src/scheduling/admission-controller.cc
M be/src/service/client-request-state.cc
M be/src/util/debug-util.cc
M be/src/util/debug-util.h
M common/thrift/ImpalaService.thrift
M tests/custom_cluster/test_admission_controller.py
M tests/failure/test_failpoints.py
M tests/query_test/test_observability.py
10 files changed, 204 insertions(+), 74 deletions(-)

Approvals:
  Tim Armstrong: Looks good to me, approved
  Impala Public Jenkins: Verified

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

Gerrit-Project: Impala-ASF
Gerrit-Branch: 2.x
Gerrit-MessageType: merged
Gerrit-Change-Id: I77663a539be18711a4f12c470ffd7474e3d69388
Gerrit-Change-Number: 12548
Gerrit-PatchSet: 3
Gerrit-Owner: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Dan Hecht <dh...@gmail.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Tim Armstrong <ta...@cloudera.com>

[Impala-ASF-CR](2.x) IMPALA-7046: introduce "global" debug actions

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

Change subject: IMPALA-7046: introduce "global" debug_actions
......................................................................


Patch Set 2: Code-Review+2


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

Gerrit-Project: Impala-ASF
Gerrit-Branch: 2.x
Gerrit-MessageType: comment
Gerrit-Change-Id: I77663a539be18711a4f12c470ffd7474e3d69388
Gerrit-Change-Number: 12548
Gerrit-PatchSet: 2
Gerrit-Owner: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Dan Hecht <dh...@gmail.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Tim Armstrong <ta...@cloudera.com>
Gerrit-Comment-Date: Fri, 22 Feb 2019 01:13:48 +0000
Gerrit-HasComments: No

[Impala-ASF-CR](2.x) IMPALA-7046: introduce "global" debug actions

Posted by "Quanlong Huang (Code Review)" <ge...@cloudera.org>.
Hello Impala Public Jenkins, Dan Hecht, 

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/12548

to look at the new patch set (#2).

Change subject: IMPALA-7046: introduce "global" debug_actions
......................................................................

IMPALA-7046: introduce "global" debug_actions

The motivation is to add jitter to backend startup in test_failpoints.
The race in IMPALA-7033 can be reproduced by adding jitter to the exec
rpcs when some backends fail. Let's add jitter to test_failpoints to get
better coverage of exec startup races.

This builds on top of the debug action extensions added in the async
admission control patch by allowing the new "global" debug actions
(i.e. actions that can be used in points outside of the ExecNodes).
See the code comments for details.

For now, we're only using the SLEEP and JITTER commands, but I've
included a FAIL command as well since I'll want to use that to write a
test for IMPALA-6788 to simulate exec rpc failure.

Note that I don't bother resolving the actions ahead of time (like we do
for ExecNode actions). It doesn't seem worth it since the resolution
only needs to occur after we've matched the label and I don't expect the
same label to be hit many times within a single thread. We can always
optimize this later if needed.

Testing:
- Verified that test_failpoints can reproduce the race in
  IMPALA-7033 by reverting that fix and testing.
- Ran the modified tests and grepped the impalad log to see
  that the sleeps are still occuring.
- Manually verify global FAIL command (in a build with another patch).
- Manually verified invalid debug_actions (both ExecNode and global)

Change-Id: I77663a539be18711a4f12c470ffd7474e3d69388
Reviewed-on: http://gerrit.cloudera.org:8080/10690
Reviewed-by: Impala Public Jenkins <im...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>
---
M be/src/runtime/coordinator.cc
M be/src/runtime/debug-options.cc
M be/src/scheduling/admission-controller.cc
M be/src/service/client-request-state.cc
M be/src/util/debug-util.cc
M be/src/util/debug-util.h
M common/thrift/ImpalaService.thrift
M tests/custom_cluster/test_admission_controller.py
M tests/failure/test_failpoints.py
M tests/query_test/test_observability.py
10 files changed, 204 insertions(+), 74 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/48/12548/2
-- 
To view, visit http://gerrit.cloudera.org:8080/12548
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: 2.x
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I77663a539be18711a4f12c470ffd7474e3d69388
Gerrit-Change-Number: 12548
Gerrit-PatchSet: 2
Gerrit-Owner: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Dan Hecht <dh...@gmail.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>

[Impala-ASF-CR](2.x) IMPALA-7046: introduce "global" debug actions

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

Change subject: IMPALA-7046: introduce "global" debug_actions
......................................................................


Patch Set 2:

(1 comment)

> Patch Set 1:
> 
> (1 comment)

Thanks for review, Tim!

http://gerrit.cloudera.org:8080/#/c/12548/1/tests/custom_cluster/test_admission_controller.py
File tests/custom_cluster/test_admission_controller.py:

http://gerrit.cloudera.org:8080/#/c/12548/1/tests/custom_cluster/test_admission_controller.py@549
PS1, Line 549: "
> Feel free to ignore these formatting changes - it may increase the changes 
Sure!



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

Gerrit-Project: Impala-ASF
Gerrit-Branch: 2.x
Gerrit-MessageType: comment
Gerrit-Change-Id: I77663a539be18711a4f12c470ffd7474e3d69388
Gerrit-Change-Number: 12548
Gerrit-PatchSet: 2
Gerrit-Owner: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Dan Hecht <dh...@gmail.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Reviewer: Tim Armstrong <ta...@cloudera.com>
Gerrit-Comment-Date: Fri, 22 Feb 2019 01:34:14 +0000
Gerrit-HasComments: Yes