Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 339122

Summary: NullPointerException on each repository access with SVN Kit 1.3.5
Product: [Technology] Subversive Reporter: Hermann Vosseler <prg>
Component: CoreAssignee: Igor Burilo <igor.burilo>
Status: RESOLVED FIXED QA Contact:
Severity: major    
Priority: P3 CC: andreas.gudian, eclipse, prg
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:

Description Hermann Vosseler CLA 2011-03-07 12:17:27 EST
Build Identifier: 20110301-1815

NPE on each operation involving some SVN access. Which is, due to QuickDiff, even just opening an editor on a Project connected to SVN.

Problem appeared after applying the latest updates, which included a platform update. Judging from the Stacktrace, I suspect the "secure storage" to be part of the problem. I disabled that feature, because I don't want it and don't need it.

In our team, we use SSL client certificates for access to the repository via an https-URL. We prepare our configuration system wide, i.e. put the credentials and server-config into the users's general subversion configuration (~/.subversion/....) on OS level. We never needed to enter any password from within eclipse. Just specifying the HTTPS-Url (and bypassing the general proxy) was enough to access our repositories.

In one case, using a completely pristine workspace, enabling the secure storage and then adding a new repository location, I was able to access the repository without NPE. But I was unable to apply that to any existing workspace. Whenever there is only a single reference to an existing location, which triggers a NPE, from then on every access triggers an NPE.

Needless to say, my Eclipse Setup is completely unusable now.
I'll switch back to the backup from last week now.
(But I could try out doing the latest update again, in case this helps with debugging)



Reproducible: Always

Steps to Reproduce:
1. SVN Repository Exploring perspective
2. Repository Browser
3. Unfold entry for existing location
Comment 1 Hermann Vosseler CLA 2011-03-07 12:19:10 EST
Stack trace when opening an existing location:


java.lang.NullPointerException
	at org.tmatesoft.svn.core.internal.wc.DefaultSVNHostOptions.getHost(DefaultSVNHostOptions.java:45)
	at org.tmatesoft.svn.core.internal.wc.DefaultSVNHostOptions.getGroupName(DefaultSVNHostOptions.java:273)
	at org.tmatesoft.svn.core.internal.wc.DefaultSVNHostOptions.getHostProperties(DefaultSVNHostOptions.java:259)
	at org.tmatesoft.svn.core.internal.wc.DefaultSVNHostOptions.getAuthStorageEnabledOption(DefaultSVNHostOptions.java:70)
	at org.tmatesoft.svn.core.internal.wc.DefaultSVNHostOptions.hasAuthStorageEnabledOption(DefaultSVNHostOptions.java:75)
	at org.tmatesoft.svn.core.internal.wc.DefaultSVNAuthenticationManager$ExtendedHostOptions.isAuthStorageEnabled(DefaultSVNAuthenticationManager.java:439)
	at org.tmatesoft.svn.core.client.SVNClientAuthenticationManager.setSSHCredentials(SVNClientAuthenticationManager.java:63)
	at org.tmatesoft.svn.core.client.SVNClientEx.createAuthenticationManager(SVNClientEx.java:112)
	at org.tmatesoft.svn.core.javahl.SVNClientImpl.updateClientManager(SVNClientImpl.java:390)
	at org.tmatesoft.svn.core.client.SVNClientEx.setSSHCredentials(SVNClientEx.java:85)
	at org.polarion.team.svn.connector.svnkit.SVNKitConnector.setSSHCredentials(SVNKitConnector.java:163)
	at org.eclipse.team.svn.core.extension.factory.ThreadNameModifier.setSSHCredentials(ThreadNameModifier.java:578)
	at org.eclipse.team.svn.core.utility.SVNUtility.configureProxy(SVNUtility.java:830)
	at org.eclipse.team.svn.core.svnstorage.SVNRepositoryLocation.newProxyInstance(SVNRepositoryLocation.java:779)
	at org.eclipse.team.svn.core.svnstorage.SVNRepositoryLocation.acquireSVNProxy(SVNRepositoryLocation.java:550)
	at org.eclipse.team.svn.core.utility.SVNUtility.validateRepositoryLocation(SVNUtility.java:777)
	at org.eclipse.team.svn.ui.wizard.shareproject.AddRepositoryLocationPage$3.runImpl(AddRepositoryLocationPage.java:213)
	at org.eclipse.team.svn.core.operation.AbstractActionOperation.run(AbstractActionOperation.java:81)
	at org.eclipse.team.svn.core.operation.LoggedOperation.run(LoggedOperation.java:39)
	at org.eclipse.team.svn.core.utility.ProgressMonitorUtility.doTask(ProgressMonitorUtility.java:104)
	at org.eclipse.team.svn.core.utility.ProgressMonitorUtility.doTaskExternal(ProgressMonitorUtility.java:90)
	at org.eclipse.team.svn.ui.utility.DefaultCancellableOperationWrapper.run(DefaultCancellableOperationWrapper.java:55)
	at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
