Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 272387 - [test] testBug266881 failure
Summary: [test] testBug266881 failure
Status: RESOLVED FIXED
Alias: None
Product: Equinox
Classification: Eclipse Project
Component: p2 (show other bugs)
Version: 3.5   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 3.5 M7   Edit
Assignee: John Arthorne CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-04-15 15:58 EDT by Matthew Piggott CLA
Modified: 2009-04-16 16:03 EDT (History)
0 users

See Also:


Attachments
UpdateSiteTest patch (2.54 KB, patch)
2009-04-15 15:58 EDT, Matthew Piggott CLA
pascal: iplog+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Matthew Piggott CLA 2009-04-15 15:58:56 EDT
Created attachment 131978 [details]
UpdateSiteTest patch

In the tests for build I20090414-0800 testBug266881 in AddRepositoryActionTest failed (exception below).  A test in UpdateSiteTest was adding a repository which contained the same artifacts as those used by the failed test, and subsequently the repository was not removed test.  The repository expected at most a certain number of getArtifact calls, but was chosen over the repository added in 'testBug266881' as the location to retrieve an artifact this lead to the ArrayIndexOutOfBoundsException.

The attached patch should ensure that the UpdateSiteTest removes the repository, and that the ArrayIndexOutOfBoundsException shouldn't occur in the OrderedMirrorSelector.

testBug266881 Failure 3.4: java.lang.ArrayIndexOutOfBoundsException: 2
junit.framework.AssertionFailedError: 3.4: java.lang.ArrayIndexOutOfBoundsException: 2
at org.eclipse.equinox.p2.tests.AbstractProvisioningTest.fail(AbstractProvisioningTest.java:557)
at org.eclipse.equinox.p2.tests.updatesite.UpdateSiteTest$OrderedMirrorSelector.nextMirror(UpdateSiteTest.java:727)
at org.eclipse.equinox.p2.tests.updatesite.UpdateSiteTest$OrderedMirrorSelector.getMirrorLocation(UpdateSiteTest.java:716)
at org.eclipse.equinox.internal.p2.artifact.repository.simple.SimpleArtifactRepository.getMirror(SimpleArtifactRepository.java:495)
at org.eclipse.equinox.internal.p2.artifact.repository.simple.SimpleArtifactRepository.downloadArtifact(SimpleArtifactRepository.java:451)
at org.eclipse.equinox.internal.p2.artifact.repository.simple.SimpleArtifactRepository.getArtifact(SimpleArtifactRepository.java:519)
at org.eclipse.equinox.internal.p2.artifact.repository.MirrorRequest.getArtifact(MirrorRequest.java:195)
at org.eclipse.equinox.internal.p2.artifact.repository.MirrorRequest.transferSingle(MirrorRequest.java:170)
at org.eclipse.equinox.internal.p2.artifact.repository.MirrorRequest.transfer(MirrorRequest.java:154)
at org.eclipse.equinox.internal.p2.artifact.repository.MirrorRequest.perform(MirrorRequest.java:95)
at org.eclipse.equinox.internal.p2.artifact.repository.simple.SimpleArtifactRepository.getArtifact(SimpleArtifactRepository.java:508)
at org.eclipse.equinox.internal.p2.artifact.repository.simple.SimpleArtifactRepository.getArtifacts(SimpleArtifactRepository.java:564)
at org.eclipse.equinox.internal.p2.updatesite.artifact.UpdateSiteArtifactRepository.getArtifacts(UpdateSiteArtifactRepository.java:64)
at org.eclipse.equinox.internal.p2.engine.DownloadManager.fetch(DownloadManager.java:109)
at org.eclipse.equinox.internal.p2.engine.DownloadManager.start(DownloadManager.java:97)
at org.eclipse.equinox.internal.provisional.p2.engine.phases.Collect.completePhase(Collect.java:73)
at org.eclipse.equinox.internal.provisional.p2.engine.Phase.postPerform(Phase.java:165)
at org.eclipse.equinox.internal.provisional.p2.engine.Phase.perform(Phase.java:69)
at org.eclipse.equinox.internal.provisional.p2.engine.PhaseSet.perform(PhaseSet.java:44)
at org.eclipse.equinox.internal.provisional.p2.engine.Engine.perform(Engine.java:51)
at org.eclipse.equinox.internal.provisional.p2.director.PlanExecutionHelper.executePlan(PlanExecutionHelper.java:41)
at org.eclipse.equinox.internal.provisional.p2.director.PlanExecutionHelper.executePlan(PlanExecutionHelper.java:23)
at org.eclipse.equinox.internal.p2.director.SimpleDirector.provision(SimpleDirector.java:53)
at org.eclipse.equinox.p2.tests.touchpoint.eclipse.AddRepositoryActionTest.testBug266881(AddRepositoryActionTest.java:223)
at org.eclipse.equinox.p2.tests.AbstractProvisioningTest.runTest(AbstractProvisioningTest.java:763)
at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:354)
at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:206)
at org.eclipse.test.CoreTestApplication.runTests(CoreTestApplication.java:35)
at org.eclipse.test.CoreTestApplication.run(CoreTestApplication.java:31)
at org.eclipse.equinox.internal.app.EclipseAppContainer.callMethodWithException(EclipseAppContainer.java:574)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.equinox.internal.app.MainApplicationLauncher.run(MainApplicationLauncher.java:32)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
at org.eclipse.equinox.launcher.Main.run(Main.java:1287)
at org.eclipse.equinox.launcher.Main.main(Main.java:1263)
at org.eclipse.core.launcher.Main.main(Main.java:34)
Comment 1 John Arthorne CLA 2009-04-16 16:03:04 EDT
Oh, I see this patch was already released. Closing.