Bug 471782 - [ViewMgmt] History View always blank
Summary: [ViewMgmt] History View always blank
Status: VERIFIED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 4.5   Edit
Hardware: All All
: P3 major with 18 votes (vote)
Target Milestone: 4.5.2   Edit
Assignee: Andrey Loskutov CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 468948 469590 472341 473141 473457 473507 474090 475064 476801 477477 477742 479114 484289 484759 (view as bug list)
Depends on:
Blocks:
 
Reported: 2015-07-03 05:30 EDT by Leon Li CLA
Modified: 2016-09-16 04:50 EDT (History)
48 users (show)

See Also:
Lars.Vogel: review+
bsd: review+


Attachments
Blank history view (3.21 KB, image/png)
2015-07-03 05:30 EDT, Leon Li CLA
no flags Details
PDE screenshot (75.06 KB, image/png)
2015-11-13 08:39 EST, Lars Vogel CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Leon Li CLA 2015-07-03 05:30:18 EDT
Created attachment 254927 [details]
Blank history view

After updating to Eclipse 4.5 the History view always remains blank, no matter if I drag a file from the Eclipse Navigator into it or select Team >> Show History from the context menu. I'm using both Git and CVS - the problem is the same.

Selecting Team >> Show History produces the following entry in the .log:


!ENTRY org.eclipse.ui 4 0 2015-07-03 11:11:39.157
!MESSAGE Unhandled event loop exception
!STACK 0
java.lang.NullPointerException
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1270)
	at org.eclipse.ui.internal.WorkbenchPage$12.run(WorkbenchPage.java:4211)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4207)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4187)
	at org.eclipse.team.ui.TeamUI.showHistoryFor(TeamUI.java:107)
	at org.eclipse.team.internal.ccvs.ui.actions.ShowResourceInHistoryAction$1.run(ShowResourceInHistoryAction.java:35)
	at org.eclipse.team.internal.ccvs.ui.repo.RepositoryManager.run(RepositoryManager.java:765)
	at org.eclipse.team.internal.ccvs.ui.actions.CVSAction$2.run(CVSAction.java:361)
	at org.eclipse.team.internal.ccvs.ui.actions.CVSAction$3.run(CVSAction.java:370)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.team.internal.ccvs.ui.actions.CVSAction.run(CVSAction.java:367)
	at org.eclipse.team.internal.ccvs.ui.actions.ShowResourceInHistoryAction.execute(ShowResourceInHistoryAction.java:31)
	at org.eclipse.team.internal.ccvs.ui.actions.CVSAction.run(CVSAction.java:117)
	at org.eclipse.team.internal.ui.actions.TeamAction.runWithEvent(TeamAction.java:549)
	at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:237)
	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:595)
	at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:511)
	at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:420)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4362)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1113)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4180)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3769)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:654)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1515)


Dragging file does not produce nothing in the log.
Comment 1 Brian de Alwis CLA 2015-07-03 11:09:42 EDT

*** This bug has been marked as a duplicate of bug 467714 ***
Comment 2 Andrey Loskutov CLA 2015-07-07 08:56:40 EDT
This is not a duplicate of bug 467714.
Comment 3 Brian de Alwis CLA 2015-07-07 11:15:55 EDT
(In reply to Andrey Loskutov from comment #2)
> This is not a duplicate of bug 467714.

You're right: I suspect they're both dups of 469590.  Look at the trace in bug 467714 comment 3.  The fix in 467714 is a patch around a bad code smell but not the solution.

There appears to be a number of reports with similar traces and they go back a long time (viz bug 397872, bug 466392, bug 355456, bug 387959, bug 382655, bug 377343).
Comment 4 Brian de Alwis CLA 2015-07-07 11:44:56 EDT
Leon, could you describe your setup a bit more:

  * How many Eclipse windows do you have open?  How many perspectives do you have open per window?

  * If you have multiple perspectives, do you have your History view open in multiple perspectives within the same window?

  * Can you try to reproduce the problem in a new window (use Window > New Window)?

I don't see the problem you're reporting so I'm trying to figure out what's different about your situation.  I'm using EGit with a single perspective per window.
Comment 5 Leon Li CLA 2015-07-08 03:48:54 EDT
(In reply to Brian de Alwis from comment #4)

I have one Eclipse window open. There are 6 different perspective tabs in a window.

The history view appears in at least two of them. Interesting enough, when I'm in the Synchronizing or the Repository Perspective it works as expected. When I switch back to my main perspective, which is PHP, it's blank.

I wonder if it relates to the really old PHP plugin that I'm using which is PHPEclipse? However it's not mentioned anywhere on the stack. 

>   * Can you try to reproduce the problem in a new window (use Window > New
> Window)?

I opened a new window, added the history view to the perspective and it worked.
Comment 6 Michael Paetzold CLA 2015-07-08 06:39:52 EDT
(In reply to Leon Li from comment #5)

> >   * Can you try to reproduce the problem in a new window (use Window > New
> > Window)?
> 
> I opened a new window, added the history view to the perspective and it
> worked.

Worked for me, too. When I then used "Reset Perspective ..." on the original window and added the history view to the perspective again, it's working there, too.
Comment 7 Leon Li CLA 2015-07-08 06:59:16 EDT
(In reply to Michael  Paetzold from comment #6)
> (In reply to Leon Li from comment #5)
> 
> When I then used "Reset Perspective ..." on the original
> window and added the history view to the perspective again, it's working
> there, too.

Not in my case
Comment 8 Brian de Alwis CLA 2015-07-10 11:18:06 EDT
*** Bug 472341 has been marked as a duplicate of this bug. ***
Comment 9 Christoph CLA 2015-07-15 10:30:30 EDT
I have the bug too. The first History View per window is working, but a second one is blank.

eclipse.buildId=4.5.0.I20150528-0700
java.version=1.7.0_21
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=de_DE
Framework arguments:  -showlocation -product org.eclipse.epp.package.jee.product
Command-line arguments:  -os win32 -ws win32 -arch x86_64 -showlocation -product org.eclipse.epp.package.jee.product -data E:\workspaces\workspace_trunk_marstest

org.eclipse.team.svn.core.svnnature
Error
Wed Jul 15 16:21:19 CEST 2015
SVN: 'Menu enablement calculation' operation finished with error: null

java.lang.NullPointerException
	at org.eclipse.team.svn.ui.action.AbstractSVNTeamAction.selectionChanged(AbstractSVNTeamAction.java:135)
	at org.eclipse.team.internal.ui.actions.TeamAction.updateSelection(TeamAction.java:583)
	at org.eclipse.team.internal.ui.actions.TeamAction.setEnabled(TeamAction.java:567)
	at org.eclipse.ui.internal.handlers.HandlerProxy.setEnabled(HandlerProxy.java:234)
	at org.eclipse.ui.internal.handlers.E4HandlerProxy.canExecute(E4HandlerProxy.java:71)
	at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
	at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:252)
	at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:234)
	at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132)
	at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.isEnabled(HandlerServiceHandler.java:58)
	at org.eclipse.core.commands.Command.isEnabled(Command.java:851)
	at org.eclipse.ui.internal.handlers.LegacyHandlerService.registerLegacyHandler(LegacyHandlerService.java:159)
	at org.eclipse.ui.internal.handlers.LegacyHandlerService.registerLegacyHandler(LegacyHandlerService.java:151)
	at org.eclipse.ui.internal.handlers.LegacyHandlerService.activateHandler(LegacyHandlerService.java:275)
	at org.eclipse.ui.internal.handlers.LegacyHandlerService.activateHandler(LegacyHandlerService.java:263)
	at org.eclipse.ui.internal.menus.LegacyActionPersistence.convertActionToHandler(LegacyActionPersistence.java:377)
	at org.eclipse.ui.internal.menus.LegacyActionPersistence.readActions(LegacyActionPersistence.java:527)
	at org.eclipse.ui.internal.menus.LegacyActionPersistence.readActionsAndMenus(LegacyActionPersistence.java:567)
	at org.eclipse.ui.internal.menus.LegacyActionPersistence.readActionSets(LegacyActionPersistence.java:622)
	at org.eclipse.ui.internal.menus.LegacyActionPersistence.read(LegacyActionPersistence.java:468)
	at org.eclipse.ui.internal.WorkbenchWindow.initializeDefaultServices(WorkbenchWindow.java:2835)
	at org.eclipse.ui.internal.WorkbenchWindow.setup(WorkbenchWindow.java:633)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
	at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:898)
	at org.eclipse.e4.core.internal.di.InjectorImpl.inject(InjectorImpl.java:121)
	at org.eclipse.e4.core.internal.di.InjectorImpl.inject(InjectorImpl.java:86)
	at org.eclipse.e4.core.contexts.ContextInjectionFactory.inject(ContextInjectionFactory.java:73)
	at org.eclipse.ui.internal.Workbench.createWorkbenchWindow(Workbench.java:1486)
	at org.eclipse.ui.internal.Workbench.openWorkbenchWindow(Workbench.java:2635)
	at org.eclipse.ui.internal.Workbench.openWorkbenchWindow(Workbench.java:2627)
	at org.eclipse.ui.internal.handlers.OpenInNewWindowHandler.execute(OpenInNewWindowHandler.java:59)
	at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:295)
	at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:90)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
	at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:252)
	at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:234)
	at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132)
	at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:152)
	at org.eclipse.core.commands.Command.executeWithChecks(Command.java:493)
	at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:486)
	at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:210)
	at org.eclipse.ui.internal.handlers.LegacyHandlerService.executeCommand(LegacyHandlerService.java:343)
	at org.eclipse.ui.internal.actions.CommandAction.runWithEvent(CommandAction.java:160)
	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:595)
	at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:511)
	at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:420)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4362)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1113)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4180)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3769)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:654)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1515)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1488)
