This looks very close to the error that you had in February:

  https://lists.apache.org/list.html?user@cayenne.apache.org:2016-2

I just committed some debug code that should help you to identify the entities 
involved:

  
https://github.com/apache/cayenne/commit/fb4db81d2808b2baced1d0a1417ce3e8cdc0435e

So perhaps we can narrow it down to a specific mapping scenario.

Andrus

> On Dec 15, 2016, at 2:23 PM, fael <peter.hv...@jamesinnes.com> wrote:
> 
> Hi Andrus,
> 
> Thanks for this! I have tried this now with limited success in some of the
> problem cases I was experiencing but now experience a completely new
> exception I'm afraid!!
> 
> Stack Trace:
> java.lang.NullPointerException
> at
> org.apache.cayenne.ashwood.AshwoodEntitySorter$DbEntityComparator.compare(AshwoodEntitySorter.java:364)
> at
> org.apache.cayenne.ashwood.AshwoodEntitySorter$DbEntityComparator.compare(AshwoodEntitySorter.java:351)
> at
> org.apache.cayenne.lifecycle.sort.WeightedAshwoodEntitySorter$WeightedDbEntityComparator.compare(WeightedAshwoodEntitySorter.java:99)
> at
> org.apache.cayenne.lifecycle.sort.WeightedAshwoodEntitySorter$WeightedDbEntityComparator.compare(WeightedAshwoodEntitySorter.java:91)
> at java.util.TimSort.countRunAndMakeAscending(TimSort.java:355)
> at java.util.TimSort.sort(TimSort.java:220)
> at java.util.Arrays.sort(Arrays.java:1512)
> at java.util.ArrayList.sort(ArrayList.java:1454)
> at java.util.Collections.sort(Collections.java:175)
> at
> org.apache.cayenne.ashwood.AshwoodEntitySorter.sortDbEntities(AshwoodEntitySorter.java:182)
> at
> org.apache.cayenne.access.DataDomainInsertBucket.appendQueriesInternal(DataDomainInsertBucket.java:56)
> at
> org.apache.cayenne.access.DataDomainSyncBucket.appendQueries(DataDomainSyncBucket.java:78)
> at
> org.apache.cayenne.access.DataDomainFlushAction.preprocess(DataDomainFlushAction.java:189)
> at
> org.apache.cayenne.access.DataDomainFlushAction.flush(DataDomainFlushAction.java:145)
> at org.apache.cayenne.access.DataDomain.onSyncFlush(DataDomain.java:629)
> at org.apache.cayenne.access.DataDomain.onSyncNoFilters(DataDomain.java:598)
> at
> org.apache.cayenne.access.DataDomain$DataDomainSyncFilterChain.onSync(DataDomain.java:746)
> at
> org.apache.cayenne.tx.TransactionFilter$1.perform(TransactionFilter.java:73)
> at
> org.apache.cayenne.tx.TransactionFilter$1.perform(TransactionFilter.java:70)
> at
> org.apache.cayenne.tx.DefaultTransactionManager.performInTransaction(DefaultTransactionManager.java:87)
> at
> org.apache.cayenne.tx.DefaultTransactionManager.performInLocalTransaction(DefaultTransactionManager.java:59)
> at
> org.apache.cayenne.tx.DefaultTransactionManager.performInTransaction(DefaultTransactionManager.java:52)
> at
> org.apache.cayenne.tx.DefaultTransactionManager.performInTransaction(DefaultTransactionManager.java:40)
> at org.apache.cayenne.tx.TransactionFilter.onSync(TransactionFilter.java:70)
> at
> org.apache.cayenne.access.DataDomain$DataDomainSyncFilterChain.onSync(DataDomain.java:746)
> at org.apache.cayenne.access.DataDomain.onSync(DataDomain.java:585)
> at org.apache.cayenne.access.DataContext.flushToParent(DataContext.java:742)
> 
> Thanks!
> Peter
> 
> 
> 
> --
> View this message in context: 
> http://cayenne.195.n3.nabble.com/Erratic-AshwoodEntitySorter-NPE-on-Latest-Snapshot-tp4027453p4028338.html
> Sent from the Cayenne - User mailing list archive at Nabble.com.

Reply via email to