[ 
https://issues.apache.org/jira/browse/CAY-1775?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ramiro Aparicio updated CAY-1775:
---------------------------------

    Attachment: cayenne-ProtOnKS.xml
                ProtOnKSMap.map.xml

Current model
                
> "Can't extract a master key. Missing key" depending on startup conditions
> -------------------------------------------------------------------------
>
>                 Key: CAY-1775
>                 URL: https://issues.apache.org/jira/browse/CAY-1775
>             Project: Cayenne
>          Issue Type: Bug
>          Components: Core Library
>    Affects Versions: 3.1B1
>         Environment: Tomcat 6.0.33
> MySQL 5.1.63-0+squeeze1 (Debian)
>            Reporter: Ramiro Aparicio
>         Attachments: cayenne-ProtOnKS.xml, ProtOnKSMap.map.xml
>
>
> I posted this on CAY user list but as no one could help and this seems a real 
> CAY issue I will post it here.
> The exception is:
> [2012-11-27 11:42:04,360] [TP-Processor2] ERROR 
> (ErrorReportService.java:reportError:36)- Exception
> org.apache.cayenne.CayenneRuntimeException: [v.3.1B1 May 28 2012 18:42:43] 
> Can't extract a master key. Missing key (idSessionLog), master ID 
> (<ObjectId:SessionLogApi, TEMP:000001759999E9A1>)
>         at 
> org.apache.cayenne.access.DataDomainSyncBucket$PropagatedValueFactory.create(DataDomainSyncBucket.java:311)
>         at org.apache.cayenne.query.BatchQuery.getValue(BatchQuery.java:195)
>         at 
> org.apache.cayenne.query.InsertBatchQuery.getValue(InsertBatchQuery.java:61)
>         at 
> org.apache.cayenne.access.trans.InsertBatchQueryBuilder.getParameterValues(InsertBatchQueryBuilder.java:81)
>         at 
> org.apache.cayenne.access.jdbc.BatchAction.runAsBatch(BatchAction.java:131)
>         at 
> org.apache.cayenne.access.jdbc.BatchAction.performAction(BatchAction.java:83)
>         at 
> org.apache.cayenne.access.DataNodeQueryAction.runQuery(DataNodeQueryAction.java:87)
>         at 
> org.apache.cayenne.access.DataNode.performQueries(DataNode.java:280)
>         at 
> org.apache.cayenne.access.DataDomainFlushAction.runQueries(DataDomainFlushAction.java:233)
>         at 
> org.apache.cayenne.access.DataDomainFlushAction.flush(DataDomainFlushAction.java:154)
>         at 
> org.apache.cayenne.access.DataDomain.onSyncFlush(DataDomain.java:849)
>         at 
> org.apache.cayenne.access.DataDomain$2.transform(DataDomain.java:813)
>         at 
> org.apache.cayenne.access.DataDomain.runInTransaction(DataDomain.java:873)
>         at 
> org.apache.cayenne.access.DataDomain.onSyncNoFilters(DataDomain.java:810)
>         at 
> org.apache.cayenne.access.DataDomain$DataDomainSyncFilterChain.onSync(DataDomain.java:1025)
>         at org.apache.cayenne.access.DataDomain.onSync(DataDomain.java:781)
>         at 
> org.apache.cayenne.access.DataContext.flushToParent(DataContext.java:817)
>         at 
> org.apache.cayenne.access.DataContext.commitChanges(DataContext.java:756)
>         at 
> com.proton.cayenne.utils.CayenneTemplate.commitChanges(CayenneTemplate.java:48)
> But it just doesn't happen always, it seems to be related to context startup 
> becouse when it happens it happens every time, but when it starts and you get 
> no errors it will not raise the exception ever.
> So I think this should be a problem with model loading or something like 
> that, I will try to attach the model causing the issues but in anyways when 
> the error occurs is when we are creating a SessionLogApi object that inherits 
> (shared table inheritance) from an abstract class SessionLog.
> The same commit has another new object of class Session that is related to 
> SessionLogApi so Session object stores SessionLogApi id.
> Please ask me for any extra information you need to identify the error, I 
> will hapily provide it.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to