concourse / concourse/pool-resource

Claimed lock and then git 128 error - should go back into waiting state

Open
#72 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Go
Stars
59
Forks
39
PR merge metrics
No merged PRs in 30d

Description

Describe the bug
claiming lock on: environments

waiting for lock

................................

claimed!

error claiming lock: exit status 128

I think this is because two jobs raced each other and one won by pushing to the git repository, so the one that lost should have gone back into the waiting condition instead of throwing an error

Reproduction steps

Race condition

Expected behavior

The job that failed should maybe have been able to retry itself and try and acquire the lock again

Additional context

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files or tests are identified in the issue. Start by tracing the lock acquisition path and how git exit status 128 is handled, then reproduce the race between competing jobs. Done means the losing job returns to waiting and can retry acquisition instead of failing.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.