Comment 10 Brian de Alwis CLA 2015-08-04 09:44:17 EDT
*** Bug 473507 has been marked as a duplicate of this bug. ***
Comment 11 Brian de Alwis CLA 2015-08-04 09:57:34 EDT
*** Bug 474090 has been marked as a duplicate of this bug. ***
Comment 12 Dani Megert CLA 2015-08-06 05:29:27 EDT
(In reply to Christoph from comment #9)
> I have the bug too. The first History View per window is working, but a
> second one is blank.
> 
> org.eclipse.team.svn.core.svnnature
> Error
> Wed Jul 15 16:21:19 CEST 2015
> SVN: 'Menu enablement calculation' operation finished with error: null
> 
> java.lang.NullPointerException
> 	at org.eclipse.team.svn.ui.action.AbstractSVNTeamAction.selectionChanged(AbstractSVNTeamAction.java:135)
> 	at org.eclipse.team.internal.ui.actions.TeamAction.updateSelection(TeamAction.java:583)

This is not the same bug. It's an NPE in AbstractSVNTeamAction.selectionChanged. You should report this against Subversive.
Comment 13 Graham Shaw CLA 2015-08-06 08:58:12 EDT
Additional information. 

The History View in the Team Synchronising Perspective works fine. It is only the History View in the Java Perspective that is blank.
Comment 14 Dani Megert CLA 2015-08-06 09:13:41 EDT
(In reply to Graham Shaw from comment #13)
> Additional information. 
> 
> The History View in the Team Synchronising Perspective works fine. It is
> only the History View in the Java Perspective that is blank.

Can you identify steps that would help us reproduce the issue?
Comment 15 Stephen Mainstone CLA 2015-08-13 11:03:24 EDT
I experienced the same problem too as described by Graham Shaw having upgraded from Keplar to Mars. 

Initially, I tried resetting the active (Java) perspective as suggested and closing the Task List and Outline windows but this didn't fix the issue. I then reset the perspective again without closing said windows and hey presto I was able to see history in the Show History window. 

Hope this helps in diagnosing the issue.
Comment 16 Jeff Wells CLA 2015-08-15 10:59:05 EDT
Initially I had the same problem, but have found a workaround.

Using Java EE or Java perspectives, I would initially not have the History view open

1. Window -> Show View -> History, but the history view was empty no matter what I did
2. Open Team Synchronizing perspective, could see the history
3. Switch back to Java perspective, still could not see the history
4. Close the history view
5. Right click a file -> Team -> Show in history
5. Success! History started showing up without fail
Comment 17 Martin Schlesier CLA 2015-09-10 05:39:26 EDT
I still have this problem and nothing helps.
My Workaround is to use the "Team Synchronizing"-Perspective.
In "Java EE" it is Empty.
Comment 18 Christian Pontesegger CLA 2015-09-25 03:44:17 EDT
Facing the same exception when switching to the debug perspective:

java.lang.NullPointerException
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1270)
	at org.eclipse.ui.internal.WorkbenchPage$12.run(WorkbenchPage.java:4211)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4207)
	at org.eclipse.debug.internal.ui.views.ViewContextService.showViewQuiet(ViewContextService.java:1175)
	at org.eclipse.debug.internal.ui.launchConfigurations.PerspectiveManager$4.runInUIThread(PerspectiveManager.java:528)
	at org.eclipse.debug.internal.ui.launchConfigurations.PerspectiveManager$MyUIJob$1.run(PerspectiveManager.java:229)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4155)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3772)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:654)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1515)
