surinder-insonix / datanucleus-appengine

Automatically exported from code.google.com/p/datanucleus-appengine
0 stars 0 forks source link

NullPointerException during makePersistent() #245

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?

I have the following JDO entity relationship:

Project --1:n List--> Group --1:1--> UrlSet --1:n List--> Url

1. I load the Group object.
2. I delete some of the Url objects from the UrlSet's list
3. I call pm.makePersistent() on the Group object.
4. I receive the following NullPointerException:

java.lang.NullPointerException
    at org.datanucleus.store.appengine.DatastorePersistenceHandler.deleteObject(DatastorePersistenceHandler.java:620)
    at org.datanucleus.store.appengine.DatastoreFKListStoreSpecialization.removeAt(DatastoreFKListStoreSpecialization.java:145)
    at org.datanucleus.store.mapped.scostore.FKListStore.removeAt(FKListStore.java:525)
    at org.datanucleus.store.mapped.scostore.AbstractListStore.remove(AbstractListStore.java:318)
    at org.datanucleus.sco.backed.List.remove(List.java:907)
    at org.datanucleus.sco.SCOListIterator.remove(SCOListIterator.java:145)
    at org.datanucleus.sco.SCOUtils.updateListWithListElements(SCOUtils.java:828)
    at org.datanucleus.sco.simple.List.attachCopy(List.java:232)
    at org.datanucleus.store.fieldmanager.AttachFieldManager.storeObjectField(AttachFieldManager.java:205)
    at org.datanucleus.state.AbstractStateManager.providedObjectField(AbstractStateManager.java:1037)
    at model.UrlSet.jdoProvideField(UrlSet.java)
    at model.UrlSet.jdoProvideFields(UrlSet.java)
    at org.datanucleus.state.JDOStateManagerImpl.provideFields(JDOStateManagerImpl.java:2715)
    at org.datanucleus.state.JDOStateManagerImpl.internalAttachCopy(JDOStateManagerImpl.java:4055)
    at org.datanucleus.state.JDOStateManagerImpl.attachCopy(JDOStateManagerImpl.java:3987)
    at org.datanucleus.ObjectManagerImpl.attachObjectCopy(ObjectManagerImpl.java:1778)
    at org.datanucleus.store.fieldmanager.AttachFieldManager.storeObjectField(AttachFieldManager.java:257)
    at org.datanucleus.state.AbstractStateManager.providedObjectField(AbstractStateManager.java:1037)
    at model.Group.jdoProvideField(Group.java)
    at model.Group.jdoProvideFields(Group.java)
    at org.datanucleus.state.JDOStateManagerImpl.provideFields(JDOStateManagerImpl.java:2715)
    at org.datanucleus.state.JDOStateManagerImpl.internalAttachCopy(JDOStateManagerImpl.java:4055)
    at org.datanucleus.state.JDOStateManagerImpl.attachCopy(JDOStateManagerImpl.java:3987)
    at org.datanucleus.ObjectManagerImpl.attachObjectCopy(ObjectManagerImpl.java:1778)
    at org.datanucleus.ObjectManagerImpl.persistObjectInternal(ObjectManagerImpl.java:1260)
    at org.datanucleus.ObjectManagerImpl.persistObject(ObjectManagerImpl.java:1175)
    at org.datanucleus.jdo.JDOPersistenceManager.jdoMakePersistent(JDOPersistenceManager.java:669)
    at org.datanucleus.jdo.JDOPersistenceManager.makePersistent(JDOPersistenceManager.java:694)

What is the expected output? What do you see instead?

The deleted Url objects are deleted when entities are persisted.

What version of the product are you using? On what operating system?
Affected version:
datanucleus-core: 1.1.5
datanucleus-appengine: 1.0.9
Windows XP, GAE-SDK 1.5.2

Original issue reported on code.google.com by testmail...@gmail.com on 25 Aug 2011 at 6:32

GoogleCodeExporter commented 8 years ago
Since you don't provide a testcase you are advised to try SVN trunk of this 
plugin.

Original comment by googleco...@yahoo.co.uk on 26 Aug 2011 at 6:02

GoogleCodeExporter commented 8 years ago

Original comment by googleco...@yahoo.co.uk on 21 Sep 2011 at 3:52

GoogleCodeExporter commented 8 years ago
Not enough information to reproduce was provided. Feel free to reopen if you 
can provide additional info.

Original comment by googleco...@yahoo.co.uk on 21 Jan 2012 at 4:39

GoogleCodeExporter commented 8 years ago
Not enough information to reproduce was provided. Feel free to reopen if you 
can provide additional info.

Original comment by googleco...@yahoo.co.uk on 21 Jan 2012 at 4:39