New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 875899 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Aug 31
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug

Blocking:
issue 837855



Sign in to add a comment

Unified bug filing interface between Flake Detection and Flake Analyzer

Project Member Reported by liaoyuke@chromium.org, Aug 20

Issue description

1. To make Flake Analyzer merge similar bugs.
2. To avoid filing duplicate bugs.
 
Blocking: 837855
Labels: flake-detection
Project Member

Comment 2 by bugdroid1@chromium.org, Aug 20

The following revision refers to this bug:
  https://chromium.googlesource.com/infra/infra/+/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61

commit 014fbbf194e713c1b3a7d514e3b9d1bd12cadc61
Author: Yuke Liao <liaoyuke@chromium.org>
Date: Mon Aug 20 18:16:03 2018

[FindIt] Create flake_report_util.py for Flake Analyzer

This is a pure refactoring CL.

This is the first step towards implementing a unified bug filing
interface within FindIt: to move all Flake Analyzer specific logic out
of services/issue_tracking_service.py and put them int a utility file
under services/flake_failure/.

Bug:  875899 
Change-Id: I45328559265f8e8cfa0d4468540e660e6014c4b8
Reviewed-on: https://chromium-review.googlesource.com/1181503
Reviewed-by: Roberto Carrillo <robertocn@chromium.org>
Reviewed-by: Jeffrey Li <lijeffrey@chromium.org>
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>

[modify] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/pipelines/flake_failure/test/update_monorail_bug_pipeline_test.py
[modify] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/pipelines/flake_failure/test/create_bug_for_flake_pipeline_test.py
[modify] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/services/test/issue_tracking_service_test.py
[modify] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/pipelines/flake_failure/update_monorail_bug_pipeline.py
[add] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/services/flake_failure/test/flake_report_util_test.py
[add] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/services/flake_failure/flake_report_util.py
[modify] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/pipelines/flake_failure/create_bug_for_flake_pipeline.py
[modify] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/services/issue_tracking_service.py

Project Member

Comment 3 by bugdroid1@chromium.org, Aug 21

The following revision refers to this bug:
  https://chromium.googlesource.com/infra/infra/+/3f052bc0f5f568ce1688dd055bda37e487db4e27

commit 3f052bc0f5f568ce1688dd055bda37e487db4e27
Author: Yuke Liao <liaoyuke@chromium.org>
Date: Tue Aug 21 16:35:49 2018

[FindIt] Consolidate and improve searching for existing bugs

This CL consolidate existing functions that search for open issues
related to a flaky test on Monorail and provides a single API.

This CL also makes an improvement to the search:
Searching for test name in the summary alone is not enough, for
example, 'suite.test needs to be rewritten' is not about falkiness,
so this CL adds the folowing additional requirements to determine if
an issue is related to flakiness (requires at least one):
  1. The issue has label: Test-Flaky.
  2. The issue has component: Tests>Flaky.
  3. The issue has one of the ['flake', 'flaky', 'flakiness'] keywords
     in the summary.

Bug:  875899 
Change-Id: I58f0a47424da9a580c765fcd5ce047bee2d25810
Reviewed-on: https://chromium-review.googlesource.com/1181502
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Reviewed-by: Jeffrey Li <lijeffrey@chromium.org>

[modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/pipelines/flake_failure/create_bug_for_flake_pipeline.py
[modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/pipelines/flake_failure/test/create_bug_for_flake_pipeline_test.py
[modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/services/test/issue_tracking_service_test.py
[modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/services/flake_failure/test/flake_report_util_test.py
[modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/services/flake_detection/test/flake_report_util_test.py
[modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/services/flake_failure/flake_report_util.py
[modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/services/flake_detection/flake_report_util.py
[modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/services/issue_tracking_service.py

Project Member

Comment 4 by bugdroid1@chromium.org, Aug 24

The following revision refers to this bug:
  https://chromium.googlesource.com/infra/infra/+/c601bed83b7d212122e369da3c038c83a198d398

commit c601bed83b7d212122e369da3c038c83a198d398
Author: Yuke Liao <liaoyuke@chromium.org>
Date: Fri Aug 24 21:32:05 2018

[FindIt] Redesign traverse issue merge chain API

There were two APIs (TraverseMergedIssues and GetBugForId) that have
the exactly same purpose: find the destination issue in the merge
chain, there three problems:
1. The |GetBugForId| name is very confusing, which has no indication
   that it traverses the merge chain.
2. |TraverseMergedIssues| needs to take a IssueTrackerAPI as input,
   which is unnecessary and inconvenient.
3. It's always unclear which one to use, and it has caused some
   inconsistencies in the code base.

This CL creates a new API to replace them and also clean up all the
caller sites accordingly.

Bug:  875899 
Change-Id: I96da20b166474f9a239e9089cdfac3f3c4547763
Reviewed-on: https://chromium-review.googlesource.com/1187221
Reviewed-by: Jeffrey Li <lijeffrey@chromium.org>
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>

[modify] https://crrev.com/c601bed83b7d212122e369da3c038c83a198d398/appengine/findit/pipelines/flake_failure/test/update_monorail_bug_pipeline_test.py
[modify] https://crrev.com/c601bed83b7d212122e369da3c038c83a198d398/appengine/findit/services/test/issue_tracking_service_test.py
[modify] https://crrev.com/c601bed83b7d212122e369da3c038c83a198d398/appengine/findit/pipelines/flake_failure/update_monorail_bug_pipeline.py
[modify] https://crrev.com/c601bed83b7d212122e369da3c038c83a198d398/appengine/findit/services/flake_detection/test/flake_report_util_test.py
[modify] https://crrev.com/c601bed83b7d212122e369da3c038c83a198d398/appengine/findit/services/flake_detection/flake_report_util.py
[modify] https://crrev.com/c601bed83b7d212122e369da3c038c83a198d398/appengine/findit/services/issue_tracking_service.py

Project Member

Comment 5 by bugdroid1@chromium.org, Aug 27

The following revision refers to this bug:
  https://chromium.googlesource.com/infra/infra/+/e256d35ed231bc37c4476a2d15f4a1c4943bad8c

commit e256d35ed231bc37c4476a2d15f4a1c4943bad8c
Author: Yuke Liao <liaoyuke@chromium.org>
Date: Mon Aug 27 15:54:39 2018

[FindIt] Implement issue generator and change Flake Detection to use it

This CL creates the IssueGenerator class, and the intention is to
provide a unified bug filing interface and logic that can be applied
to both Flake Detection and Flake Analyzer.

This CL first switches Flake Detection to use the new interface, and
once it sticks, will switch Flake Analyzer to use it.

For more details, please refer to:
https://docs.google.com/document/d/1CIvy_3pelb5fbzOsm4mc-Gg_-1pvivEx0WowsfzgF1M/edit#heading=h.lp7pod8di42k

Bug:  875899 
Change-Id: I45fd75c53d9588c8bc668b9822a6227bf5f71658
Reviewed-on: https://chromium-review.googlesource.com/1182512
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Reviewed-by: Jeffrey Li <lijeffrey@chromium.org>

[modify] https://crrev.com/e256d35ed231bc37c4476a2d15f4a1c4943bad8c/appengine/findit/model/flake/detection/test/flake_issue_test.py
[modify] https://crrev.com/e256d35ed231bc37c4476a2d15f4a1c4943bad8c/appengine/findit/services/test/issue_tracking_service_test.py
[modify] https://crrev.com/e256d35ed231bc37c4476a2d15f4a1c4943bad8c/appengine/findit/model/flake/detection/flake_issue.py
[modify] https://crrev.com/e256d35ed231bc37c4476a2d15f4a1c4943bad8c/appengine/findit/services/flake_detection/test/flake_report_util_test.py
[modify] https://crrev.com/e256d35ed231bc37c4476a2d15f4a1c4943bad8c/appengine/findit/services/flake_detection/flake_report_util.py
[modify] https://crrev.com/e256d35ed231bc37c4476a2d15f4a1c4943bad8c/appengine/findit/services/issue_tracking_service.py

Project Member

Comment 6 by bugdroid1@chromium.org, Aug 28

The following revision refers to this bug:
  https://chromium.googlesource.com/infra/infra/+/3f56b38dcf75ed3c7cf8a09ff04be19f14bb4e68

commit 3f56b38dcf75ed3c7cf8a09ff04be19f14bb4e68
Author: Yuke Liao <liaoyuke@chromium.org>
Date: Tue Aug 28 18:55:16 2018

[FindIt] Refactoring previous tracking bug id

This CL is a pure refactoring.

This CL refactors the previous_tracking_bug_id to hide within the
IssueGenerator class so as to simplify the public APIs.

Bug:  875899 
Change-Id: Id2f06a454bb8d87e9fa1055d411ee37e8222bfc5
Reviewed-on: https://chromium-review.googlesource.com/1194293
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Reviewed-by: Jeffrey Li <lijeffrey@chromium.org>

[modify] https://crrev.com/3f56b38dcf75ed3c7cf8a09ff04be19f14bb4e68/appengine/findit/services/flake_detection/flake_report_util.py
[modify] https://crrev.com/3f56b38dcf75ed3c7cf8a09ff04be19f14bb4e68/appengine/findit/services/test/issue_tracking_service_test.py
[modify] https://crrev.com/3f56b38dcf75ed3c7cf8a09ff04be19f14bb4e68/appengine/findit/services/issue_tracking_service.py

Project Member

Comment 7 by bugdroid1@chromium.org, Aug 28

The following revision refers to this bug:
  https://chromium.googlesource.com/infra/infra/+/d2cf9bbc5e1319f5d264118adde22d70b04e501b

commit d2cf9bbc5e1319f5d264118adde22d70b04e501b
Author: Yuke Liao <liaoyuke@chromium.org>
Date: Tue Aug 28 20:51:21 2018

[FindIt] Make restore labels configurable

1. This CL implementes a switch to control whether to restore Chromium
Sheriff label when update bugs in the issue generator class.

2. This CL changes the behavior to not reset priority when update bugs.

Bug:  875899 
Change-Id: Ie97a79366385889fd89f6fdb123ce975812fb6b5
Reviewed-on: https://chromium-review.googlesource.com/1194294
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Reviewed-by: Jeffrey Li <lijeffrey@chromium.org>

[modify] https://crrev.com/d2cf9bbc5e1319f5d264118adde22d70b04e501b/appengine/findit/services/flake_detection/flake_report_util.py
[modify] https://crrev.com/d2cf9bbc5e1319f5d264118adde22d70b04e501b/appengine/findit/services/test/issue_tracking_service_test.py
[modify] https://crrev.com/d2cf9bbc5e1319f5d264118adde22d70b04e501b/appengine/findit/services/issue_tracking_service.py

Cc: liaoyuke@chromium.org
 Issue 849837  has been merged into this issue.
Project Member

Comment 9 by bugdroid1@chromium.org, Aug 31

The following revision refers to this bug:
  https://chromium.googlesource.com/infra/infra/+/ea2b4becf13b925a992c0c3928875136555a70e8

commit ea2b4becf13b925a992c0c3928875136555a70e8
Author: Yuke Liao <liaoyuke@chromium.org>
Date: Fri Aug 31 16:39:44 2018

[FindIt] Switch Flake Analyzer to use Issue Generator class

This CL switches Flake Analyzer to use the Issue Generator class to
create or update bugs.

Bug:  875899 
Change-Id: I68e9d52e4012ee29e43aeefb5f4b3673690b11e5
Reviewed-on: https://chromium-review.googlesource.com/1194885
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Reviewed-by: Roberto Carrillo <robertocn@chromium.org>
Cr-Commit-Position: refs/heads/master@{#17350}
[modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/pipelines/flake_failure/test/update_monorail_bug_pipeline_test.py
[modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/pipelines/flake_failure/test/create_bug_for_flake_pipeline_test.py
[modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/services/test/issue_tracking_service_test.py
[modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/pipelines/flake_failure/update_monorail_bug_pipeline.py
[modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/services/flake_failure/test/flake_report_util_test.py
[modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/services/flake_failure/flake_report_util.py
[modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/pipelines/flake_failure/create_bug_for_flake_pipeline.py
[modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/services/issue_tracking_service.py

Status: Fixed (was: Started)

Sign in to add a comment