Assembla home | Assembla project page
 

Ticket #59 (new defect)

Opened 2 months ago

Last modified 1 day ago

History not displayed

Reported by: anonymous Assigned to:
Priority: normal Milestone:
Component: mercurialeclipse Version:
Severity: normal Keywords:
Cc:

Description

A repository that was created some time ago is perfectly displaying its history in the history tab with: Eclipse 3.4 Ganymede, Mercurial Eclipse Plugin 1.0.815, Mercurial 1.02, Windows XP.

Using the same setup, but Plugin 1.1.867 or Plugin 1.0.862, that seems to be brocken. The history tab is showing nothing.

Attachments

hg_history.png (30.1 kB) - added by zawadaa on 11/18/08 14:23:19.
After few seconds

Change History

11/01/08 14:17:17 changed by bastiand

We need more info on this. Would you please have a look at the Eclipse log (workspace/.metadata/.log). It works for me won't satisfy you, does it ;-)?

11/04/08 09:41:01 changed by m.luescher@datacomm.ch

It looks like I have got the same problem as described above. Sometimes the history is displayed as expected while after another startup of eclipse I get the following exception: (P.S.: Let me know if I can help to debug something. I have already downloaded the latest plugin source and I can run and test it if needed.)

!SESSION 2008-11-04 10:24:05.966 ----------------------------------------------- eclipse.buildId=M20080911-1700 java.version=1.6.0_07 java.vendor=Sun Microsystems Inc. BootLoader? constants: OS=linux, ARCH=x86, WS=gtk, NL=de_CH Framework arguments: -product org.eclipse.sdk.ide Command-line arguments: -product org.eclipse.sdk.ide -data /home/lueschem/MercurialEclipse/../runtime-New_configuration -dev file:/home/lueschem/MercurialEclipse/.metadata/.plugins/org.eclipse.pde.core/New_configuration/dev.properties -os linux -ws gtk -arch x86

!ENTRY org.eclipse.osgi 2 0 2008-11-04 10:24:17.688 !MESSAGE While loading class "com.vectrace.MercurialEclipse?.views.console.ConsoleDocument?$ConsoleLine?", thread "Thread[main,6,main]" timed out waiting (5000ms) for thread "Thread[Worker-1,5,main]" to finish starting bundle "reference:file:/home/lueschem/MercurialEclipse/com.vectrace.MercurialEclipse/ [172]". To avoid deadlock, thread "Thread[main,6,main]" is proceeding but "com.vectrace.MercurialEclipse?.views.console.ConsoleDocument?$ConsoleLine?" may not be fully initialized. !STACK 0 org.osgi.framework.BundleException?: State change in progress for bundle "reference:file:/home/lueschem/MercurialEclipse/com.vectrace.MercurialEclipse/" by thread "Worker-1".

at org.eclipse.osgi.framework.internal.core.AbstractBundle?.beginStateChange(AbstractBundle?.java:1144) at org.eclipse.osgi.framework.internal.core.AbstractBundle?.start(AbstractBundle?.java:263) at org.eclipse.osgi.framework.util.SecureAction?.start(SecureAction?.java:400) at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter?.postFindLocalClass(EclipseLazyStarter?.java:111) at org.eclipse.osgi.baseadaptor.loader.ClasspathManager?.findLocalClass(ClasspathManager?.java:427) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader?.findLocalClass(DefaultClassLoader?.java:193) at org.eclipse.osgi.framework.internal.core.BundleLoader?.findLocalClass(BundleLoader?.java:368) at org.eclipse.osgi.framework.internal.core.BundleLoader?.findClassInternal(BundleLoader?.java:444) at org.eclipse.osgi.framework.internal.core.BundleLoader?.findClass(BundleLoader?.java:397) at org.eclipse.osgi.framework.internal.core.BundleLoader?.findClass(BundleLoader?.java:385) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader?.loadClass(DefaultClassLoader?.java:87) at java.lang.ClassLoader?.loadClass(ClassLoader?.java:251) at java.lang.ClassLoader?.loadClassInternal(ClassLoader?.java:319) at com.vectrace.MercurialEclipse?.views.console.ConsoleDocument?.getLines(ConsoleDocument?.java:78) at com.vectrace.MercurialEclipse?.views.console.HgConsole?.dump(HgConsole?.java:229) at com.vectrace.MercurialEclipse?.views.console.HgConsole?.access$1(HgConsole?.java:226) at com.vectrace.MercurialEclipse?.views.console.HgConsole?$1.runSafe(HgConsole?.java:158) at com.vectrace.MercurialEclipse?.SafeUiJob?.runInUIThread(SafeUiJob?.java:49) at org.eclipse.ui.progress.UIJob$1.run(UIJob.java:94) at org.eclipse.swt.widgets.RunnableLock?.run(RunnableLock?.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:133) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3378) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3036) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2382) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2198) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:288) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:488) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113) at org.eclipse.equinox.internal.app.EclipseAppHandle?.run(EclipseAppHandle?.java:193) 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:386) at org.eclipse.core.runtime.adaptor.EclipseStarter?.run(EclipseStarter?.java:179) at sun.reflect.NativeMethodAccessorImpl?.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl?.invoke(NativeMethodAccessorImpl?.java:39) at sun.reflect.DelegatingMethodAccessorImpl?.invoke(DelegatingMethodAccessorImpl?.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504) at org.eclipse.equinox.launcher.Main.run(Main.java:1236) at org.eclipse.equinox.launcher.Main.main(Main.java:1212)

