Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kryo trouble #286

Closed
westnordost opened this issue Jun 2, 2017 · 3 comments
Closed

Kryo trouble #286

westnordost opened this issue Jun 2, 2017 · 3 comments
Assignees
Labels
blocked blocked by another issue bug

Comments

@westnordost
Copy link
Member

Device: google marlin, Android O
Thread: main
Stack trace:
java.lang.RuntimeException: Unable to start activity ComponentInfo{de.westnordost.streetcomplete/de.westnordost.streetcomplete.MainActivity}: com.esotericsoftware.kryo.KryoException: org.objenesis.ObjenesisException: java.lang.reflect.InvocationTargetException
Serialization trace:
months (de.westnordost.streetcomplete.quests.opening_hours.OpeningMonths)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2815)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2890)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1591)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6535)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
Caused by: com.esotericsoftware.kryo.KryoException: org.objenesis.ObjenesisException: java.lang.reflect.InvocationTargetException
Serialization trace:
months (de.westnordost.streetcomplete.quests.opening_hours.OpeningMonths)
at com.esotericsoftware.kryo.serializers.ObjectField.read(ObjectField.java:144)
at com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:540)
at com.esotericsoftware.kryo.Kryo.readClassAndObject(Kryo.java:813)
at com.esotericsoftware.kryo.serializers.CollectionSerializer.read(CollectionSerializer.java:134)
at com.esotericsoftware.kryo.serializers.CollectionSerializer.read(CollectionSerializer.java:40)
at com.esotericsoftware.kryo.Kryo.readObject(Kryo.java:709)
at de.westnordost.streetcomplete.util.KryoSerializer.toObject(KryoSerializer.java:88)
at de.westnordost.streetcomplete.quests.opening_hours.AddOpeningHoursForm.onCreateView(AddOpeningHoursForm.java:58)
at android.app.Fragment.performCreateView(Fragment.java:2604)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1262)
at android.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1524)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1586)
at android.app.FragmentManagerImpl.dispatchMoveToState(FragmentManager.java:3003)
at android.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:2959)
at android.app.FragmentController.dispatchActivityCreated(FragmentController.java:178)
at android.app.Activity.performCreateCommon(Activity.java:6948)
at android.app.Activity.performCreate(Activity.java:6956)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1213)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2768)
... 9 more
Caused by: org.objenesis.ObjenesisException: java.lang.reflect.InvocationTargetException
at org.objenesis.instantiator.android.Android18Instantiator.findConstructorIdForJavaLangObjectConstructor(Android18Instantiator.java:84)
at org.objenesis.instantiator.android.Android18Instantiator.(Android18Instantiator.java:39)
at org.objenesis.strategy.StdInstantiatorStrategy.newInstantiatorOf(StdInstantiatorStrategy.java:96)
at com.esotericsoftware.kryo.Kryo$DefaultInstantiatorStrategy.newInstantiatorOf(Kryo.java:1313)
at com.esotericsoftware.kryo.Kryo.newInstantiator(Kryo.java:1127)
at com.esotericsoftware.kryo.Kryo.newInstance(Kryo.java:1136)
at com.esotericsoftware.kryo.serializers.FieldSerializer.create(FieldSerializer.java:559)
at com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:535)
at com.esotericsoftware.kryo.Kryo.readObject(Kryo.java:731)
at com.esotericsoftware.kryo.serializers.ObjectField.read(ObjectField.java:125)
... 27 more
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invoke(Native Method)
at org.objenesis.instantiator.android.Android18Instantiator.findConstructorIdForJavaLangObjectConstructor(Android18Instantiator.java:72)
... 36 more
Caused by: java.lang.UnsupportedOperationException: ObjectStreamClass.getConstructorId(Class<?>) is not supported on SDK 25
at java.io.ObjectStreamClass.getConstructorId(ObjectStreamClass.java:2294)
... 38 more

@westnordost westnordost added the bug label Jun 2, 2017
@westnordost westnordost self-assigned this Jun 2, 2017
@westnordost
Copy link
Member Author

Device: google marlin, Android O
Thread: QuestControllerThread
Stack trace:
org.objenesis.ObjenesisException: java.lang.reflect.InvocationTargetException
at org.objenesis.instantiator.android.Android18Instantiator.findConstructorIdForJavaLangObjectConstructor(Android18Instantiator.java:84)
at org.objenesis.instantiator.android.Android18Instantiator.(Android18Instantiator.java:39)
at org.objenesis.strategy.StdInstantiatorStrategy.newInstantiatorOf(StdInstantiatorStrategy.java:96)
at com.esotericsoftware.kryo.Kryo$DefaultInstantiatorStrategy.newInstantiatorOf(Kryo.java:1313)
at com.esotericsoftware.kryo.Kryo.newInstantiator(Kryo.java:1127)
at com.esotericsoftware.kryo.Kryo.newInstance(Kryo.java:1136)
at com.esotericsoftware.kryo.serializers.FieldSerializer.create(FieldSerializer.java:559)
at com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:535)
at com.esotericsoftware.kryo.Kryo.readClassAndObject(Kryo.java:813)
at com.esotericsoftware.kryo.serializers.CollectionSerializer.read(CollectionSerializer.java:134)
at com.esotericsoftware.kryo.serializers.CollectionSerializer.read(CollectionSerializer.java:40)
at com.esotericsoftware.kryo.Kryo.readClassAndObject(Kryo.java:813)
at com.esotericsoftware.kryo.serializers.CollectionSerializer.read(CollectionSerializer.java:134)
at com.esotericsoftware.kryo.serializers.CollectionSerializer.read(CollectionSerializer.java:40)
at com.esotericsoftware.kryo.Kryo.readObject(Kryo.java:709)
at de.westnordost.streetcomplete.util.KryoSerializer.toObject(KryoSerializer.java:88)
at de.westnordost.streetcomplete.data.osm.persist.ElementGeometryDao.createObjectFrom(ElementGeometryDao.java:134)
at de.westnordost.streetcomplete.data.osm.persist.OsmQuestDao.createObjectFrom(OsmQuestDao.java:211)
at de.westnordost.streetcomplete.data.osm.persist.OsmQuestDao.createObjectFrom(OsmQuestDao.java:26)
at de.westnordost.streetcomplete.data.AQuestDao.get(AQuestDao.java:35)
at de.westnordost.streetcomplete.data.QuestController$5.run(QuestController.java:229)
at android.os.Handler.handleCallback(Handler.java:769)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:164)
at android.os.HandlerThread.run(HandlerThread.java:65)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invoke(Native Method)
at org.objenesis.instantiator.android.Android18Instantiator.findConstructorIdForJavaLangObjectConstructor(Android18Instantiator.java:72)
... 24 more
Caused by: java.lang.UnsupportedOperationException: ObjectStreamClass.getConstructorId(Class<?>) is not supported on SDK 25
at java.io.ObjectStreamClass.getConstructorId(ObjectStreamClass.java:2294)
... 26 more

@westnordost
Copy link
Member Author

Happens very often! 33 reports this week.

@westnordost
Copy link
Member Author

Objenisis on which Kryo depends uses the method ObjectStreamClass.getConstructorId which has now been removed for Android SDK 25. When this is getting a workaround in objenesis and the new version is released, I gotta open a ticket at Kryo so that they update the dependency.

easymock/objenesis#52

@westnordost westnordost added the blocked blocked by another issue label Jun 4, 2017
westnordost added a commit that referenced this issue Jun 10, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked blocked by another issue bug
Projects
None yet
Development

No branches or pull requests

1 participant