Comment 19 Anthony Ette CLA 2015-10-01 16:31:26 EDT
I have problem too with latest Eclipse Mars PTP release. Steps to reproduce are simple.  In a non-CVS perspective (e.g. C/C++ in my case), create a new project from a CVS repo.  Once the project is successfully checked out, note that you cannot view member history in the Team->History view within the non-CVS perspective (e.g. C/C++ in my case).  If however, I link the history view with editor, open a file from the project in the editor, switch to the CVS perspective, the History view within that perspective works fine.  So, to summarize what myself and others seem to be experiencing: CVS History view is currently only working within the CVS perspective in the Mars release.  Perhaps I'm wrong, but my understanding was that you can display any "view" in any "perspective", hence why this should be considered a bug (not sure where, why, what).  This was not a problem in the Luna release (confirmed).  Thank you for your prompt attention to this matter.
Comment 20 Anthony Ette CLA 2015-10-01 16:34:19 EDT
Shooting from the hip: could this be in any way related to pulling the CVS package out of Eclipse base as part of the Mars release?  In Luna it was bundled with Eclipse.  Perhaps we have some discombobulation going on now with these re-architecting of the code base?
Comment 21 Anthony Ette CLA 2015-10-01 16:39:11 EDT
Correction it works with Team Sync perspective and CVS perspectives only.  History view doesn't appear to be working anymore in any other perspectives.  I've got to believe this is related to the re-arch of the CVS stuff done as part of the Mars release.  Nothing we didn't already know since this is confirmed to not be a problem in Luna.
Comment 22 Anthony Ette CLA 2015-10-01 16:42:33 EDT
This bug impacts more than just the history view.  I also noticed that the revisions are no longer displayed in the project explorer (C/C++ perspective).  In Luna, the project itself would have an indicator of which machine the repo was on (e.g. [rts1-1]) then each member of the project, if in CVS repo, would have the associated revision shown next to it in the project explorer.  This, as well as the history view, has been broken in Mars release. Help!
Comment 23 Andrey Loskutov CLA 2015-10-02 00:28:32 EDT
(In reply to Anthony Ette from comment #22)
> This bug impacts more than just the history view.  I also noticed that the
> revisions are no longer displayed in the project explorer (C/C++
> perspective).  In Luna, the project itself would have an indicator of which
> machine the repo was on (e.g. [rts1-1]) then each member of the project, if
> in CVS repo, would have the associated revision shown next to it in the
> project explorer.  This, as well as the history view, has been broken in
> Mars release. Help!

I haven't personally seen this issue, so "broken" is not that right. Something is definitely wrong, so please can you check error log and attach here related error stack traces (if any)? Cince you have C++, you have probably some specific install?
Comment 24 Anthony Ette CLA 2015-10-02 10:46:10 EDT
I am using Eclipse PTP (parallel tools platform). no stack trace except for when i right-click on a member in the project explorer and go Team->Show History.  In that case I get unhanded event loop exception (details shown below):

Exception Stack Trace:
java.lang.NullPointerException
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1270)
	at org.eclipse.ui.internal.WorkbenchPage$12.run(WorkbenchPage.java:4211)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4207)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4187)
	at org.eclipse.team.ui.TeamUI.showHistoryFor(TeamUI.java:107)
	at org.eclipse.team.internal.ccvs.ui.actions.ShowResourceInHistoryAction$1.run(ShowResourceInHistoryAction.java:35)
	at org.eclipse.team.internal.ccvs.ui.repo.RepositoryManager.run(RepositoryManager.java:765)
	at org.eclipse.team.internal.ccvs.ui.actions.CVSAction$2.run(CVSAction.java:361)
	at org.eclipse.team.internal.ccvs.ui.actions.CVSAction$3.run(CVSAction.java:370)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.team.internal.ccvs.ui.actions.CVSAction.run(CVSAction.java:367)
	at org.eclipse.team.internal.ccvs.ui.actions.ShowResourceInHistoryAction.execute(ShowResourceInHistoryAction.java:31)
	at org.eclipse.team.internal.ccvs.ui.actions.CVSAction.run(CVSAction.java:117)
	at org.eclipse.team.internal.ui.actions.TeamAction.runWithEvent(TeamAction.java:549)
	at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:237)
	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:595)
	at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:511)
	at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:420)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4362)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1113)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4180)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3769)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:654)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1515)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1488)


Session Data:
eclipse.buildId=4.5.0.I20150603-2000
java.version=1.8.0_60
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
Framework arguments:  -product org.eclipse.epp.package.parallel.product
Command-line arguments:  -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.parallel.product
Comment 25 Vincent Privat CLA 2015-10-04 18:53:59 EDT
I still have the bug, as reported in #474090 with Mars.1 release.
The problem is 100% reproducible by attempting to show history of a file, in Java perspective, from a SVN project using Subclipse plugin. The problem does not occur with Luna and is a migration blocker for us.

My current stacktrace and session data:

java.lang.NullPointerException
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1270)
	at org.eclipse.ui.internal.WorkbenchPage$12.run(WorkbenchPage.java:4211)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4207)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4187)
	at org.tigris.subversion.subclipse.ui.internal.TeamAction.showView(TeamAction.java:384)
	at org.tigris.subversion.subclipse.ui.actions.ShowResourceInHistoryAction.access$0(ShowResourceInHistoryAction.java:1)
	at org.tigris.subversion.subclipse.ui.actions.ShowResourceInHistoryAction$1.run(ShowResourceInHistoryAction.java:39)
	at org.tigris.subversion.subclipse.ui.repository.RepositoryManager.run(RepositoryManager.java:375)
	at org.tigris.subversion.subclipse.ui.actions.SVNAction$1.run(SVNAction.java:231)
	at org.tigris.subversion.subclipse.ui.actions.SVNAction$2.run(SVNAction.java:240)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.tigris.subversion.subclipse.ui.actions.SVNAction.run(SVNAction.java:237)
	at org.tigris.subversion.subclipse.ui.actions.ShowResourceInHistoryAction.execute(ShowResourceInHistoryAction.java:35)
	at org.tigris.subversion.subclipse.ui.actions.SVNAction.run(SVNAction.java:56)
	at org.eclipse.ui.actions.ActionDelegate.runWithEvent(ActionDelegate.java:75)
	at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:237)
	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:595)
	at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:511)
	at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:420)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4362)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1113)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4180)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3769)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:654)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1515)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1488)

eclipse.buildId=4.5.1.M20150904-0015
java.version=1.8.0_60
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=fr_FR
Framework arguments:  -product org.eclipse.epp.package.java.product
Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product

Can I provide more information in order to help you to fix this bug before Mars.2 release?
Comment 26 Eugen Neufeld CLA 2015-10-06 08:54:04 EDT
Hi, 
I can reproduce this error this way:
- download the "Eclipse IDE for Java Developers"
- create a project
- open the history view
- press link with editor selection
- share the project using git
- commit the project
- history view shows the commit
- switch to git perspective and activate history view (doesn't work)

when you close both, you can open it once it any of this two perspectives.
A restart doesn't help.

On the other hand if you share the project and commit it before opening the history view, everything works.
Comment 27 Eugen Neufeld CLA 2015-10-06 12:49:30 EDT
I tried to debug this. 
So far I found out the following:
- There is a way of fixing the broken state, by reseting the perspectives containing the history views and opening the history views again
- The history view stays empty and doesn't show the "no content" text because the GenericHistoryView#showHistoryPageFor(Object object, boolean refresh, boolean force, IHistoryPageSource pageSource) in line 525 the method exits with 
if (!checkIfPageIsVisible())
    return null;


Cheers,
Eugen
Comment 28 neil mordecai CLA 2015-10-07 05:10:02 EDT
I have Mars installed.  The same problem (Luna was fine) and the Only way to resolve it has been...

Close all perspectives.
Restart eclipse (shows only default JavaEE perspective) - add Java if you like...

#####
Use Package Explorer select file and VIA SpeedBar (rh-mouse-button-select) use Team > Show History.
####

Once opened in this way the History remains synchronised indefinitely.

The bug would be that adding the History View manually simply does not work (for me).
Comment 29 David I CLA 2015-10-07 09:53:50 EDT
Still having this problem with Eclipse Mars.1, with EGIT 4.0.3.20150902316.

Same stack trace in .log as others have reported. This is on Linux RHEL 6 with GTK desktop:

!ENTRY org.eclipse.ui 4 0 2015-10-07 08:40:43.136
!MESSAGE Unhandled event loop exception
!STACK 0
org.eclipse.e4.core.di.InjectionException: java.lang.NullPointerException
	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:68)
	at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:252)
	at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:234)
	at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132)
	at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:152)
	at org.eclipse.core.commands.Command.executeWithChecks(Command.java:493)
	at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:486)
	at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:210)
	at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem.executeItem(HandledContributionItem.java:799)
	at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem.handleWidgetSelection(HandledContributionItem.java:675)
	at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem.access$7(HandledContributionItem.java:659)
	at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem$4.handleEvent(HandledContributionItem.java:592)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4481)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1329)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3819)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3430)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:654)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1515)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1488)
