Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 360207 - NPE during download when installing into my IDE
Summary: NPE during download when installing into my IDE
Status: RESOLVED WORKSFORME
Alias: None
Product: Equinox
Classification: Eclipse Project
Component: p2 (show other bugs)
Version: 3.7.1   Edit
Hardware: PC Linux
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: P2 Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-10-07 05:18 EDT by Thomas Hallgren CLA
Modified: 2014-04-07 13:41 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Hallgren CLA 2011-10-07 05:18:54 EDT
I dialog with the text 'An internal error occurred during: "Install download3"'  popped up during install. Clicking details revealed a NullPointerException.

This happened during the actual download of the artifacts when I installed the latest egit/jgit. I dismissed the dialog and the install seemed to succeed anyway. But did it really?

This happened on a freshly installed classic IDE 3.7.1 on my 32-bit Ubuntu 11.04 running OpenJDK 1.6.0_22. I found the following trace in .metadata/.log:

!ENTRY org.eclipse.core.jobs 4 2 2011-10-07 11:03:46.595
!MESSAGE An internal error occurred during: "Install download3".
!STACK 0
java.lang.NullPointerException
	at sun.security.jca.GetInstance.getInstance(GetInstance.java:236)
	at sun.security.jca.GetInstance.getInstance(GetInstance.java:164)
	at java.security.Security.getImpl(Security.java:696)
	at java.security.MessageDigest.getInstance(MessageDigest.java:146)
	at org.eclipse.osgi.internal.signedcontent.SignatureBlockProcessor.getMessageDigest(SignatureBlockProcessor.java:313)
	at org.eclipse.osgi.internal.signedcontent.DigestedInputStream.<init>(DigestedInputStream.java:52)
	at org.eclipse.osgi.internal.signedcontent.SignedContentImpl.getDigestInputStream(SignedContentImpl.java:128)
	at org.eclipse.osgi.internal.signedcontent.SignedBundleFile$SignedBundleEntry.getInputStream(SignedBundleFile.java:153)
	at org.eclipse.osgi.baseadaptor.bundlefile.BundleEntry.getBytes(BundleEntry.java:90)
	at org.eclipse.osgi.internal.signedcontent.SignedContentImpl$SignedContentEntryImpl.verify(SignedContentImpl.java:165)
	at org.eclipse.osgi.internal.signedcontent.SignedContentFile.getSignedEntries(SignedContentFile.java:51)
	at org.eclipse.equinox.internal.p2.artifact.repository.SignatureVerifier.verifyContent(SignatureVerifier.java:82)
	at org.eclipse.equinox.internal.p2.artifact.repository.SignatureVerifier.verify(SignatureVerifier.java:59)
	at org.eclipse.equinox.internal.p2.artifact.repository.SignatureVerifier.close(SignatureVerifier.java:100)
	at org.eclipse.equinox.internal.provisional.p2.artifact.repository.processing.ProcessingStep.close(ProcessingStep.java:85)
	at org.eclipse.equinox.internal.p2.artifact.processing.AbstractBufferingStep.close(AbstractBufferingStep.java:73)
	at org.eclipse.equinox.internal.p2.artifact.repository.simple.SimpleArtifactRepository.reportStatus(SimpleArtifactRepositor
y.java:1132)
	at org.eclipse.equinox.internal.p2.artifact.repository.simple.SimpleArtifactRepository.downloadArtifact(SimpleArtifactRepos
itory.java:570)
	at org.eclipse.equinox.internal.p2.artifact.repository.simple.SimpleArtifactRepository.getArtifact(SimpleArtifactRepository
.java:680)
	at org.eclipse.equinox.internal.p2.artifact.repository.MirrorRequest.getArtifact(MirrorRequest.java:260)
	at org.eclipse.equinox.internal.p2.artifact.repository.MirrorRequest.transferSingle(MirrorRequest.java:235)
	at org.eclipse.equinox.internal.p2.artifact.repository.MirrorRequest.transfer(MirrorRequest.java:191)
	at org.eclipse.equinox.internal.p2.artifact.repository.MirrorRequest.perform(MirrorRequest.java:122)
	at org.eclipse.equinox.internal.p2.artifact.repository.simple.SimpleArtifactRepository.getArtifact(SimpleArtifactRepository
.java:664)
	at org.eclipse.equinox.internal.p2.artifact.repository.simple.DownloadJob.run(DownloadJob.java:63)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Comment 1 Thomas Hallgren CLA 2011-10-07 06:01:43 EDT
As it turned out my install didn't work. The expected views and preferences were missing although the installer reported that the features were successfully installed and present.

I uninstalled them and installed again. That went without problems but surprisingly it still didn't work.

I uninstalled again and then invoked the garbage collector:

eclipse -application org.eclipse.equinox.p2.garbagecollector.application -profile SDKProfile

After that, I installed again. This time it worked. This shows that the initial install somehow yielded a corrupt artifact. The dialog that popped up suggests that the problem was caught and propagated to the end user but in the end, although the problem was serious the install was allowed to succeed anyway. That's bad so I'm bumping this to 'major'.
Comment 2 Pascal Rapicault CLA 2014-04-07 13:41:25 EDT
We have not seen this error since then.