Blargh!
I’m certain that I’ll eventually be able to track this down, but it’d sure be handy if I could get those last 14 lines of the stack trace…
May 5, 2007 12:37:36 PM com.sun.sgs.impl.kernel.schedule.MasterTaskConsumer run
WARNING: dropping a task that failed with a non-retryable exception: com.sun.sgs.service.TransactionRunner[owner:[ id=“user” context=Aethyria ]]
com.sun.sgs.app.ObjectIOException: ManagedObject was not referenced through a ManagedReference:
-object (class “Aethyria.AePlayerConnection”, Player.USER@f4705fee2e30b39a)
[remainder of class-fields snipped]
at com.sun.sgs.impl.service.data.SerialUtil.check(SerialUtil.java:236)
at com.sun.sgs.impl.service.data.SerialUtil.serialize(SerialUtil.java:89)
at com.sun.sgs.impl.service.data.ManagedReferenceImpl.flush(ManagedReferenceImpl.java:481)
at com.sun.sgs.impl.service.data.ReferenceTable.flushChanges(ReferenceTable.java:102)
at com.sun.sgs.impl.service.data.ManagedReferenceImpl.flushAll(ManagedReferenceImpl.java:460)
at com.sun.sgs.impl.service.data.Context.prepareAndCommit(Context.java:224)
at com.sun.sgs.impl.service.data.DataServiceImpl.prepareAndCommit(DataServiceImpl.java:407)
at com.sun.sgs.impl.service.transaction.TransactionImpl.commit(TransactionImpl.java:236)
at com.sun.sgs.impl.service.transaction.TransactionCoordinatorImpl$TransactionHandleImpl.commit(TransactionCoordinatorImpl.java:66)
at com.sun.sgs.impl.kernel.TaskHandler.runTransactionalTask(TaskHandler.java:144)
at com.sun.sgs.service.TransactionRunner.run(TransactionRunner.java:46)
at com.sun.sgs.impl.kernel.TaskHandler.runTaskAsOwner(TaskHandler.java:101)
at com.sun.sgs.impl.kernel.schedule.MasterTaskConsumer.run(MasterTaskConsumer.java:91)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:613)
Caused by: com.sun.sgs.app.ObjectIOException: ManagedObject was not referenced through a ManagedReference: Player.USER@f4705fee2e30b39a
at com.sun.sgs.impl.service.data.SerialUtil$CheckReferencesObjectOutputStream.replaceObject(SerialUtil.java:139)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1045)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
at java.util.HashMap.writeObject(HashMap.java:985)
at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:917)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1339)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1375)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1347)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
at java.util.HashMap.writeObject(HashMap.java:985)
at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:917)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1339)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1375)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1347)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
at java.util.HashMap.writeObject(HashMap.java:985)
at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:917)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1339)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1375)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1347)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
at com.sun.sgs.impl.service.data.SerialUtil.serialize(SerialUtil.java:85)
… 14 more
I was really hoping to see a reference to some of MY code in here!
Any hints as to how I can get at it, aside from half-splitting and shotgun approaches?
Thanks!