Caused by: java.lang.NullPointerException
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1270)
	at org.eclipse.ui.internal.WorkbenchPage$12.run(WorkbenchPage.java:4211)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4207)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4187)
	at org.eclipse.egit.ui.internal.actions.ShowHistoryActionHandler.execute(ShowHistoryActionHandler.java:44)
	at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:295)
	at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:90)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
	... 38 more
Comment 30 David I CLA 2015-10-07 10:52:43 EDT
(In reply to David I from comment #29)

Using GTK 2

gtk2-2.24.23-6.el6.x86_64
Comment 31 David I CLA 2015-10-07 11:00:00 EDT
(In reply to David I from comment #30)

comment #28 from neil mordecai works for me.
Comment 32 Alexander Gurov CLA 2015-10-17 13:43:09 EDT
*** Bug 479114 has been marked as a duplicate of this bug. ***
Comment 33 Eclipse Genie CLA 2015-10-25 19:00:32 EDT
New Gerrit change created: https://git.eclipse.org/r/58890
Comment 34 Eugen Neufeld CLA 2015-10-30 08:59:48 EDT
I tried this https://git.eclipse.org/r/#/c/58890/ proposed fix but it didn't help. I can still reproduce the bug using the steps I posted in https://bugs.eclipse.org/bugs/show_bug.cgi?id=471782#c26

Cheers
Comment 35 Andrey Loskutov CLA 2015-11-07 03:55:03 EST
(In reply to Eugen Neufeld from comment #34)
> I tried this https://git.eclipse.org/r/#/c/58890/ proposed fix but it didn't
> help. I can still reproduce the bug using the steps I posted in
> https://bugs.eclipse.org/bugs/show_bug.cgi?id=471782#c26

Thanks for trying. I've finally able to reproduce it with the *modified* steps you've provided below, with "Eclipse for Java Developers Mars 1"...

(In reply to Eugen Neufeld from comment #26)
> Hi, 
> I can reproduce this error this way:
> - download the "Eclipse IDE for Java Developers"
> - create a project
> - open the history view

Open via "Window -> Show View -> Other -> Team -> History"!!!

> - press link with editor selection
> - share the project using git
> - commit the project
> - history view shows the commit
> - switch to git perspective and activate history view (doesn't work)

Activate via "Window -> Show View -> Other -> Team -> History"!!!
 
> when you close both, you can open it once it any of this two perspectives.
> A restart doesn't help.

The main difference is: I've tried to open the History view before always with Ctrl+3 -> History.

After such experiments, once getting into the broken state, trying to open the history view via Ctrl+3 results in the exception below:

java.lang.NullPointerException
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1270)
	at org.eclipse.ui.internal.WorkbenchPage$12.run(WorkbenchPage.java:4211)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4207)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4187)
	at org.eclipse.ui.internal.quickaccess.ViewElement.execute(ViewElement.java:71)
	at org.eclipse.ui.internal.quickaccess.SearchField$2.handleElementSelected(SearchField.java:179)
	at org.eclipse.ui.internal.quickaccess.QuickAccessContents.handleSelection(QuickAccessContents.java:460)
	at org.eclipse.ui.internal.quickaccess.QuickAccessContents.access$0(QuickAccessContents.java:450)
	at org.eclipse.ui.internal.quickaccess.QuickAccessContents$6.mouseUp(QuickAccessContents.java:617)
	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:220)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)

Cool. There could be an issue with view placeholder which exists in the Git perspective. Seems that view management is confused. Going to reproduce in the 4.6 debug environment.
Comment 36 Andrey Loskutov CLA 2015-11-07 13:41:09 EST
Looks like this regression is caused by bug 430988. Reverting the changes in ShowViewHandler made in https://git.eclipse.org/r/42459/ fixes the issue.

The root cause seems to be that WorkbenchPage.busyShowView() used in ShowViewHandler before the patch did few things more as PartServiceImpl.showPart() does now.
Comment 37 Andrey Loskutov CLA 2015-11-07 18:24:42 EST
*** Bug 468948 has been marked as a duplicate of this bug. ***
Comment 38 Eclipse Genie CLA 2015-11-07 18:33:46 EST
New Gerrit change created: https://git.eclipse.org/r/59902
Comment 39 Andrey Loskutov CLA 2015-11-07 18:46:15 EST
Steps to reproduce:

1) Use plain SDK with Egit on top, create new workspace.
2) In Java perspective create general project, share it with Git, create a commit.
3) Window -> Show View -> Other -> Team -> History.
4) "Link" History and check that the commit is properly shown.
5) Window -> Perspective -> Open Perspective -> Other -> Git.
6) Window -> Show View -> Other -> Team -> History.
7) The History view is shown but does not show any commit and will not show any commit *in the Git perspective* anymore.

(In reply to Eclipse Genie from comment #38)
> New Gerrit change created: https://git.eclipse.org/r/59902

This patch seem to fix the problem.
Comment 40 Eclipse Genie CLA 2015-11-08 04:14:53 EST
New Gerrit change created: https://git.eclipse.org/r/59903
Comment 41 Andrey Loskutov CLA 2015-11-09 04:01:55 EST
(In reply to Eclipse Genie from comment #38)
> New Gerrit change created: https://git.eclipse.org/r/59902

Lars, since I'm unable (or just not educated enough) to contribute "e4 only" view to Eclipse IDE (not RCP!), I can't test if the patch works as expected for the "e4 only" IDE contributions. 

Could you please attach an example plugin code which can be used to verify that "e4 only" specific functionality is still working? If it is possible, we could better add this to the tests, see https://git.eclipse.org/r/#/c/59902/2/tests/org.eclipse.ui.tests/Eclipse+UI+Tests/org/eclipse/ui/tests/api/IWorkbenchPageTest.java.
Comment 42 Jan Krakora CLA 2015-11-10 04:00:02 EST
I get very similar exception when I want to show annotations

Team -> Show Annotations

!ENTRY org.eclipse.ui 4 0 2015-11-10 09:56:32.266
!MESSAGE Unhandled event loop exception
!STACK 0
org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.NullPointerException)
	at org.eclipse.swt.SWT.error(SWT.java:4491)
	at org.eclipse.swt.SWT.error(SWT.java:4406)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:138)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4155)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3772)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:654)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1515)
Caused by: java.lang.NullPointerException
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1270)
	at org.eclipse.ui.internal.WorkbenchPage$12.run(WorkbenchPage.java:4211)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4207)
	at org.eclipse.egit.ui.internal.blame.BlameOperation.openEditor(BlameOperation.java:298)
	at org.eclipse.egit.ui.internal.blame.BlameOperation.access$0(BlameOperation.java:279)
	at org.eclipse.egit.ui.internal.blame.BlameOperation$1.run(BlameOperation.java:274)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
	... 23 more
