Hey,
I just got a report from a colleague that tried to use “Replace with HEAD revision” on a single file. Eclipse froze for multiple minutes. He created a stack dump (attached). The main thread is busy walking the repo:
"main" prio=10 tid=0x00007ffd78024000 nid=0x847 runnable [0x00007ffd7f6d5000]
java.lang.Thread.State: RUNNABLE
at org.eclipse.jgit.treewalk.CanonicalTreeParser.parseEntry(CanonicalTreeParser.java:359)
at org.eclipse.jgit.treewalk.CanonicalTreeParser.next(CanonicalTreeParser.java:283)
at org.eclipse.jgit.treewalk.AbstractTreeIterator.skip(AbstractTreeIterator.java:636)
at org.eclipse.jgit.treewalk.TreeWalk.skipEntriesEqual(TreeWalk.java:964)
at org.eclipse.jgit.treewalk.TreeWalk.next(TreeWalk.java:561)
at org.eclipse.jgit.revwalk.TreeRevFilter.include(TreeRevFilter.java:196)
at org.eclipse.jgit.revwalk.PendingGenerator.next(PendingGenerator.java:141)
at org.eclipse.jgit.revwalk.BlockRevQueue.<init>(BlockRevQueue.java:65)
at org.eclipse.jgit.revwalk.FIFORevQueue.<init>(FIFORevQueue.java:64)
at org.eclipse.jgit.revwalk.StartGenerator.next(StartGenerator.java:162)
at org.eclipse.jgit.revwalk.RevWalk.next(RevWalk.java:422)
at org.eclipse.egit.ui.internal.CompareUtils.getHeadTypedElement(CompareUtils.java:845)
at org.eclipse.egit.ui.internal.CompareUtils.prepareCompareInput(CompareUtils.java:516)
at org.eclipse.egit.ui.internal.CompareUtils.compareWorkspaceWithRef(CompareUtils.java:456)
at org.eclipse.egit.ui.internal.CompareUtils.compare(CompareUtils.java:581)
at org.eclipse.egit.ui.internal.actions.CompareWithHeadActionHandler.execute(CompareWithHeadActionHandler.java:41)
at org.eclipse.egit.ui.internal.actions.RepositoryAction.run(RepositoryAction.java:77)
at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:251)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
Is this supposed to run in the UI thread? Is there a reason for it being so slow? This does definitely /not/ happen always. It’s just here and there a few of the times.
Cheers, Thanks,
Markus
--
Mit freundlichen Grüßen / Best regards
Markus Duft | Software Architect
SSI SCHÄFER | Salomon Automation
GmbH | Friesachstraße 15 | 8114 Friesach bei Graz | Austria
Phone +43 3127 200-575 | Fax +43 3127 200-22
markus.duft@xxxxxxxxxxxxxxxx
Website |
Blog |
YouTube |
Facebook