Caused by: org.eclipse.osgi.framework.internal.core.AbstractBundle?$BundleStatusException?

... 44 more

Root exception: org.eclipse.osgi.framework.internal.core.AbstractBundle?$BundleStatusException?

at org.eclipse.osgi.framework.internal.core.AbstractBundle?.beginStateChange(AbstractBundle?.java:1144) at org.eclipse.osgi.framework.internal.core.AbstractBundle?.start(AbstractBundle?.java:263) at org.eclipse.osgi.framework.util.SecureAction?.start(SecureAction?.java:400) at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter?.postFindLocalClass(EclipseLazyStarter?.java:111) at org.eclipse.osgi.baseadaptor.loader.ClasspathManager?.findLocalClass(ClasspathManager?.java:427) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader?.findLocalClass(DefaultClassLoader?.java:193) at org.eclipse.osgi.framework.internal.core.BundleLoader?.findLocalClass(BundleLoader?.java:368) at org.eclipse.osgi.framework.internal.core.BundleLoader?.findClassInternal(BundleLoader?.java:444) at org.eclipse.osgi.framework.internal.core.BundleLoader?.findClass(BundleLoader?.java:397) at org.eclipse.osgi.framework.internal.core.BundleLoader?.findClass(BundleLoader?.java:385) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader?.loadClass(DefaultClassLoader?.java:87) at java.lang.ClassLoader?.loadClass(ClassLoader?.java:251) at java.lang.ClassLoader?.loadClassInternal(ClassLoader?.java:319) at com.vectrace.MercurialEclipse?.views.console.ConsoleDocument?.getLines(ConsoleDocument?.java:78) at com.vectrace.MercurialEclipse?.views.console.HgConsole?.dump(HgConsole?.java:229) at com.vectrace.MercurialEclipse?.views.console.HgConsole?.access$1(HgConsole?.java:226) at com.vectrace.MercurialEclipse?.views.console.HgConsole?$1.runSafe(HgConsole?.java:158) at com.vectrace.MercurialEclipse?.SafeUiJob?.runInUIThread(SafeUiJob?.java:49) at org.eclipse.ui.progress.UIJob$1.run(UIJob.java:94) at org.eclipse.swt.widgets.RunnableLock?.run(RunnableLock?.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:133) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3378) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3036) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2382) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2198) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:288) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:488) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113) at org.eclipse.equinox.internal.app.EclipseAppHandle?.run(EclipseAppHandle?.java:193) 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:386) at org.eclipse.core.runtime.adaptor.EclipseStarter?.run(EclipseStarter?.java:179) at sun.reflect.NativeMethodAccessorImpl?.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl?.invoke(NativeMethodAccessorImpl?.java:39) at sun.reflect.DelegatingMethodAccessorImpl?.invoke(DelegatingMethodAccessorImpl?.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504) at org.eclipse.equinox.launcher.Main.run(Main.java:1236) at org.eclipse.equinox.launcher.Main.main(Main.java:1212)