Comment 43 Eugen Neufeld CLA 2015-11-10 08:36:36 EST
This commit https://git.eclipse.org/r/#/c/59902/3 works for me.
Thank you for fixing this Andrey.
Comment 46 Björn Michael CLA 2015-11-13 05:16:16 EST
How are chances of fixing in Mars SR2 ?
Comment 47 Andrey Loskutov CLA 2015-11-13 05:19:49 EST
(In reply to Björn  Michael from comment #46)
> How are chances of fixing in Mars SR2 ?

Lars, AFAIK I need your review and +1 for backport.
Comment 48 Lars Vogel CLA 2015-11-13 08:39:52 EST
Created attachment 257922 [details]
PDE screenshot

(In reply to Andrey Loskutov from comment #41)
> (In reply to Eclipse Genie from comment #38)
> > New Gerrit change created: https://git.eclipse.org/r/59902
> 
> Lars, since I'm unable (or just not educated enough) to contribute "e4 only"
> view to Eclipse IDE (not RCP!), I can't test if the patch works as expected
> for the "e4 only" IDE contributions. 
> 
> Could you please attach an example plugin code which can be used to verify
> that "e4 only" specific functionality is still working? If it is possible,
> we could better add this to the tests, see
> https://git.eclipse.org/r/#/c/59902/2/tests/org.eclipse.ui.tests/
> Eclipse+UI+Tests/org/eclipse/ui/tests/api/IWorkbenchPageTest.java.

Sorry for the late reply, this is a very busy week for me. The latest Neon integration build contains a template for an e4 view which also work in the IDE. See attached screenshot, to get to it, select "This plug-in will make contributions to the UI" and "No RCP Application" on the wizard.
Comment 49 Andrey Loskutov CLA 2015-11-20 07:10:10 EST
*** Bug 473457 has been marked as a duplicate of this bug. ***
Comment 50 Patrik Suzzi CLA 2015-12-01 18:11:20 EST
Shall we call this Closed Fixed ?
Comment 51 Andrey Loskutov CLA 2015-12-02 00:35:36 EST
(In reply to Patrik Suzzi from comment #50)
> Shall we call this Closed Fixed ?

No, the bug is waiting for a backport approval.
Comment 52 Andrey Loskutov CLA 2015-12-04 04:32:22 EST
*** Bug 477742 has been marked as a duplicate of this bug. ***
Comment 53 Eclipse Genie CLA 2015-12-04 04:55:41 EST
New Gerrit change created: https://git.eclipse.org/r/61954
Comment 54 Andrey Loskutov CLA 2015-12-04 04:59:51 EST
(In reply to Eclipse Genie from comment #53)
> New Gerrit change created: https://git.eclipse.org/r/61954

@Stefan, I need a developer +1 for backport.
@Lars, I need a +1 from you to backport.
Comment 55 Lars Vogel CLA 2015-12-04 05:12:37 EST
Sorry for the delay on my side. Code change looks fine and I tested the scenario of comment 39. +1 for downport from project lead.
Comment 56 Stefan Xenos CLA 2015-12-04 13:33:40 EST
I'll let Lars accept this change if he wants, but I still have concerns about the code duplication and the fact that we're using a different API for opening legacy and E4 parts. I'd rather fix whatever underlying problem is forcing us to use this workaround or (if it's not a workaround) introduce a new API that always works - that we don't need to copy-and-paste this block in each call site that opens a view.

If Lars feels this is important enough to accept the patch in its current form, I won't object -- but if we do so, we need someone to come back and address the technical debt later.
Comment 57 Andrey Loskutov CLA 2015-12-04 17:02:38 EST
(In reply to Stefan Xenos from comment #56)
> I'll let Lars accept this change if he wants, but I still have concerns
> about the code duplication and the fact that we're using a different API for
> opening legacy and E4 parts. I'd rather fix whatever underlying problem is
> forcing us to use this workaround or (if it's not a workaround) introduce a
> new API that always works - that we don't need to copy-and-paste this block
> in each call site that opens a view.

Absolutely agree, sorry not responding before. I've created bug 471782 to follow up.

> If Lars feels this is important enough to accept the patch in its current
> form, I won't object -- but if we do so, we need someone to come back and
> address the technical debt later.

We cannot introduce new API in 4.5.2, so we have no chance to do "the right thing" there, but IMHO we *must* fix this bug in 4.5.2, just see on duplicated bugs how many *various* incarnations of weird bugs this issue caused so far.
Comment 58 Andrey Loskutov CLA 2015-12-08 05:29:38 EST
(In reply to Stefan Xenos from comment #56)
> If Lars feels this is important enough to accept the patch in its current
> form, I won't object -- but if we do so, we need someone to come back and
> address the technical debt later.

@Lars: please answer to comment 56 (see also bug 483699 as follow up). I would really like to get this bug fixed in 4.5.2.
Comment 59 Lars Vogel CLA 2015-12-08 05:45:52 EST
(In reply to Andrey Loskutov from comment #58)
> (In reply to Stefan Xenos from comment #56)
> > If Lars feels this is important enough to accept the patch in its current
> > form, I won't object -- but if we do so, we need someone to come back and
> > address the technical debt later.
> 
> @Lars: please answer to comment 56 (see also bug 483699 as follow up). I
> would really like to get this bug fixed in 4.5.2.

As you said, I don't think we are allowed to change API in 4.5.2
Comment 60 Andrey Loskutov CLA 2015-12-08 07:45:04 EST
(In reply to Lars Vogel from comment #59)
> (In reply to Andrey Loskutov from comment #58)
> > (In reply to Stefan Xenos from comment #56)
> > > If Lars feels this is important enough to accept the patch in its current
> > > form, I won't object -- but if we do so, we need someone to come back and
> > > address the technical debt later.
> > 
> > @Lars: please answer to comment 56 (see also bug 483699 as follow up). I
> > would really like to get this bug fixed in 4.5.2.
> 
> As you said, I don't think we are allowed to change API in 4.5.2

@Stefan: can we proceed with the backport review?
Comment 61 Stefan Xenos CLA 2015-12-08 15:28:07 EST
> can we proceed with the backport review?

Sorry, I must not have explained myself properly: I'm not comfortable with the patch in its current form, due to the code duplication and my suspicion that it is covering a bug in EPartService. I won't stand in the way if another committer wants to take responsibility for the technical debt, but I don't want to clean this up afterward.

Can you explain why this fix had to go in the handler and not in EPartService?

Am I misunderstanding something?
Comment 62 Lars Vogel CLA 2015-12-08 15:32:38 EST
(In reply to Stefan Xenos from comment #61)
> Can you explain why this fix had to go in the handler and not in
> EPartService?

EPartService is not allowed to have a dependency to e3 plug-ins, as its part of the e4 API. I did not research the problem in detail (so Andrey may want to add information here) but we do not want e4 API to depend on e3, otherwise every Eclipse 4.x RCP customer would need the e3 plug-ins (which is currently not the case).
Comment 63 Stefan Xenos CLA 2015-12-08 15:52:27 EST
> EPartService is not allowed to have a dependency to e3 plug-ins, as its
> part of the e4 API.

It's reasonable that there should be no code dependencies on e3.

But presumably it should be possible for an e4 part to open an e3 view if it knows the e3 view's ID. It shouldn't need to know if the part is an e4 or e3 view and do something differently in each case... in fact, if it's not allowed code dependencies on e3 that would be impossible.

My concern is that by moving the responsibility for dealing with legacy parts into callers of the showPart method, pretty much every caller is going to get it wrong.
Comment 64 Andrey Loskutov CLA 2015-12-14 02:39:03 EST
*** Bug 484289 has been marked as a duplicate of this bug. ***
Comment 65 Andrey Loskutov CLA 2015-12-14 03:16:52 EST
(In reply to Andrey Loskutov from comment #64)
> *** Bug 484289 has been marked as a duplicate of this bug. ***

Stefan, don't get me wrong: the current code is a mess and the patch doesn't change it => bug 483699. 

I agree 100% that there should be a better solution but I definitely have no time to drive this solution by myself because I do almost all the OS work in my free time and *if* somebody will provide a better solution, this will eventually not fit for backport criteria for 4.5.2.

So while for now no one has a better solution for this bug and a simple workaround *is* available, we should at least provide this working fix to the 4.5.2. Just see how many issues we get reported for it.

The reason why I'm trying to get the patch into 4.5.2 is not because I like it but because I feel me responsible to make Eclipse user experience less painful if I know that there is a way to do so, even if this way not the perfect one.
Comment 66 Joerg Buchberger CLA 2015-12-14 09:24:57 EST
Please note that whenever I try to open a call hierarchy on a method,
this same null pointer occurs in my Mars.1

I'm not really sure, but I suspect this started to happen, ever since updating to Mars.1

At present we base our RCP on a patched ui.workbench where we simply put an if-check around getSite() calls in WorkbenchPage, because after updating our RCP target platform to Mars, we had these null pointers when parts where activated or closed (don't remember exactly though).
Comment 67 Andrey Loskutov CLA 2015-12-14 09:31:45 EST
(In reply to Joerg Buchberger from comment #66)
> Please note that whenever I try to open a call hierarchy on a method,
> this same null pointer occurs in my Mars.1
> 
> I'm not really sure, but I suspect this started to happen, ever since
> updating to Mars.1

Intersting, the bug existed since 4.5.0

> At present we base our RCP on a patched ui.workbench where we simply put an
> if-check around getSite() calls in WorkbenchPage, because after updating our
> RCP target platform to Mars, we had these null pointers when parts where
> activated or closed (don't remember exactly though).

Jörg, are you able to apply the patch https://git.eclipse.org/r/61954 on your platform and check if your problem goes away?
Comment 68 Joerg Buchberger CLA 2015-12-15 05:51:10 EST
Thanks Andrey. Now thhe exception does not occur anymore.
Unfortunately, the call hierarchy view still shows no entry, when using the menu item "Open Call Hierarchy" from members context menu or CTRL-ALT-H.

So, at present, when I need a call hierarchy, I resort to dragging members from outline view and drop them to the call hierarchy view. Luckily, this way it works. Seems like, I should open another bug in its own right (for JDT?).
Comment 69 Andrey Loskutov CLA 2015-12-15 07:51:11 EST
(In reply to Joerg Buchberger from comment #68)
> Thanks Andrey. Now thhe exception does not occur anymore.

Good.

> Unfortunately, the call hierarchy view still shows no entry, when using the
> menu item "Open Call Hierarchy" from members context menu or CTRL-ALT-H.

Bad.
 
> So, at present, when I need a call hierarchy, I resort to dragging members
> from outline view and drop them to the call hierarchy view. Luckily, this
> way it works. Seems like, I should open another bug in its own right (for
> JDT?).

Yes, please open separated one.
Comment 70 Andrey Loskutov CLA 2015-12-18 05:18:57 EST
*** Bug 431893 has been marked as a duplicate of this bug. ***
Comment 71 Andrey Loskutov CLA 2015-12-18 05:24:03 EST
Dani, could you please review the patch to backport it to 4.5.2? This is one of most irritating regressions in 4.5, causing wide range of unexpected error.
Comment 72 Jan Poganski CLA 2015-12-18 10:49:00 EST
Is Bug 431893 really a duplicate of this bug?

Here I read that a view is blank while in Bug 431893 a view is completly invisible.

Here I read that there is a related log entry while in Bug 431893 I could not report a log entry.
Comment 73 Stephan Herrmann CLA 2015-12-18 14:03:13 EST
(In reply to Jan Poganski from comment #72)
> Is Bug 431893 really a duplicate of this bug?
> 
> Here I read that a view is blank while in Bug 431893 a view is completly
> invisible.
> 
> Here I read that there is a related log entry while in Bug 431893 I could
> not report a log entry.

I share your doubt. IIRC bug 431893 could be seen already in Kepler, whereas:

(In reply to Andrey Loskutov from comment #67)
> ... the bug existed since 4.5.0

I'm currently running 4.6M4 which should contain the fix for this problem. Next time when/if I see bug 431893 I will reopen.
Comment 74 Andrey Loskutov CLA 2015-12-24 05:55:28 EST
*** Bug 484759 has been marked as a duplicate of this bug. ***
Comment 75 Andrey Loskutov CLA 2016-01-07 11:13:19 EST
@Brian, @Dani: do you have time to review the backported patch for inclusion to 4.5.2?
Comment 76 Brian de Alwis CLA 2016-01-07 12:06:31 EST
+1 for the backport.
Comment 78 Lars Vogel CLA 2016-01-07 14:35:01 EST
(In reply to Eclipse Genie from comment #77)
> Gerrit change https://git.eclipse.org/r/61954 was merged to
> [R4_5_maintenance].
> Commit:
> http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/
> ?id=16f2a9a65b46bdfb49f84f7ae0088378092e6e41

Finally. Thanks Andrey for your persistence.
Comment 79 Andrey Loskutov CLA 2016-02-03 12:39:55 EST
Verified with 4.5.2 RC2 using steps from comment 39.
Comment 80 Brian de Alwis CLA 2016-02-03 15:58:46 EST
*** Bug 476801 has been marked as a duplicate of this bug. ***
Comment 81 Oliver Libutzki CLA 2016-02-16 05:10:28 EST
Hi,

we still have this problem with org.eclipse.platform.feature.group 4.5.2.v20160212-1500.

The corresponding stacktrace:
java.lang.NullPointerException
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1271)
	at org.eclipse.ui.internal.WorkbenchPage$12.run(WorkbenchPage.java:4238)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4234)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4214)
	at org.tigris.subversion.subclipse.ui.internal.TeamAction.showView(TeamAction.java:384)
	at org.tigris.subversion.subclipse.ui.actions.ShowResourceInHistoryAction.access$0(ShowResourceInHistoryAction.java:1)
	at org.tigris.subversion.subclipse.ui.actions.ShowResourceInHistoryAction$1.run(ShowResourceInHistoryAction.java:39)
	at org.tigris.subversion.subclipse.ui.repository.RepositoryManager.run(RepositoryManager.java:375)
	at org.tigris.subversion.subclipse.ui.actions.SVNAction$1.run(SVNAction.java:231)
	at org.tigris.subversion.subclipse.ui.actions.SVNAction$2.run(SVNAction.java:240)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.tigris.subversion.subclipse.ui.actions.SVNAction.run(SVNAction.java:237)
	at org.tigris.subversion.subclipse.ui.actions.ShowResourceInHistoryAction.execute(ShowResourceInHistoryAction.java:35)
	at org.tigris.subversion.subclipse.ui.actions.SVNAction.run(SVNAction.java:56)
	at org.eclipse.ui.actions.ActionDelegate.runWithEvent(ActionDelegate.java:75)
	at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:237)
	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:595)
	at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:511)
	at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:420)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4481)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1329)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3819)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3430)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:694)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:606)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1515)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1488)
Comment 82 Andrey Loskutov CLA 2016-02-16 05:20:19 EST
(In reply to Oliver Libutzki from comment #81)
> we still have this problem with org.eclipse.platform.feature.group
> 4.5.2.v20160212-1500.

Can you please provide steps to reproduce?
Comment 83 Oliver Libutzki CLA 2016-02-16 06:03:25 EST
OS: Linux 64bit - Ubuntu 14.04.3LTS

Perspective: Java EE
Project explorer, Right click, Team | Show History

The problem encountered about an hour after starting Eclipse the first time. But now it ALWAYS occurs.

In the Team Synchronizing perspective the error does not occur.
Comment 84 Oliver Libutzki CLA 2016-02-22 01:57:51 EST
Any progress? Or is it better to create a new bugzilla ticket as this ticket is already marked as "fixed"?
Comment 85 Dani Megert CLA 2016-02-22 06:57:41 EST
(In reply to Oliver Libutzki from comment #84)
> Any progress? Or is it better to create a new bugzilla ticket as this ticket
> is already marked as "fixed"?

I can't reproduce this. Please open a new bug if you have reliable steps.
Comment 86 Johan Van Noten CLA 2016-02-25 09:22:26 EST
Issue still occurs on fresh install of:
* Mars 4.5.2M20160212-1500 on Windows x64 
* Eclipse Git Team Provider 4.2.0 (but also with the originally shipped git)

Observations:
* Works in Team Sync Perspective
* Doesn't work in Java Perspective, Resource Perspective... (probably all perspectives that by default do not contain the History View).

Exception when showing the History view states:
* The exception mentioned in previous comments (NPE in showViewBusy...)
* Preceded by the log message
java.io.IOException: Unable to resolve plug-in "platform:/plugin/org.eclipse.emf.emfstore.client.ui/icons/historyview.png".
	at org.eclipse.core.internal.runtime.PlatformURLPluginConnection.parse(PlatformURLPluginConnection.java:65)
	at org.eclipse.core.internal.runtime.FindSupport.find(FindSupport.java:290)
	at org.eclipse.core.runtime.FileLocator.find(FileLocator.java:152)
	at org.eclipse.jface.resource.URLImageDescriptor.getStream(URLImageDescriptor.java:140)
	at org.eclipse.jface.resource.URLImageDescriptor.getImageData(URLImageDescriptor.java:105)
	at org.eclipse.jface.resource.URLImageDescriptor.getImageData(URLImageDescriptor.java:100)
	at org.eclipse.jface.resource.ImageDescriptor.createImage(ImageDescriptor.java:270)
	at org.eclipse.jface.resource.URLImageDescriptor.createImage(URLImageDescriptor.java:291)
	at org.eclipse.jface.resource.ImageDescriptor.createImage(ImageDescriptor.java:224)
	at org.eclipse.jface.resource.ImageDescriptor.createImage(ImageDescriptor.java:202)
	at org.eclipse.ui.internal.dialogs.ViewLabelProvider.getImage(ViewLabelProvider.java:93)
	at org.eclipse.jface.viewers.ColumnLabelProvider.update(ColumnLabelProvider.java:35)
	at org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn.java:154)
	at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:949)
	at org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeRunnable.run(AbstractTreeViewer.java:114)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:50)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:173)
	at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:1029)
	at org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:473)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:50)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:173)
	at org.eclipse.jface.viewers.StructuredViewer.updateItem(StructuredViewer.java:2176)
	at org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem(AbstractTreeViewer.java:843)
	at org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractTreeViewer.java:818)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:791)
	at org.eclipse.jface.viewers.TreeViewer.createChildren(TreeViewer.java:611)
	at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:762)
	at org.eclipse.jface.viewers.AbstractTreeViewer.setExpandedState(AbstractTreeViewer.java:2500)
	at org.eclipse.ui.dialogs.FilteredTree$2.recursiveExpand(FilteredTree.java:598)
	at org.eclipse.ui.dialogs.FilteredTree$2.runInUIThread(FilteredTree.java:541)
	at org.eclipse.ui.progress.UIJob$1.run(UIJob.java:97)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4155)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3772)
	at org.eclipse.jface.window.Window.runEventLoop(Window.java:827)
	at org.eclipse.jface.window.Window.open(Window.java:803)
	at org.eclipse.ui.handlers.ShowViewHandler.openOther(ShowViewHandler.java:102)
	at org.eclipse.ui.handlers.ShowViewHandler.execute(ShowViewHandler.java:77)
	at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:295)
	at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:90)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
	at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:252)
	at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:234)
	at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132)
	at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:152)
	at org.eclipse.core.commands.Command.executeWithChecks(Command.java:493)
	at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:486)
	at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:210)
	at org.eclipse.ui.internal.handlers.LegacyHandlerService.executeCommand(LegacyHandlerService.java:343)
	at org.eclipse.ui.internal.ShowViewMenu$3.run(ShowViewMenu.java:147)
	at org.eclipse.jface.action.Action.runWithEvent(Action.java:473)
	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:595)
	at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:511)
	at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:420)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4362)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1113)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4180)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3769)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:694)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:606)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1515)
