Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » EGit / JGit » Frequent [lock fail] on origin/master
Frequent [lock fail] on origin/master [message #1757985] Wed, 22 March 2017 14:39 Go to next message
Walter Laan is currently offline Walter LaanFriend
Messages: 8
Registered: July 2009
Junior Member
Hi, recently switch to Git with Git LFS.

An EGit pull rebase from within Eclipse frequently fails with a lock fail. It still says update result OK and the repository ends up X commits ahead of master, where X is the number of commits the remote master is ahead of the remote head.

If I then repeat the pull rebase, it seems to fix itself.
I don't see anything printed in the Eclipse error log.

I've disabled the virus scanner, so EGit should be the only program working the Git repository and as I understand it the [lock fail] means something is reading a pack file EGit tries to read. Does EGit use multiple threads to access the repositories?

How would I investigate where the problem is? I feel I don't have enough information to create a bug report at this point.
Could the remote head being different from the master be the problem?

This is on Windows with BitBucket Server, but it looks like no case changes in the branch names as in https://bugs.eclipse.org/bugs/show_bug.cgi?id=360669
There is no pruning (I think) as in https://bugs.eclipse.org/bugs/show_bug.cgi?id=502334

I did upgrade to latest EGit (4.6.1) with Eclipse Neon.2 (4.6.2 IDE for Java developers) but it still happening.

Repository size (.git folder excluding lfs) is ~300MB with ~2.6k files.

Thanks for any assistance.
Re: Frequent [lock fail] on origin/master [message #1757990 is a reply to message #1757985] Wed, 22 March 2017 15:03 Go to previous messageGo to next message
Matthias Sohn is currently offline Matthias SohnFriend
Messages: 922
Registered: July 2009
Senior Member
Which lock fails ? What exact error message is shown where ?

Or do you mean a checkout conflict which is raised when a file is locally modified (dirty)
which EGit needs to change due to switching to another version.
Re: Frequent [lock fail] on origin/master [message #1757997 is a reply to message #1757990] Wed, 22 March 2017 16:06 Go to previous messageGo to next message
Walter Laan is currently offline Walter LaanFriend
Messages: 8
Registered: July 2009
Junior Member
I mean it says [lock fail] after the origin/master branch name instead of the commit sha/count in the pull results dialog (like https://wiki.eclipse.org/File:Egit-3.1-FetchWizardResult.png except after pull rebase, not a fetch).

I'll add a screenshot next time it happens (typically if I have a local commit and pull a one or more remote commits).
Re: Frequent [lock fail] on origin/master [message #1758094 is a reply to message #1757990] Thu, 23 March 2017 13:35 Go to previous message
Walter Laan is currently offline Walter LaanFriend
Messages: 8
Registered: July 2009
Junior Member
Here are the screenshots:
index.php/fa/28850/0/
-I just made a local commit (one commit ahead of master)
-team -> pull... -> rebase
Shows first dialog with the [lock fail] for the master branch
-now show repository 181 commits ahead of master (which is how far the remote master is ahead of the the remote head)
-team -> pull... -> rebase
Show the second dialog: local master fast-forwarded 180 commits, so now correctly only 1 commit ahead

I'm new to Git, but is EGit incorrectly pulling (rebasing) my local head with the remote HEAD? And because HEAD is just a pointer to local master it tries to rebase it both the the origin/HEAD and origin/master (which do not point to the same commit), which leads to the conflict.

Is this supposed to happened? I'm not sure were supposed to have a remote HEAD.

Git command line does not show HEAD as a tracking branch (I think), removed most branches in output below, about ~10 stale ones total)
git branch -avv
  feature/CE-20745 88dc381db3 [origin/feature/CE-20745] xxx
* master           b07eddbb29 [origin/master: ahead 1] yyy
  remotes/origin/HEAD                                                     -> origin/master

git remote show origin
* remote origin
  Fetch URL: http://xxx/scm/yyy.git
  Push  URL: http://xxx/scm/yyy.git
  HEAD branch: master
  Remote branches:
    1.0                                                                          tracked
    2.0                                                                          tracked
    bugfix/CE-20830                                                              tracked
    bugfix/CE-20831                                                              tracked
    feature/CE-20745                                                             tracked
    feature/CE-20803                                                             tracked
    master                                                                       tracked
    maven                                                                        tracked
    refs/remotes/origin/bugfix/CE-20373                                          stale (use 'git remote prune' to remove)
    refs/remotes/origin/bugfix/CE-20395                                          stale (use 'git remote prune' to remove)
  Local branches configured for 'git pull':
    feature/CE-20745 rebases onto remote feature/CE-20745
    master           rebases onto remote master
  Local refs configured for 'git push':
    feature/CE-20745 pushes to feature/CE-20745 (up to date)
    master           pushes to master           (fast-forwardable)


A pull rebase does not show HEAD and does not end up X commits more ahead:

git pull --rebase
remote: Counting objects: 162, done.
remote: Compressing objects: 100% (150/150), done.
remote: Total 162 (delta 96), reused 0 (delta 0)
Receiving objects: 100% (162/162), 57.00 KiB | 0 bytes/s, done.
Resolving deltas: 100% (96/96), completed with 85 local objects.
From http://xxx/yyy
   07507d7ab3..2163b33d6b  master          -> origin/master
   8688f1a4b7..ab551fd017  CE-18418        -> origin/CE-18418
   fc9d4511ec..4b60bfc8eb  benchmark       -> origin/benchmark
   d1ef055564..5743dcfb04  bugfix/CE-20420 -> origin/bugfix/CE-20420
 * [new branch]            bugfix/CE-20741 -> origin/bugfix/CE-20741
   d1ef055564..4fa8cc4024  bugfix/CE-20831 -> origin/bugfix/CE-20831
First, rewinding head to replay your work on top of it...
Applying: Added examples

git status
On branch master
Your branch is ahead of 'origin/master' by 1 commit.
  (use "git push" to publish your local commits)
nothing to commit, working tree clean

[Updated on: Fri, 24 March 2017 08:39]

Report message to a moderator

Previous Topic:LsRemoteCommand and symbolic references
Next Topic:Clone single branch does not work
Goto Forum:
  


Current Time: Thu May 25 03:27:52 GMT 2017

Powered by FUDForum. Page generated in 0.01553 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software