11/04/08 12:42:39 changed by m.luescher@datacomm.ch

Additional information:
MercurialHistoryPage::canShowHistoryFor() returns false if the resource is not supervised (cache.isSupervised(resource)).
After a "Team/Refresh status" the history displays properly with "Team/Show History".

(follow-up: ↓ 5 ) 11/04/08 17:22:17 changed by bastiand

Hm. It looks like the plug-in start up, to be exact the HgConsole? initialization needs to long and is therefore cancelled by the Eclipse runtime. I frankly don't know what could cause the classloader to need that long to load a class (the class ConsoleLine?).

Does this occur when your computers are under heavy load?

(in reply to: ↑ 4 ) 11/05/08 20:46:20 changed by m.luescher@datacomm.ch

Does this occur when your computers are under heavy load?

No, it was on a Core2Duo without a big load.

11/18/08 14:23:19 changed by zawadaa

  • attachment hg_history.png added.

After few seconds

11/18/08 14:24:15 changed by zawadaa

1.1.900 and I can confirm - doesn't work but I got an error - see attachment

11/18/08 17:50:08 changed by bastiand

Your error is different. so I wonder if it could be, that by you run Mercurial crew with a version before Sunday? With crew, you need the following changeset for having it work, as a refactoring broke glog file history.

changeset: 7383:b501c7f3c2ad user: Peter Arrenbrecht <peter.arrenbrecht@gmail.com> date: Sun Nov 16 20:55:30 2008 +0100 summary: graphlog: fix regression with filelogs introduced by 7bc62ebe7693

11/19/08 09:29:50 changed by anonymous

Uuu I have: hg version Mercurial Distributed SCM (version 1.0.2)

so, this is stable version... Looks like I need DEV?

11/20/08 17:57:58 changed by bastiand

No, it should work with stable. Could you please have a look at the Eclipse log, if you got the same exception as posted above?

I still don't know, why the bundle start should take so long. We basically only load previously used repositories and initialize the console. If you have an idea, why it breaks during console initialization please give me a hint - I'll try to fix it then :).

11/20/08 18:07:57 changed by bastiand

How is the plug-in installed btw.? Did you install it from the update site, or did you install it manually?

11/21/08 13:08:35 changed by zawadaa

Hello!

Conntent of .log: !ENTRY org.eclipse.core.jobs 4 2 2008-11-21 14:05:24.741 !MESSAGE An internal error occurred during: "Fetching Mercurial revisions...". !STACK 0 java.lang.IndexOutOfBoundsException?: Index: 3, Size: 3

at java.util.ArrayList?.RangeCheck?(ArrayList?.java:547) at java.util.ArrayList?.get(ArrayList?.java:322) at com.vectrace.MercurialEclipse?.model.GChangeSet$RowCount?.update(GChangeSet.java:159) at com.vectrace.MercurialEclipse?.model.GChangeSet$EdgeList?.addEdge(GChangeSet.java:102) at com.vectrace.MercurialEclipse?.model.GChangeSet$EdgeList?.parse(GChangeSet.java:84) at com.vectrace.MercurialEclipse?.model.GChangeSet.<init>(GChangeSet.java:38) at com.vectrace.MercurialEclipse?.commands.HgGLogClient.load(HgGLogClient.java:51) at com.vectrace.MercurialEclipse?.commands.HgGLogClient.<init>(HgGLogClient.java:31) at com.vectrace.MercurialEclipse?.history.MercurialHistory?.refresh(MercurialHistory?.java:209) at com.vectrace.MercurialEclipse?.history.MercurialHistoryPage?$RefreshMercurialHistory?.run(MercurialHistoryPage?.java:107) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

I've just made a test with plugin from website and builded from sources. Error is the same :-(

11/24/08 21:26:44 changed by bastiand

This is strange. I just can't reproduce this (under Linux). I just don't get this error :(. I know the glog code was broken in crew, but not in 1.0.2 and our code works for me. And I have never seen this bundle start up error :(

11/30/08 18:55:16 changed by bastiand

Works on MacOsX as well.


Add/Change #59 (History not displayed)