Re: testing M5 - StackOverflowError during context.deleteObject()

From: Andrus Adamchik (andru..bjectstyle.org)
Date: Fri Dec 05 2008 - 09:03:22 EST

  • Next message: Tore Halset: "Re: testing M5 - StackOverflowError during context.deleteObject()"

    Hmm... actually looking closer at the stack, this has nothing to do
    with initialization of descriptors. This is some circular object
    faulting. Still a DataMap would help.

    Andrus

    On Dec 5, 2008, at 4:01 PM, Andrus Adamchik wrote:

    > In theory current ClassDescriptor "compiler" is prone to stack
    > overflows because descriptors often try to access info from other
    > descriptors before they are fully initialized, causing circular
    > descriptor faulting. I saw that often during development, however I
    > thought I addressed all cases. Can you send me a DataMap that caused
    > this stack?
    >
    > Andrus
    >
    >
    > On Dec 5, 2008, at 3:47 PM, Tore Halset wrote:
    >
    >> Hello.
    >>
    >> Sorry for being so slow, but I just now started testing M5 with our
    >> internal junit tests. It did not go that well. a
    >> context.deleteObject() caused a StackOverflowError. Anyone else
    >> seen this?
    >>
    >> Regards,
    >> - Tore.
    >>
    >> org.apache.cayenne.reflect.PropertyException: [v.3.0M5 Nov 29 2008
    >> 21:12:47] Error reading DataObject property: toCellUpdate
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic
    >> .DataObjectBaseProperty.readProperty(DataObjectBaseProperty.java:44)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataContextDeleteAction
    >> .processDeleteRules(DataContextDeleteAction.java:158)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataContextDeleteAction
    >> .deletePersistent(DataContextDeleteAction.java:107)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataContextDeleteAction.performDelete(DataContextDeleteAction.java:
    >> 92)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataContextDeleteAction
    >> .processDeleteRules(DataContextDeleteAction.java:236)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataContextDeleteAction
    >> .deletePersistent(DataContextDeleteAction.java:107)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataContextDeleteAction.performDelete(DataContextDeleteAction.java:
    >> 92)
    >> at
    >> org.apache.cayenne.access.DataContext.deleteObject(DataContext.java:
    >> 960)
    >> Caused by: java.lang.StackOverflowError
    >> at org.apache.log4j.WriterAppender.subAppend(WriterAppender.java:
    >> 302)
    >> at org.apache.log4j.WriterAppender.append(WriterAppender.java:160)
    >> at
    >> org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251)
    >> at
    >> org
    >> .apache
    >> .log4j
    >> .helpers
    >> .AppenderAttachableImpl
    >> .appendLoopOnAppenders(AppenderAttachableImpl.java:66)
    >> at org.apache.log4j.Category.callAppenders(Category.java:206)
    >> at org.apache.log4j.Category.forcedLog(Category.java:391)
    >> at org.apache.log4j.Category.log(Category.java:856)
    >> at org.slf4j.impl.Log4jLoggerAdapter.log(Log4jLoggerAdapter.java:
    >> 509)
    >> at
    >> org
    >> .apache
    >> .commons
    >> .logging.impl.SLF4JLocationAwareLog.info(SLF4JLocationAwareLog.java:
    >> 120)
    >> at
    >> org
    >> .apache.cayenne.access.QueryLogger.logQueryStart(QueryLogger.java:
    >> 473)
    >> at org.apache.cayenne.access.DataNode.performQueries(DataNode.java:
    >> 205)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.runQuery(DataDomainQueryAction.java:
    >> 423)
    >> at org.apache.cayenne.access.DataDomainQueryAction.access
    >> $000(DataDomainQueryAction.java:67)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $2.transform(DataDomainQueryAction.java:396)
    >> at
    >> org
    >> .apache.cayenne.access.DataDomain.runInTransaction(DataDomain.java:
    >> 846)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .runQueryInTransaction(DataDomainQueryAction.java:393)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:119)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:110)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:
    >> 89)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $ObjectConversionStrategy.toObjects(DataDomainQueryAction.java:590)
    >> at org.apache.cayenne.access.DataDomainQueryAction
    >> $SingleObjectConversionStrategy.convert(DataDomainQueryAction.java:
    >> 659)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access
    >> .DataDomainQueryAction
    >> .interceptObjectConversion(DataDomainQueryAction.java:465)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataDomainQueryAction.execute(DataDomainQueryAction.java:127)
    >> at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java:739)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:316)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .util
    >> .ObjectContextQueryAction.execute(ObjectContextQueryAction.java:95)
    >> at org.apache.cayenne.access.DataContext.onQuery(DataContext.java:
    >> 1343)
    >> at
    >> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:
    >> 1332)
    >> at
    >> org.apache.cayenne.access.ToOneFault.doResolveFault(ToOneFault.java:
    >> 81)
    >> at
    >> org.apache.cayenne.access.ToOneFault.resolveFault(ToOneFault.java:54)
    >> at
    >> org
    >> .apache
    >> .cayenne.access.ObjectDiff.getArcSnapshotValue(ObjectDiff.java:144)
    >> at org.apache.cayenne.access.DataRowUtils
    >> $2.visitToOne(DataRowUtils.java:188)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .generic.DataObjectToOneProperty.visit(DataObjectToOneProperty.java:
    >> 87)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor
    >> .visitDeclaredProperties(PersistentDescriptor.java:376)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .PersistentDescriptor.visitProperties(PersistentDescriptor.java:408)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .reflect
    >> .LazyClassDescriptorDecorator
    >> .visitProperties(LazyClassDescriptorDecorator.java:167)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.forceMergeWithSnapshot(DataRowUtils.java:137)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.DataRowUtils.mergeObjectWithSnapshot(DataRowUtils.java:66)
    >> at
    >> org
    >> .apache
    >> .cayenne
    >> .access.ObjectResolver.objectFromDataRow(ObjectResolver.java:230)
    >> ...and so on...
    >>
    >
    >



    This archive was generated by hypermail 2.0.0 : Fri Dec 05 2008 - 09:04:03 EST