Community
Participate
Working Groups
I was activating Change Id2666d89 when an error dialog popped out. -- Error Details -- Date: Tue Dec 27 22:07:49 CET 2011 Message: Synchronization failed Severity: Error Product: Eclipse SDK 3.8.0.v201112091447 (org.eclipse.sdk.ide) Plugin: org.eclipse.mylyn.tasks.core Session Data: eclipse.buildId=I20111209-1447 java.fullversion=JRE 1.6.0 IBM J9 2.4 Windows XP x86-32 jvmwi3260sr7-20091214_49398 (JIT enabled, AOT enabled) J9VM - 20091214_049398 JIT - r9_20091123_13891 GC - 20091111_AA BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=pl_PL Command-line arguments: -data D:\workspace\eclipse\egit -os win32 -ws win32 -arch x86 Exception Stack Trace: com.google.gson.JsonParseException: The JsonDeserializer com.google.gson.DefaultTypeAdapters$CollectionTypeAdapter@5d535d53 failed to deserialized json object [{"key":{"patchSetId":{"changeId":{"id":4884},"patchSetId":1},"fileName":"/COMMIT_MSG"},"changeType":"A","patchType":"U","nbrComments":0,"nbrDrafts":0,"insertions":9,"deletions":0,"reviewedByCurrentUser":false},{"key":{"patchSetId":{"changeId":{"id":4884},"patchSetId":1},"fileName":"org.eclipse.jgit.test/tst/org/eclipse/jgit/api/LogCommandTest.java"},"changeType":"M","patchType":"U","nbrComments":0,"nbrDrafts":0,"insertions":2,"deletions":2,"reviewedByCurrentUser":false},{"key":{"patchSetId":{"changeId":{"id":4884},"patchSetId":1},"fileName":"org.eclipse.jgit.test/tst/org/eclipse/jgit/revwalk/SkipRevFilterTest.java"},"changeType":"A","patchType":"U","nbrComments":0,"nbrDrafts":0,"insertions":92,"deletions":0,"reviewedByCurrentUser":false},{"key":{"patchSetId":{"changeId":{"id":4884},"patchSetId":1},"fileName":"org.eclipse.jgit/resources/org/eclipse/jgit/JGitText.properties"},"changeType":"M","patchType":"U","nbrComments":0,"nbrDrafts":0,"insertions":2,"deletions":1,"reviewedByCurrentUser":false},{"key":{"patchSetId":{"changeId":{"id":4884},"patchSetId":1},"fileName":"org.eclipse.jgit/src/org/eclipse/jgit/JGitText.java"},"changeType":"M","patchType":"U","nbrComments":1,"nbrDrafts":0,"insertions":2,"deletions":1,"reviewedByCurrentUser":false},{"key":{"patchSetId":{"changeId":{"id":4884},"patchSetId":1},"fileName":"org.eclipse.jgit/src/org/eclipse/jgit/api/LogCommand.java"},"changeType":"M","patchType":"U","nbrComments":1,"nbrDrafts":0,"insertions":19,"deletions":1,"reviewedByCurrentUser":false},{"key":{"patchSetId":{"changeId":{"id":4884},"patchSetId":1},"fileName":"org.eclipse.jgit/src/org/eclipse/jgit/revwalk/filter/SkipRevFilter.java"},"changeType":"A","patchType":"U","nbrComments":1,"nbrDrafts":0,"insertions":96,"deletions":0,"reviewedByCurrentUser":false}] given the type com.google.gson.ParameterizedTypeImpl@28762815 at com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:63) at com.google.gson.JsonDeserializationVisitor.invokeCustomDeserializer(JsonDeserializationVisitor.java:88) at com.google.gson.JsonObjectDeserializationVisitor.visitFieldUsingCustomHandler(JsonObjectDeserializationVisitor.java:116) at com.google.gson.ObjectNavigator.navigateClassFields(ObjectNavigator.java:158) at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:131) at com.google.gson.JsonDeserializationVisitor.visitChild(JsonDeserializationVisitor.java:107) at com.google.gson.JsonDeserializationVisitor.visitChildAsObject(JsonDeserializationVisitor.java:95) at com.google.gson.JsonObjectDeserializationVisitor.visitObjectField(JsonObjectDeserializationVisitor.java:61) at com.google.gson.ObjectNavigator.navigateClassFields(ObjectNavigator.java:164) at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:131) at com.google.gson.JsonDeserializationContextDefault.fromJsonObject(JsonDeserializationContextDefault.java:73) at com.google.gson.JsonDeserializationContextDefault.deserialize(JsonDeserializationContextDefault.java:51) at com.google.gson.Gson.fromJson(Gson.java:568) at org.eclipse.mylyn.internal.gerrit.core.client.JSonSupport.parseResponse(JSonSupport.java:215) at org.eclipse.mylyn.internal.gerrit.core.client.GerritService.invoke(GerritService.java:106) at $Proxy2.changeDetailX(Unknown Source) at org.eclipse.mylyn.internal.gerrit.core.client.GerritClient$4.execute(GerritClient.java:288) at org.eclipse.mylyn.internal.gerrit.core.client.GerritClient.execute(GerritClient.java:783) at org.eclipse.mylyn.internal.gerrit.core.client.GerritClient.getChangeDetail(GerritClient.java:285) at org.eclipse.mylyn.internal.gerrit.core.client.GerritClient.getChange(GerritClient.java:453) at org.eclipse.mylyn.internal.gerrit.core.GerritTaskDataHandler.getTaskData(GerritTaskDataHandler.java:90) at org.eclipse.mylyn.internal.gerrit.core.GerritConnector.getTaskData(GerritConnector.java:135) at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeTasksJob.synchronizeTask(SynchronizeTasksJob.java:245) at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeTasksJob.runInternal(SynchronizeTasksJob.java:218) at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeTasksJob.run(SynchronizeTasksJob.java:153) at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeTasksJob.run(SynchronizeTasksJob.java:129) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) Caused by: java.lang.NullPointerException at java.util.LinkedHashMap.get(LinkedHashMap.java:324) at com.google.gson.LruCache.getElement(LruCache.java:50) at com.google.gson.FieldAttributes.getAnnotations(FieldAttributes.java:157) at com.google.gson.FieldAttributes.getAnnotation(FieldAttributes.java:145) at com.google.gson.SerializedNameAnnotationInterceptingNamingPolicy.translateName(SerializedNameAnnotationInterceptingNamingPolicy.java:44) at com.google.gson.JsonObjectDeserializationVisitor.getFieldName(JsonObjectDeserializationVisitor.java:92) at com.google.gson.JsonObjectDeserializationVisitor.visitFieldUsingCustomHandler(JsonObjectDeserializationVisitor.java:97) at com.google.gson.ObjectNavigator.navigateClassFields(ObjectNavigator.java:158) at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:131) at com.google.gson.JsonDeserializationContextDefault.fromJsonObject(JsonDeserializationContextDefault.java:73) at com.google.gson.JsonDeserializationContextDefault.deserialize(JsonDeserializationContextDefault.java:51) at com.google.gson.DefaultTypeAdapters$CollectionTypeAdapter.deserialize(DefaultTypeAdapters.java:548) at com.google.gson.DefaultTypeAdapters$CollectionTypeAdapter.deserialize(DefaultTypeAdapters.java:510) at com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:50) ... 26 more
A few secs later the following was added to the Error Log: java.lang.NullPointerException at org.eclipse.mylyn.internal.tasks.ui.editors.TaskEditorActionPart.refreshOperations(TaskEditorActionPart.java:468) at org.eclipse.mylyn.internal.bugzilla.ui.editor.BugzillaTaskEditorPage$ProductSelectionListener.attributeChanged(BugzillaTaskEditorPage.java:476) at org.eclipse.mylyn.tasks.core.data.TaskDataModel$1.run(TaskDataModel.java:91) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.mylyn.tasks.core.data.TaskDataModel.attributeChanged(TaskDataModel.java:85) at org.eclipse.mylyn.tasks.ui.editors.AbstractAttributeEditor.attributeChanged(AbstractAttributeEditor.java:105) at org.eclipse.mylyn.internal.tasks.ui.editors.SingleSelectionAttributeEditor.setValue(SingleSelectionAttributeEditor.java:146) at org.eclipse.mylyn.internal.tasks.ui.editors.SingleSelectionAttributeEditor$1.widgetSelected(SingleSelectionAttributeEditor.java:69) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:240) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:773) at org.eclipse.swt.custom.CCombo.listEvent(CCombo.java:1127) at org.eclipse.swt.custom.CCombo$1.handleEvent(CCombo.java:115) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4165) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2701) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) 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:352) 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:48) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:600) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:624) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:579) at org.eclipse.equinox.launcher.Main.run(Main.java:1433) at org.eclipse.equinox.launcher.Main.main(Main.java:1409)
I'm wondering if this is a duplicate of bug 349023. Tomasz, are you on a recent weekly build of the Gerrit connector?
I was using Mylyn Reviews Connector: Gerrit (Incubation) 0.9.0.I20111214-1125.
Thanks. I couldn't reproduce the problem when opening http://egit.eclipse.org/r/#change,4884. Are you seeing this error consistently?
(In reply to comment #4) > Are you seeing this error consistently? No, I haven't seen it recently.
The review has now moved to https://git.eclipse.org/r/#/c/4884/ . I haven't been able to reproduce the error and hence can't investigate further easily. Please reopen in case you see this again and we'll look into it.
Happened again today. I'm on I20120313-2000 and Gerrit 0.9.0.I20120303-1931. I didn't even activate the Change/Task (https://git.eclipse.org/r/#/c/4995/). IIRC I did refresh it though. The stack trace contains only the following NPE, no sign of the JsonParseException or the NPE from TaskEditor from comment 1. java.lang.NullPointerException at java.util.LinkedHashMap.get(LinkedHashMap.java:324) at com.google.gson.LruCache.getElement(LruCache.java:50) at com.google.gson.FieldAttributes.getAnnotations(FieldAttributes.java:157) at com.google.gson.FieldAttributes.getAnnotation(FieldAttributes.java:145) at com.google.gson.SerializedNameAnnotationInterceptingNamingPolicy.translateName(SerializedNameAnnotationInterceptingNamingPolicy.java:44) at com.google.gson.JsonObjectDeserializationVisitor.getFieldName(JsonObjectDeserializationVisitor.java:92) at com.google.gson.JsonObjectDeserializationVisitor.visitFieldUsingCustomHandler(JsonObjectDeserializationVisitor.java:97) at com.google.gson.ObjectNavigator.navigateClassFields(ObjectNavigator.java:158) at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:131) at com.google.gson.JsonDeserializationVisitor.visitChild(JsonDeserializationVisitor.java:107) at com.google.gson.JsonDeserializationVisitor.visitChildAsObject(JsonDeserializationVisitor.java:95) at com.google.gson.JsonObjectDeserializationVisitor.visitObjectField(JsonObjectDeserializationVisitor.java:61) at com.google.gson.ObjectNavigator.navigateClassFields(ObjectNavigator.java:164) at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:131) at com.google.gson.JsonDeserializationContextDefault.fromJsonObject(JsonDeserializationContextDefault.java:73) at com.google.gson.JsonDeserializationContextDefault.deserialize(JsonDeserializationContextDefault.java:51) at com.google.gson.Gson.fromJson(Gson.java:568) at org.eclipse.mylyn.internal.gerrit.core.client.JSonSupport.parseResponse(JSonSupport.java:207) at org.eclipse.mylyn.internal.gerrit.core.client.GerritService.invoke(GerritService.java:106) at $Proxy10.patchScript(Unknown Source) at org.eclipse.mylyn.internal.gerrit.core.client.GerritClient$7.execute(GerritClient.java:389) at org.eclipse.mylyn.internal.gerrit.core.client.GerritClient.executeOnce(GerritClient.java:877) at org.eclipse.mylyn.internal.gerrit.core.client.GerritClient.execute(GerritClient.java:863) at org.eclipse.mylyn.internal.gerrit.core.client.GerritClient.getPatchScript(GerritClient.java:386) at org.eclipse.mylyn.internal.gerrit.core.client.GerritClient.getPatchSetContent(GerritClient.java:320) at org.eclipse.mylyn.internal.gerrit.ui.editor.GetPatchSetContentJob.run(GetPatchSetContentJob.java:57) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) Except for the ugly exception I cannot see any side effects. The new patch has appeared in the editor.
The problem is caused by a concurrency bug in GSon 1.6 that occurs on the J9 JVM. I have also seen test failures on the Eclipse.org ppc64 slaves with the stack trace but this doesn't occur on Oracle JVMs. We need to consume a newer GSon library but this currently blocked by bug 374729. *** This bug has been marked as a duplicate of bug 369920 ***