Comment 87 fabien thebaud CLA 2016-02-29 10:46:18 EST
I Just upgraded from 4.5.1 to 4.2.5, and the bug is still here.

SVN: '0x00400114: Show History View' operation finished with error: null
java.lang.NullPointerException


Version:	3.0.4.I20160131-1700

SVN Client:	org.eclipse.team.svn.connector.svnkit18 5.0.2.I20151228-1700 SVN/1.8.1 SVNKit/1.8.11 (http://svnkit.com/) r10483_v20150925_0010

JVM Properties:
{java.runtime.name=Java(TM) SE Runtime Environment, java.runtime.version=1.8.0_45-b15, java.vendor=Oracle Corporation, line.separator=
 , java.class.version=52.0, os.name=Windows 7, os.arch=amd64, user.country=FR, os.version=6.1, eclipse.commands=-os win32 -ws win32 -arch x86_64 -showsplash D:\Programs\Eclipses\eclipse-mars-4.5\\plugins\org.eclipse.platform_4.5.2.v20160212-1500\splash.bmp -launcher D:\Programs\Eclipses\eclipse-mars-4.5\eclipse.exe -name Eclipse --launcher.library D:\Programs\Eclipses\eclipse-mars-4.5\\plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.300.v20150602-1417\eclipse_1611.dll -startup D:\Programs\Eclipses\eclipse-mars-4.5\\plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar --launcher.appendVmargs -showlocation -Duser.language=en_US -product org.eclipse.epp.package.jee.product -clean -vm D:/Programs/Java/jdk1.8.0_45/bin\..\jre\bin\server\jvm.dll , java.version=1.8.0_45, file.separator=\, java.vm.info=mixed mode, path.separator=;, user.timezone=Europe/Paris, user.language=fr, java.vm.name=Java HotSpot(TM) 64-Bit Server VM, file.encoding=Cp1252}

java.lang.NullPointerException
java.lang.NullPointerException
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1271)
	at org.eclipse.ui.internal.WorkbenchPage$12.run(WorkbenchPage.java:4238)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4234)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4214)
	at org.eclipse.team.svn.ui.operation.ShowHistoryViewOperation$1.run(ShowHistoryViewOperation.java:85)
	at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:186)
	at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:145)
	at org.eclipse.swt.widgets.Display.syncExec(Display.java:4761)
	at org.eclipse.team.svn.ui.operation.ShowHistoryViewOperation.runImpl(ShowHistoryViewOperation.java:79)
	at org.eclipse.team.svn.core.operation.AbstractActionOperation.run(AbstractActionOperation.java:82)
	at org.eclipse.team.svn.core.operation.LoggedOperation.run(LoggedOperation.java:40)
	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.UIMonitorUtility$1.run(UIMonitorUtility.java:186)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.team.svn.ui.utility.UIMonitorUtility.doTaskBusy(UIMonitorUtility.java:183)
	at org.eclipse.team.svn.ui.action.AbstractSVNTeamAction.runBusy(AbstractSVNTeamAction.java:116)
	at org.eclipse.team.svn.ui.action.local.ShowHistoryAction.runImpl(ShowHistoryAction.java:33)
	at org.eclipse.team.svn.ui.action.AbstractSVNTeamAction$2.runImpl(AbstractSVNTeamAction.java:89)
	at org.eclipse.team.svn.core.operation.AbstractActionOperation.run(AbstractActionOperation.java:82)
	at org.eclipse.team.svn.core.operation.LoggedOperation.run(LoggedOperation.java:40)
	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.core.utility.ProgressMonitorUtility.doTaskExternal(ProgressMonitorUtility.java:81)
	at org.eclipse.team.svn.ui.action.AbstractSVNTeamAction.execute(AbstractSVNTeamAction.java:82)
	at org.eclipse.team.internal.ui.actions.TeamAction.run(TeamAction.java:515)
	at org.eclipse.team.internal.ui.actions.TeamAction.runWithEvent(TeamAction.java:549)
	at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:237)
	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:595)
	at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:511)
	at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:420)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4362)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1113)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4180)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3769)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:694)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:606)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1515)