Comment 2 Hermann Vosseler CLA 2011-03-07 12:21:01 EST
Stack trace when adding a new location entry


java.lang.NullPointerException
	at org.tmatesoft.svn.core.internal.wc.DefaultSVNHostOptions.getHost(DefaultSVNHostOptions.java:45)
	at org.tmatesoft.svn.core.internal.wc.DefaultSVNHostOptions.getGroupName(DefaultSVNHostOptions.java:273)
	at org.tmatesoft.svn.core.internal.wc.DefaultSVNHostOptions.getHostProperties(DefaultSVNHostOptions.java:259)
	at org.tmatesoft.svn.core.internal.wc.DefaultSVNHostOptions.getAuthStorageEnabledOption(DefaultSVNHostOptions.java:70)
	at org.tmatesoft.svn.core.internal.wc.DefaultSVNHostOptions.hasAuthStorageEnabledOption(DefaultSVNHostOptions.java:75)
	at org.tmatesoft.svn.core.internal.wc.DefaultSVNAuthenticationManager$ExtendedHostOptions.isAuthStorageEnabled(DefaultSVNAuthenticationManager.java:439)
	at org.tmatesoft.svn.core.client.SVNClientAuthenticationManager.setSSHCredentials(SVNClientAuthenticationManager.java:63)
	at org.tmatesoft.svn.core.client.SVNClientEx.createAuthenticationManager(SVNClientEx.java:112)
	at org.tmatesoft.svn.core.javahl.SVNClientImpl.updateClientManager(SVNClientImpl.java:390)
	at org.tmatesoft.svn.core.client.SVNClientEx.setSSHCredentials(SVNClientEx.java:85)
	at org.polarion.team.svn.connector.svnkit.SVNKitConnector.setSSHCredentials(SVNKitConnector.java:163)
	at org.eclipse.team.svn.core.extension.factory.ThreadNameModifier.setSSHCredentials(ThreadNameModifier.java:578)
	at org.eclipse.team.svn.core.utility.SVNUtility.configureProxy(SVNUtility.java:830)
	at org.eclipse.team.svn.core.svnstorage.SVNRepositoryLocation.newProxyInstance(SVNRepositoryLocation.java:779)
	at org.eclipse.team.svn.core.svnstorage.SVNRepositoryLocation.acquireSVNProxy(SVNRepositoryLocation.java:550)
	at org.eclipse.team.svn.core.svnstorage.SVNRepositoryResource.getRevision(SVNRepositoryResource.java:95)
	at org.eclipse.team.svn.ui.operation.GetRemoteResourceRevisionOperation.runImpl(GetRemoteResourceRevisionOperation.java:40)
	at org.eclipse.team.svn.core.operation.AbstractActionOperation.run(AbstractActionOperation.java:81)
	at org.eclipse.team.svn.core.utility.ProgressMonitorUtility.doTask(ProgressMonitorUtility.java:104)
	at org.eclipse.team.svn.core.operation.CompositeOperation.runImpl(CompositeOperation.java:95)
	at org.eclipse.team.svn.core.operation.AbstractActionOperation.run(AbstractActionOperation.java:81)
	at org.eclipse.team.svn.core.operation.LoggedOperation.run(LoggedOperation.java:39)
	at org.eclipse.team.svn.core.utility.ProgressMonitorUtility.doTask(ProgressMonitorUtility.java:104)
	at org.eclipse.team.svn.core.utility.ProgressMonitorUtility.doTaskExternal(ProgressMonitorUtility.java:90)
	at org.eclipse.team.svn.ui.utility.DefaultCancellableOperationWrapper.run(DefaultCancellableOperationWrapper.java:55)
	at org.eclipse.team.svn.ui.utility.ScheduledOperationWrapper.run(ScheduledOperationWrapper.java:37)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Comment 3 Alexander Gurov CLA 2011-03-08 04:32:03 EST
*** Bug 338382 has been marked as a duplicate of this bug. ***
Comment 4 Alexander Gurov CLA 2011-03-08 09:54:50 EST
*** Bug 339085 has been marked as a duplicate of this bug. ***
Comment 5 Alexander Gurov CLA 2011-03-10 05:02:55 EST
Fixed.
Comment 6 Hermann Vosseler CLA 2011-03-15 15:20:10 EDT
any idea when and how (which update-site) it will be released?
Comment 7 Hermann Vosseler CLA 2011-03-28 10:15:53 EDT
Just installed the new version --- WORKSFORME

Thanks for fixing this issue!