Provide `ExpectedOldOID` to UserCommitFiles request
Context
Epic: Provide `ExpectedOldOID` to avoid race conditio... (&9345)
RPC UserCommitFiles does not allow passing an old object ID that the target branch that is about to be updated is expected to point to. Because of that shortcoming it is possible for there to be a race when the branch has been updated meanwhile by a different client.
With the changes in published in https://rubygems.org/gems/gitaly/versions/15.6.0.pre.rc3, we now allow RPCs to provide expected_old_oid
which is used to verify the ref update, failing if the ref doesn't point to that object ID during the update.
RPC | Invalid SHA format | Valid SHA, but not present in repo | Present in repo but not the latest SHA for the reference |
---|---|---|---|
UserCommitFiles | InvalidArgument | InvalidArgument | FailedPrecondition |
Required changes
- Extend
UserCommitFiles
request to supportexpected_old_oid
field - Populate
expected_old_oid
field for all usages of this RPC and handle new errors
Designs
- Show closed items
Blocks
- #431398Backlog
Related merge requests 2
When these merge requests are accepted, this issue will be closed automatically.
Activity
-
Newest first Oldest first
-
Show all activity Show comments only Show history only
- Vasilii Iakliushin added to epic &9345
added to epic &9345
- Vasilii Iakliushin changed the description
Compare with previous version changed the description
- Vasilii Iakliushin changed milestone to %Backlog
changed milestone to %Backlog
- Vasilii Iakliushin set weight to 2
set weight to 2
- Karthik Nayak changed the description
Compare with previous version changed the description
- Developer
Updated the error types!
- Karthik Nayak changed the description
Compare with previous version changed the description
- Maintainer
Setting label(s) Category:Source Code Management based on groupsource code.
- 🤖 GitLab Bot 🤖 added Category:Source Code Management label
added Category:Source Code Management label
- Vasilii Iakliushin added maintenancerefactor label
added maintenancerefactor label
- 🤖 GitLab Bot 🤖 added typemaintenance label and removed featureenhancement typefeature labels
added typemaintenance label and removed featureenhancement typefeature labels
- Vasilii Iakliushin mentioned in issue #431398
mentioned in issue #431398
- Vasilii Iakliushin marked this issue as blocking #431398
marked this issue as blocking #431398
- Vasilii Iakliushin changed milestone to %Next 1-3 releases
changed milestone to %Next 1-3 releases
- Sean Carroll added workflowready for development label
added workflowready for development label
- Marie-Christine Babin changed milestone to %16.11
changed milestone to %16.11
- Marie-Christine Babin added planningto-do label
added planningto-do label
- Vasilii Iakliushin mentioned in issue #434467 (closed)
mentioned in issue #434467 (closed)
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#16627 (closed)
mentioned in issue gitlab-org/quality/triage-reports#16627 (closed)
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#16727 (closed)
mentioned in issue gitlab-org/quality/triage-reports#16727 (closed)
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#16811 (closed)
mentioned in issue gitlab-org/quality/triage-reports#16811 (closed)
- André Luís changed milestone to %17.0
changed milestone to %17.0
- André Luís removed planningto-do label
removed planningto-do label
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#16917 (closed)
mentioned in issue gitlab-org/quality/triage-reports#16917 (closed)
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#16996 (closed)
mentioned in issue gitlab-org/quality/triage-reports#16996 (closed)
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#17189 (closed)
mentioned in issue gitlab-org/quality/triage-reports#17189 (closed)
- Marie-Christine Babin changed milestone to %17.1
changed milestone to %17.1
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#17269 (closed)
mentioned in issue gitlab-org/quality/triage-reports#17269 (closed)
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#17344 (closed)
mentioned in issue gitlab-org/quality/triage-reports#17344 (closed)
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#17444 (closed)
mentioned in issue gitlab-org/quality/triage-reports#17444 (closed)
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#17611 (closed)
mentioned in issue gitlab-org/quality/triage-reports#17611 (closed)
- Marie-Christine Babin changed milestone to %17.2
changed milestone to %17.2
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#17714 (closed)
mentioned in issue gitlab-org/quality/triage-reports#17714 (closed)
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#17795 (closed)
mentioned in issue gitlab-org/quality/triage-reports#17795 (closed)
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#17901 (closed)
mentioned in issue gitlab-org/quality/triage-reports#17901 (closed)
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#18066 (closed)
mentioned in issue gitlab-org/quality/triage-reports#18066 (closed)
- Developer
@mcbabin How likely is this on track for 17.2?
Collapse replies - Developer
@zchua-gtlb FYI, this ended up being postpone because of some urgent work coming in due to SLA breaches.
We're planning on picking it up in 17.3, stay tuned!
@mcbabin @dpoosarla Moving over to 17.3, as discussed.
1 GitLab team, this issue is significantly impacting our monorepo. Lately, we've been receiving numerous complaints from users who are encountering this problem more frequently. It would be really helpful if this could be fixed soon. Thanks.
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#18165 (closed)
mentioned in issue gitlab-org/quality/triage-reports#18165 (closed)
- André Luís added Deliverable label
added Deliverable label
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#18249 (closed)
mentioned in issue gitlab-org/quality/triage-reports#18249 (closed)
- André Luís changed milestone to %17.3
changed milestone to %17.3
- André Luís added Postponed1 label and removed Deliverable label
added Postponed1 label and removed Deliverable label
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#18358 (closed)
mentioned in issue gitlab-org/quality/triage-reports#18358 (closed)
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#18438 (closed)
mentioned in issue gitlab-org/quality/triage-reports#18438 (closed)
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#18634 (closed)
mentioned in issue gitlab-org/quality/triage-reports#18634 (closed)
- Rakhman Musoyev mentioned in issue #19597
mentioned in issue #19597
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#18721 (closed)
mentioned in issue gitlab-org/quality/triage-reports#18721 (closed)
- Susmikshatha Devi Poosarla added Deliverable label
added Deliverable label
- Susmikshatha Devi Poosarla assigned to @freinink
assigned to @freinink
- Maintainer
Setting health status to
on track
as the milestone has just begun.Issue participants are welcome to override this by setting the health status to another value.
- 🤖 GitLab Bot 🤖 changed health status to on track
changed health status to on track
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#18803 (closed)
mentioned in issue gitlab-org/quality/triage-reports#18803 (closed)
- Susmikshatha Devi Poosarla unassigned @freinink
unassigned @freinink
- Maintainer
This issue is scheduled for completion in this milestone but doesn't have an assignee. Changing health status to 'needs attention'.
Issue participants are welcome to override this by setting the health status to another value.
- 🤖 GitLab Bot 🤖 changed health status to needs attention
changed health status to needs attention
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#18916 (closed)
mentioned in issue gitlab-org/quality/triage-reports#18916 (closed)
- Susmikshatha Devi Poosarla assigned to @freinink
assigned to @freinink
- Fred Reinink changed health status to on track
changed health status to on track
- Fred Reinink added workflowin dev label and removed workflowready for development label
added workflowin dev label and removed workflowready for development label
- 🤖 GitLab Bot 🤖 mentioned in issue gitlab-org/quality/triage-reports#19086 (closed)
mentioned in issue gitlab-org/quality/triage-reports#19086 (closed)
- Maintainer
This issue is scheduled for completion in this milestone but is in an early development stage. Changing health status to 'at risk'.
Issue participants are welcome to override this by setting the health status to another value.
- 🤖 GitLab Bot 🤖 changed health status to at risk
changed health status to at risk
- Fred Reinink mentioned in merge request !161981 (merged)
mentioned in merge request !161981 (merged)
- Fred Reinink added workflowin review label and removed workflowin dev label
added workflowin review label and removed workflowin dev label
- 🤖 GitLab Bot 🤖 changed milestone to %17.4
changed milestone to %17.4
- 🤖 GitLab Bot 🤖 added missed-deliverable missed:17.3 labels
added missed-deliverable missed:17.3 labels
- Fred Reinink mentioned in issue #479424 (closed)
mentioned in issue #479424 (closed)
any progress on this?
- Developer
This feature has been globally enabled on production. #479424 (closed)
- Fred Reinink added workflowcomplete label and removed workflowin review label
added workflowcomplete label and removed workflowin review label
- Fred Reinink closed
closed