Comment 88 Leon Li CLA 2016-02-29 11:57:51 EST
Upgraded to 4.5.2 - Build id: 20160218-0600
The problem persists. Same error messages in the log.
Please re-open!
Comment 89 Andrey Loskutov CLA 2016-02-29 15:43:32 EST
I've opened bug 488719 for 4.5.2. Please if you can reproduce, provide there exact steps.
Comment 90 Brian de Alwis CLA 2016-06-02 11:26:55 EDT
*** Bug 473141 has been marked as a duplicate of this bug. ***
Comment 91 Alexander Wessel CLA 2016-06-15 12:49:31 EDT
*I still see this bug in Neon.RC4* (I20160606-1100) with a installation that began with Neon.M2 and was continuously updated using the milestones update site, and workspaces first created in Mars and then upgraded recently (by Neon.RC4). The behaviour has not changed at all ever since it first appeared in Mars and I still get the same exception in the EventLog when I right click a file and select compare With -> Local History:

Caused by: java.lang.NullPointerException
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1278)

I also still get this with Ctrl-3 -> History, and pretty much any other method of opening a History view. Closing all perspectives and reopening them did not cure this for me either.

Is the bugfix dependent on a fresh install and/or fresh workspace? Was the apparent cause rooted in data or behaviour?

Cheers,
Flexx.
Comment 92 Svyat S. CLA 2016-06-21 03:44:02 EDT
Encountered the same problem in Mars 2.4.1/2.4.2

