[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [Subclipse-users] conflicts not detected during merge, exception after revert, Eclipse hang at 100% CPU

From: Georg-W. Koltermann <Georg.Koltermann_at_mscsoftware.com>
Date: 2006-09-27 13:33:13 CEST

Mark Phippard schrieb:
> "Georg-W. Koltermann" <Georg.Koltermann@mscsoftware.com> wrote on
> 09/26/2006 11:03:53 AM:
> ...
>> 4. Now I wanted to switch my checkout to the newly created branch.
>> Called team switch, clicked browse for the branch and --- didn't find
>> the new branch. Oops?
>> I hit refresh (F5) on the project node and also on the repository node
>> in the SVN exploring perspective, and then on a second try I could
>> successfully switch to the new branch.
> Subclipse caches the tree within your session for performance. If you
> have already expanded the tree in some view then it will be cached and
> need to be refreshed.

Hi Mark,

could you, perhaps, clear the tree cache after a branch or tag has been
>> 6. Got adventurous and tried a merge from another branch. It ran for a
>> while, I saw a couple conflicts scroll by in the console. I then opened
>> the synchronize view and -- oops -- found no conflicts. There were only
>> outgoing changes. Surprisingly I also found files like
>> "foo.linke-version-1234" and "foo.rechte-version-1234" for files that
>> apparently had a conflict. (I don't recall the exact names, but the file
>> names apparently were German translations of "left-version" and
>> "right-version" or some such. Yes I am using a German locale in Eclipse
> :-(
> Conflicts produced by a Subversion merge in your working copy have nothing
> to do with the Synchronize view and would not show as conflicts in that
> view. They are decorated as conflicts in the standard views and there are
> also Problem markers added to the Problems view, including Quick Fix
> resolution actions.

Thanks for the hint. I had looked into the problems view, but could not
find anything.

I repeated the test today. It turns out the conflicts are classified as
"warning", and I routinely filter out warnings because I have so many
Java warnings in our software (missing JavaDoc, unused variables etc.
etc.). That's why I didn't see anything.

What do you think of making the merge conflicts errors instead of warnings?
> The normal procedure to fix a conflict produced by
> Subversion are to resolve the conflicts in the file using either an editor
> or the Edit Conflicts action that we supply.

The Edit Conflicts, when called on a binary file (*.so), does nothing
visible in the UI and throws this exception in the .log:

    !ENTRY org.eclipse.ui 4 0 2006-09-27 12:58:17.568
    !MESSAGE java.lang.NullPointerException
    !STACK 0
            at org.tigris.subversion.subclipse.core.util.File2Resource.getResource(File2Resource.java:38)
            at org.tigris.subversion.subclipse.ui.actions.EditConflictsAction$1.execute(EditConflictsAction.java:151)
            at org.eclipse.ui.actions.WorkspaceModifyOperation$1.run(WorkspaceModifyOperation.java:101)
            at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1737)
            at org.eclipse.ui.actions.WorkspaceModifyOperation.run(WorkspaceModifyOperation.java:113)
            at org.tigris.subversion.subclipse.ui.repository.RepositoryManager.run(RepositoryManager.java:372)
            at org.tigris.subversion.subclipse.ui.actions.SVNAction$1.run(SVNAction.java:227)
            at org.tigris.subversion.subclipse.ui.actions.SVNAction$2.run(SVNAction.java:236)
            at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67) at org.tigris.subversion.subclipse.ui.actions.SVNAction.run(SVNAction.java:233)
            at org.tigris.subversion.subclipse.ui.actions.EditConflictsAction.execute(EditConflictsAction.java:133)
            at org.tigris.subversion.subclipse.ui.actions.SVNAction.run(SVNAction.java:57)
            at org.eclipse.ui.actions.ActionDelegate.runWithEvent(ActionDelegate.java:70)
            at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:244)
            at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:539)
            at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:488)
            at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:400)
            at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
            at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1085)
            at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3164)
            at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2840)
            at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1914)


> Once they are fixed, you
> then have to take the Mark Resolved action to tell Subversion that you
> have dealt with the conflicts. This action will get rid of the left,
> right versions that Subversion created when it produced the conflict.

BTW, the not locked exception that I was seeing seems to stem from an
attempt to revert a symlink. At least I can reproduce it in the svn
command line by typing "svn revert
deployment/web_service_client/src/cpp/include", which is a symlink.

My remaining question was whether anyone observes erratic behavior
sometimes as well, like Eclipse hogging the CPU when subclipse is being

Thanks for your kind help.

Received on Wed Sep 27 13:33:26 2006

This is an archived mail posted to the Subclipse Users mailing list.