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

Issue 698673 link

Starred by 2 users

Issue metadata

Status: WontFix
Owner:
Closed: Mar 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug-Regression



Sign in to add a comment

Incorrect "CL must be approved" CQ rejection

Project Member Reported by whesse@google.com, Mar 6 2017

Issue description

We have added vegorov@[google,chromium] to the OWNERS file in build/scripts/slave/recipes/dart and build/masters/master.client.dart, but he cannot approve changes in those directories. (Recipes will be moving to our repo soon, but masters won't).

Can he be added to the required gerrit user lists, to have approve and land permission?  He is already a chrome committer.

 
Owner: vadimsh@chromium.org
Status: Fixed (was: Untriaged)
Done (added vegorov@chromium.org, since there's only @chromium.org there now).

Comment 2 by vegorov@google.com, Mar 17 2017

@vadimsh: I can approve changes now but I can't trigger CQ. Do I need some other group membership for that?
It should work already :( Can you give an example of a CL where CQ button isn't showing up for you?

Also, are you logged in as @chromium.org into Gerrit?

Comment 4 by vegorov@google.com, Mar 17 2017

This one: https://chromium-review.googlesource.com/#/c/456589/

When I try to navigate to it using my pure Chromium account I get: 

------ cut -----
vegorov@chromium.org has already been registered under a different account accessible by:

vegorov@google.com

Sign in to another account

That’s all we know.
--------------------
Hm... Your account on Gerrit is in some weird state. Basically, whenever you use your @chromium.org or @google.com, Gerrit logs you in as @google.com (this is relatively normal), but when checking group permissions, it uses only @google.com (this is not normal).

I'm trying to untangle it. I've removed your @chromium.org. Please try to login into Gerrit with @chromium.org again, it should work now (I hope...) and it will create new clean @chromium.org account.

I'll then link your @google.com to @chromium.org account.

Comment 6 by vegorov@google.com, Mar 18 2017

I logged into it with a chromium account. I can see CQ button.Trying to +1 and +2 now

Comment 7 by vegorov@google.com, Mar 18 2017

CQ still does not work. See the came CL. 
Cc: tandrii@chromium.org
Status: Assigned (was: Fixed)
Summary: Incorrect "CL must be approved" CQ rejection (was: Add vegorov to chrome-infra committers)
Huh, this is very odd. CQ+2 and Submit permissions are identical (https://screenshot.googleplex.com/EchKTYbG2VW.png). If you were able to set CQ+2, the change should be submittable already. To confirm, do you see "Submit" button in Gerrit (https://screenshot.googleplex.com/aTC6dhJuzD0.png)?

+tandrii, maybe it's some CQ issue.

Comment 9 by tandrii@google.com, Mar 18 2017

Vadim, which group have you added vegorov@ in #c1 above?

The reason I ask is that Gerrit CQ now has extra verification: https://chromium.googlesource.com/chromium/tools/build/+/master/infra/config/cq.cfg#20

and afaik vegorov@ wasn't nominated for chrome infra committers membership. It's possible that build/ repo needs to have a different committers list, however.

(can somebody cc agable@ here?)
Cc: aga...@chromium.org
I've added him to "build-master-owners" and "build-recipe-owners", which are included by "project-infra-committers".

Comment 11 by vegorov@google.com, Mar 18 2017

I do see all of those buttons. But I did see all of them even before I got any permissions I think.
Oh, I see. I'll check the logs.
Cc: -aga...@chromium.org vadimsh@chromium.org
Components: -Infra>Git -Infra>Git>Admin Infra>Platform>CQdaemon
Owner: tandrii@chromium.org
Status: Started (was: Assigned)
OK, I can confirm that actually all group membership looks OK because:
 1. vegorov@ wrote:
 > I do see all of those buttons. But I did see all of them even before I got any permissions I think.
 2. CQ clearly detects that vegorov@ is a committer.

What's weird is that CQ detects this change as not yet approved. The relevant logs are here:

[D2017-03-18T05:29:17.272008-07:00 11162 140690989451072 verification.gerrit_cq_ability:133] CQAbility check is starting on GerritPendingCommit(456589, 3) triggered by `vegorov@chromium.org` ( notCL owner)
[D2017-03-18T05:29:17.273190-07:00 11162 140690989451072 verification.gerrit_cq_ability:138] CQAbility check GerritPendingCommit(456589, 3): triggerer is committer
[D2017-03-18T05:29:17.273963-07:00 11162 140690989451072 infra.libs.gerrit_api.gerrit_api:131] GET https://chromium-review.googlesource.com/a/changes/456589/revisions/ff224e5ccde2166dd66400ba0197b0d0a0ef10aa/related
[D2017-03-18T05:29:17.392620-07:00 11162 140690989451072 requests.packages.urllib3.connectionpool:364] "GET /a/changes/456589/revisions/ff224e5ccde2166dd66400ba0197b0d0a0ef10aa/related HTTP/1.1" 200 None
[I2017-03-18T05:29:17.394618-07:00 11162 140690989451072 verification.gerrit_cq_ability:259] CQAbility rejected for GerritPendingCommit(456589, 3): [not-lgtm] CL must be approved before triggering CQ

So, my suspicion is that Gerrit has potentially changed the meaning of 'submitted' field. Verifying...
Weird: https://chromium-review.googlesource.com/changes/456589/detail?o=SUBMITTABLE , which is what CQ has called before, right now returns 

{
  "id": "chromium%2Ftools%2Fbuild~master~I36be75df6520506d6ff6ff83de032e0bd43285ef",
  "project": "chromium/tools/build",
  "branch": "master",
  "hashtags": [],
  "change_id": "I36be75df6520506d6ff6ff83de032e0bd43285ef",
  "subject": "Make AOT simarm64 bot use blobs instead of dylibs.",
  "status": "NEW",
  "created": "2017-03-17 17:09:56.000000000",
  "updated": "2017-03-18 12:29:18.000000000",
  "submit_type": "REBASE_ALWAYS",
  "mergeable": true,
  "submittable": true,
  "insertions": 1,
  "deletions": 1,
  "unresolved_comment_count": 1,
  "_number": 456589,
...}

which means it's submittable. Adding more logging.
Labels: -Pri-2 Pri-1
https://chrome-internal-review.googlesource.com/338743 will add more logging
Labels: -Type-Task Milestone-Dogfood Proj-Gerrit-Migration Type-Bug-Regression
If I trigger CQ now, it proceeds fine: 

017-03-20T05:05:24.130134-07:00 16107 140001364342592 verification.gerrit_cq_ability:133] CQAbility check is starting on GerritPendingCommit(456589, 3) triggered by `tandrii@chromium.org` ( notCL owner)
[D2017-03-20T05:05:24.131544-07:00 16107 140001364342592 verification.gerrit_cq_ability:138] CQAbility check GerritPendingCommit(456589, 3): triggerer is committer
[D2017-03-20T05:05:24.132429-07:00 16107 140001364342592 verification.gerrit_cq_ability:197] CQAbility is granted to GerritPendingCommit(456589, 3) triggered by tandrii@chromium.org

Project Member

Comment 18 by bugdroid1@chromium.org, Mar 20 2017

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infra/infra_internal/+/5c6b90c82d1732e35d2a945968d35c1bbb55fc16

commit 5c6b90c82d1732e35d2a945968d35c1bbb55fc16
Author: Andrii Shyshkalov <tandrii@chromium.org>
Date: Mon Mar 20 12:08:19 2017

Project Member

Comment 19 by bugdroid1@chromium.org, Mar 20 2017

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infra/infra_internal/+/386fb034829e3f222fc781bfef31c739593c4135

commit 386fb034829e3f222fc781bfef31c739593c4135
Author: Andrii Shyshkalov <tandrii@chromium.org>
Date: Mon Mar 20 12:14:46 2017

This really looks like a fluke in Gerrit.
Status: WontFix (was: Started)
The extra logging is deployed. If this happens again, I'll be able to prove this. Unfortunately, there is nothing else I can do there.
I suspect the internal Gerrit cache doesn't clear properly after the account manipulations via ManagerUsers. It probably had some stale state cached after my manipulations in #5.
Well, maybe so, but CQ logs trace the problem to Gerrit's response (or CQ processing of it, including caching) wrt to whether issue is submittable. AFAIU, this should have nothing to do with account cache.

Sign in to add a comment