Caused by: java.lang.NullPointerException
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1271)

Fixed the problem by deleting content of workspace\.metadata\.plugins\org.eclipse.team.ui\ folder
Comment 93 Andrey Loskutov CLA 2016-07-18 06:55:55 EDT
*** Bug 475064 has been marked as a duplicate of this bug. ***
Comment 94 Andrey Loskutov CLA 2016-07-18 07:00:10 EDT
*** Bug 469590 has been marked as a duplicate of this bug. ***
Comment 95 Andrey Loskutov CLA 2016-07-18 07:24:17 EDT
*** Bug 477477 has been marked as a duplicate of this bug. ***
Comment 96 T. Orf CLA 2016-08-11 12:05:24 EDT
(In reply to Alexander Wessel from comment #91)
> *I still see this bug in Neon.RC4* (I20160606-1100) with a installation that
> began with Neon.M2 and was continuously updated using the milestones update
> site, and workspaces first created in Mars and then upgraded recently (by
> Neon.RC4). 

I had the following NPE on 4.6.0.I20160606-1100 when starting a "References in Workspace" search in the editor. The search view stayed blank except the hint "No search results available. Start a search from the search dialog...".

Caused by: java.lang.NullPointerException
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1278)
	at org.eclipse.ui.internal.WorkbenchPage$12.run(WorkbenchPage.java:4316)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4312)
	at org.eclipse.search2.internal.ui.SearchViewManager.activateSearchView(SearchViewManager.java:114)
	at org.eclipse.search2.internal.ui.SearchViewManager.activateSearchView(SearchViewManager.java:82)
	at org.eclipse.search2.internal.ui.InternalSearchUI.runSearchInBackground(InternalSearchUI.java:164)
	at org.eclipse.search.ui.NewSearchUI.runQueryInBackground(NewSearchUI.java:133)
	at org.eclipse.search.ui.NewSearchUI.runQueryInBackground(NewSearchUI.java:106)
	at org.eclipse.jdt.internal.ui.search.SearchUtil.runQueryInBackground(SearchUtil.java:79)
	at org.eclipse.jdt.ui.actions.FindAction.performNewSearch(FindAction.java:331)
	at org.eclipse.jdt.ui.actions.FindAction.run(FindAction.java:313)
	at org.eclipse.jdt.ui.actions.FindAction.run(FindAction.java:294)
	at org.eclipse.jdt.ui.actions.FindReferencesAction.run(FindReferencesAction.java:106)
	at org.eclipse.jdt.ui.actions.FindAction.run(FindAction.java:257)
	at org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:275)
	at org.eclipse.jdt.ui.actions.SelectionDispatchAction.run(SelectionDispatchAction.java:249)
	at org.eclipse.jface.action.Action.runWithEvent(Action.java:473)
	at org.eclipse.jface.commands.ActionHandler.execute(ActionHandler.java:118)
	... 56 more

At other times, the Call Hierarchy view would not get updated.

My workspaces were created with 4.6, but with settings imported from a very old workspace, migrated over multiple Eclipse versions. In some but not all of them, I had also copied .metadata/.plugins/org.eclipse.core.runtime/.settings/ from that old workspace.

Closing all views of no longer installed plugins (those with small red square icons) seems to fix it for me. Only did that for the current perspective; closed ones can be left "broken"; my other open (but not currently selected) perspectives didn't have such views, so I don't know whether they could cause the problem too.