You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openjpa.apache.org by "Ravi P Palacherla (JIRA)" <ji...@apache.org> on 2009/12/01 18:34:20 UTC

[jira] Created: (OPENJPA-1407) ClassCastException at DataCacheStoreManager.loadAll

ClassCastException at DataCacheStoreManager.loadAll
---------------------------------------------------

                 Key: OPENJPA-1407
                 URL: https://issues.apache.org/jira/browse/OPENJPA-1407
             Project: OpenJPA
          Issue Type: Bug
          Components: datacache
    Affects Versions: 2.0.0-M3
            Reporter: Ravi P Palacherla
            Assignee: Ravi P Palacherla
             Fix For: 2.0.0-M3


the following exception stack trace is seen in kodo :

    [java] Caused by: java.lang.ClassCastException: com.sample.TestTableId
     [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.loadAll(DataCacheStoreManager.java:461)
     [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.loadAll(DelegatingStoreManager.java:121)
     [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:984)
     [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:1027)
     [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:913)
     [java]  at org.apache.openjpa.kernel.AbstractPCData.toRelationFields(AbstractPCData.java:217)
     [java]  at org.apache.openjpa.kernel.AbstractPCData.toNestedFields(AbstractPCData.java:184)
     [java]  at org.apache.openjpa.kernel.AbstractPCData.toField(AbstractPCData.java:78)
     [java]  at org.apache.openjpa.kernel.PCDataImpl.loadField(PCDataImpl.java:197)
     [java]  at org.apache.openjpa.kernel.PCDataImpl.load(PCDataImpl.java:147)
     [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.initialize(DataCacheStoreManager.java:343)
     [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
     [java]  at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
     [java]  at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
     [java]  at kodo.kernel.KodoBroker.initialize(KodoBroker.java:65)

Reason behind the above exception is because when application identity class is used;
In openJPA, ObjectId is generated by enhancer generated method pcnewObjectIdInstance and it returns wrapped identity class
 like as follows.
     public Object pcNewObjectIdInstance()
     {
          return new ObjectId(ApplicationIdentityIdClass.class, new AppId());
     }
 So, the change was not affected to OpenJPA code.
 However, in OpenJPA derived products like Kodo, pcNewObjectIdInstance returns raw application identity class instance.
 Due to this  "oidList.add((OpenJPAId) sm.getObjectId())" throws classcast exception. 


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (OPENJPA-1407) ClassCastException at DataCacheStoreManager.loadAll

Posted by "David Ezzio (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/OPENJPA-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Ezzio updated OPENJPA-1407:
---------------------------------

    Fix Version/s: 1.1.1

> ClassCastException at DataCacheStoreManager.loadAll
> ---------------------------------------------------
>
>                 Key: OPENJPA-1407
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1407
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: datacache
>    Affects Versions: 1.1.1
>            Reporter: Ravi P Palacherla
>            Assignee: Ravi P Palacherla
>             Fix For: 1.1.1
>
>         Attachments: OPENJPA-1407-1.1.x.patch
>
>
> the following exception stack trace is seen in kodo :
>     [java] Caused by: java.lang.ClassCastException: com.sample.TestTableId
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.loadAll(DataCacheStoreManager.java:461)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.loadAll(DelegatingStoreManager.java:121)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:984)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:1027)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:913)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toRelationFields(AbstractPCData.java:217)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toNestedFields(AbstractPCData.java:184)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toField(AbstractPCData.java:78)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.loadField(PCDataImpl.java:197)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.load(PCDataImpl.java:147)
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.initialize(DataCacheStoreManager.java:343)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
>      [java]  at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
>      [java]  at kodo.kernel.KodoBroker.initialize(KodoBroker.java:65)
> Reason behind the above exception is because when application identity class is used;
> In openJPA, ObjectId is generated by enhancer generated method pcnewObjectIdInstance and it returns wrapped identity class
>  like as follows.
>      public Object pcNewObjectIdInstance()
>      {
>           return new ObjectId(ApplicationIdentityIdClass.class, new AppId());
>      }
>  So, the change was not affected to OpenJPA code.
>  However, in OpenJPA derived products like Kodo, pcNewObjectIdInstance returns raw application identity class instance.
>  Due to this  "oidList.add((OpenJPAId) sm.getObjectId())" throws classcast exception. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (OPENJPA-1407) ClassCastException at DataCacheStoreManager.loadAll

Posted by "Ravi P Palacherla (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/OPENJPA-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ravi P Palacherla updated OPENJPA-1407:
---------------------------------------

    Fix Version/s:     (was: 2.0.0-M3)

> ClassCastException at DataCacheStoreManager.loadAll
> ---------------------------------------------------
>
>                 Key: OPENJPA-1407
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1407
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: datacache
>    Affects Versions: 2.0.0-M3
>            Reporter: Ravi P Palacherla
>            Assignee: Ravi P Palacherla
>         Attachments: OPENJPA-1407-trunk.patch
>
>
> the following exception stack trace is seen in kodo :
>     [java] Caused by: java.lang.ClassCastException: com.sample.TestTableId
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.loadAll(DataCacheStoreManager.java:461)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.loadAll(DelegatingStoreManager.java:121)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:984)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:1027)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:913)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toRelationFields(AbstractPCData.java:217)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toNestedFields(AbstractPCData.java:184)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toField(AbstractPCData.java:78)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.loadField(PCDataImpl.java:197)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.load(PCDataImpl.java:147)
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.initialize(DataCacheStoreManager.java:343)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
>      [java]  at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
>      [java]  at kodo.kernel.KodoBroker.initialize(KodoBroker.java:65)
> Reason behind the above exception is because when application identity class is used;
> In openJPA, ObjectId is generated by enhancer generated method pcnewObjectIdInstance and it returns wrapped identity class
>  like as follows.
>      public Object pcNewObjectIdInstance()
>      {
>           return new ObjectId(ApplicationIdentityIdClass.class, new AppId());
>      }
>  So, the change was not affected to OpenJPA code.
>  However, in OpenJPA derived products like Kodo, pcNewObjectIdInstance returns raw application identity class instance.
>  Due to this  "oidList.add((OpenJPAId) sm.getObjectId())" throws classcast exception. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (OPENJPA-1407) ClassCastException at DataCacheStoreManager.loadAll

Posted by "Ravi P Palacherla (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/OPENJPA-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ravi P Palacherla updated OPENJPA-1407:
---------------------------------------

    Attachment:     (was: OPENJPA-1407-trunk.patch)

> ClassCastException at DataCacheStoreManager.loadAll
> ---------------------------------------------------
>
>                 Key: OPENJPA-1407
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1407
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: datacache
>    Affects Versions: 2.0.0-M3
>            Reporter: Ravi P Palacherla
>            Assignee: Ravi P Palacherla
>             Fix For: 2.0.0-M3
>
>         Attachments: OPENJPA-1407-trunk.patch
>
>
> the following exception stack trace is seen in kodo :
>     [java] Caused by: java.lang.ClassCastException: com.sample.TestTableId
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.loadAll(DataCacheStoreManager.java:461)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.loadAll(DelegatingStoreManager.java:121)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:984)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:1027)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:913)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toRelationFields(AbstractPCData.java:217)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toNestedFields(AbstractPCData.java:184)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toField(AbstractPCData.java:78)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.loadField(PCDataImpl.java:197)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.load(PCDataImpl.java:147)
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.initialize(DataCacheStoreManager.java:343)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
>      [java]  at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
>      [java]  at kodo.kernel.KodoBroker.initialize(KodoBroker.java:65)
> Reason behind the above exception is because when application identity class is used;
> In openJPA, ObjectId is generated by enhancer generated method pcnewObjectIdInstance and it returns wrapped identity class
>  like as follows.
>      public Object pcNewObjectIdInstance()
>      {
>           return new ObjectId(ApplicationIdentityIdClass.class, new AppId());
>      }
>  So, the change was not affected to OpenJPA code.
>  However, in OpenJPA derived products like Kodo, pcNewObjectIdInstance returns raw application identity class instance.
>  Due to this  "oidList.add((OpenJPAId) sm.getObjectId())" throws classcast exception. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (OPENJPA-1407) ClassCastException at DataCacheStoreManager.loadAll

Posted by "Ravi P Palacherla (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/OPENJPA-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ravi P Palacherla updated OPENJPA-1407:
---------------------------------------

    Attachment:     (was: OPENJPA-1407-trunk.patch)

> ClassCastException at DataCacheStoreManager.loadAll
> ---------------------------------------------------
>
>                 Key: OPENJPA-1407
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1407
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: datacache
>    Affects Versions: 2.0.0-M3
>            Reporter: Ravi P Palacherla
>            Assignee: Ravi P Palacherla
>         Attachments: OPENJPA-1407-1.1.x.patch
>
>
> the following exception stack trace is seen in kodo :
>     [java] Caused by: java.lang.ClassCastException: com.sample.TestTableId
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.loadAll(DataCacheStoreManager.java:461)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.loadAll(DelegatingStoreManager.java:121)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:984)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:1027)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:913)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toRelationFields(AbstractPCData.java:217)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toNestedFields(AbstractPCData.java:184)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toField(AbstractPCData.java:78)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.loadField(PCDataImpl.java:197)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.load(PCDataImpl.java:147)
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.initialize(DataCacheStoreManager.java:343)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
>      [java]  at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
>      [java]  at kodo.kernel.KodoBroker.initialize(KodoBroker.java:65)
> Reason behind the above exception is because when application identity class is used;
> In openJPA, ObjectId is generated by enhancer generated method pcnewObjectIdInstance and it returns wrapped identity class
>  like as follows.
>      public Object pcNewObjectIdInstance()
>      {
>           return new ObjectId(ApplicationIdentityIdClass.class, new AppId());
>      }
>  So, the change was not affected to OpenJPA code.
>  However, in OpenJPA derived products like Kodo, pcNewObjectIdInstance returns raw application identity class instance.
>  Due to this  "oidList.add((OpenJPAId) sm.getObjectId())" throws classcast exception. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (OPENJPA-1407) ClassCastException at DataCacheStoreManager.loadAll

Posted by "Ravi P Palacherla (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/OPENJPA-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12784301#action_12784301 ] 

Ravi P Palacherla commented on OPENJPA-1407:
--------------------------------------------

http://n2.nabble.com/Need-process-help-for-a-code-change-that-does-not-have-an-openJPA-testcase-td4092236.html

> ClassCastException at DataCacheStoreManager.loadAll
> ---------------------------------------------------
>
>                 Key: OPENJPA-1407
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1407
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: datacache
>    Affects Versions: 2.0.0-M3
>            Reporter: Ravi P Palacherla
>            Assignee: Ravi P Palacherla
>             Fix For: 2.0.0-M3
>
>
> the following exception stack trace is seen in kodo :
>     [java] Caused by: java.lang.ClassCastException: com.sample.TestTableId
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.loadAll(DataCacheStoreManager.java:461)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.loadAll(DelegatingStoreManager.java:121)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:984)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:1027)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:913)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toRelationFields(AbstractPCData.java:217)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toNestedFields(AbstractPCData.java:184)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toField(AbstractPCData.java:78)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.loadField(PCDataImpl.java:197)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.load(PCDataImpl.java:147)
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.initialize(DataCacheStoreManager.java:343)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
>      [java]  at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
>      [java]  at kodo.kernel.KodoBroker.initialize(KodoBroker.java:65)
> Reason behind the above exception is because when application identity class is used;
> In openJPA, ObjectId is generated by enhancer generated method pcnewObjectIdInstance and it returns wrapped identity class
>  like as follows.
>      public Object pcNewObjectIdInstance()
>      {
>           return new ObjectId(ApplicationIdentityIdClass.class, new AppId());
>      }
>  So, the change was not affected to OpenJPA code.
>  However, in OpenJPA derived products like Kodo, pcNewObjectIdInstance returns raw application identity class instance.
>  Due to this  "oidList.add((OpenJPAId) sm.getObjectId())" throws classcast exception. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (OPENJPA-1407) ClassCastException at DataCacheStoreManager.loadAll

Posted by "Ravi P Palacherla (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/OPENJPA-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ravi P Palacherla updated OPENJPA-1407:
---------------------------------------

    Patch Info:   (was: [Patch Available])

> ClassCastException at DataCacheStoreManager.loadAll
> ---------------------------------------------------
>
>                 Key: OPENJPA-1407
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1407
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: datacache
>    Affects Versions: 2.0.0-M3
>            Reporter: Ravi P Palacherla
>            Assignee: Ravi P Palacherla
>             Fix For: 2.0.0-M3
>
>
> the following exception stack trace is seen in kodo :
>     [java] Caused by: java.lang.ClassCastException: com.sample.TestTableId
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.loadAll(DataCacheStoreManager.java:461)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.loadAll(DelegatingStoreManager.java:121)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:984)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:1027)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:913)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toRelationFields(AbstractPCData.java:217)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toNestedFields(AbstractPCData.java:184)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toField(AbstractPCData.java:78)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.loadField(PCDataImpl.java:197)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.load(PCDataImpl.java:147)
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.initialize(DataCacheStoreManager.java:343)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
>      [java]  at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
>      [java]  at kodo.kernel.KodoBroker.initialize(KodoBroker.java:65)
> Reason behind the above exception is because when application identity class is used;
> In openJPA, ObjectId is generated by enhancer generated method pcnewObjectIdInstance and it returns wrapped identity class
>  like as follows.
>      public Object pcNewObjectIdInstance()
>      {
>           return new ObjectId(ApplicationIdentityIdClass.class, new AppId());
>      }
>  So, the change was not affected to OpenJPA code.
>  However, in OpenJPA derived products like Kodo, pcNewObjectIdInstance returns raw application identity class instance.
>  Due to this  "oidList.add((OpenJPAId) sm.getObjectId())" throws classcast exception. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (OPENJPA-1407) ClassCastException at DataCacheStoreManager.loadAll

Posted by "Ravi P Palacherla (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/OPENJPA-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ravi P Palacherla updated OPENJPA-1407:
---------------------------------------

    Attachment: OPENJPA-1407-1.1.x.patch

Attached PATCH along with testcase.

> ClassCastException at DataCacheStoreManager.loadAll
> ---------------------------------------------------
>
>                 Key: OPENJPA-1407
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1407
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: datacache
>    Affects Versions: 2.0.0-M3
>            Reporter: Ravi P Palacherla
>            Assignee: Ravi P Palacherla
>         Attachments: OPENJPA-1407-1.1.x.patch
>
>
> the following exception stack trace is seen in kodo :
>     [java] Caused by: java.lang.ClassCastException: com.sample.TestTableId
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.loadAll(DataCacheStoreManager.java:461)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.loadAll(DelegatingStoreManager.java:121)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:984)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:1027)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:913)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toRelationFields(AbstractPCData.java:217)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toNestedFields(AbstractPCData.java:184)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toField(AbstractPCData.java:78)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.loadField(PCDataImpl.java:197)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.load(PCDataImpl.java:147)
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.initialize(DataCacheStoreManager.java:343)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
>      [java]  at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
>      [java]  at kodo.kernel.KodoBroker.initialize(KodoBroker.java:65)
> Reason behind the above exception is because when application identity class is used;
> In openJPA, ObjectId is generated by enhancer generated method pcnewObjectIdInstance and it returns wrapped identity class
>  like as follows.
>      public Object pcNewObjectIdInstance()
>      {
>           return new ObjectId(ApplicationIdentityIdClass.class, new AppId());
>      }
>  So, the change was not affected to OpenJPA code.
>  However, in OpenJPA derived products like Kodo, pcNewObjectIdInstance returns raw application identity class instance.
>  Due to this  "oidList.add((OpenJPAId) sm.getObjectId())" throws classcast exception. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (OPENJPA-1407) ClassCastException at DataCacheStoreManager.loadAll

Posted by "Ravi P Palacherla (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/OPENJPA-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ravi P Palacherla updated OPENJPA-1407:
---------------------------------------

    Attachment: OPENJPA-1407-trunk.patch

Added proper comments in the patch.

> ClassCastException at DataCacheStoreManager.loadAll
> ---------------------------------------------------
>
>                 Key: OPENJPA-1407
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1407
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: datacache
>    Affects Versions: 2.0.0-M3
>            Reporter: Ravi P Palacherla
>            Assignee: Ravi P Palacherla
>             Fix For: 2.0.0-M3
>
>         Attachments: OPENJPA-1407-trunk.patch
>
>
> the following exception stack trace is seen in kodo :
>     [java] Caused by: java.lang.ClassCastException: com.sample.TestTableId
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.loadAll(DataCacheStoreManager.java:461)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.loadAll(DelegatingStoreManager.java:121)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:984)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:1027)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:913)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toRelationFields(AbstractPCData.java:217)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toNestedFields(AbstractPCData.java:184)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toField(AbstractPCData.java:78)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.loadField(PCDataImpl.java:197)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.load(PCDataImpl.java:147)
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.initialize(DataCacheStoreManager.java:343)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
>      [java]  at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
>      [java]  at kodo.kernel.KodoBroker.initialize(KodoBroker.java:65)
> Reason behind the above exception is because when application identity class is used;
> In openJPA, ObjectId is generated by enhancer generated method pcnewObjectIdInstance and it returns wrapped identity class
>  like as follows.
>      public Object pcNewObjectIdInstance()
>      {
>           return new ObjectId(ApplicationIdentityIdClass.class, new AppId());
>      }
>  So, the change was not affected to OpenJPA code.
>  However, in OpenJPA derived products like Kodo, pcNewObjectIdInstance returns raw application identity class instance.
>  Due to this  "oidList.add((OpenJPAId) sm.getObjectId())" throws classcast exception. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (OPENJPA-1407) ClassCastException at DataCacheStoreManager.loadAll

Posted by "Ravi P Palacherla (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/OPENJPA-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ravi P Palacherla updated OPENJPA-1407:
---------------------------------------

    Patch Info: [Patch Available]

> ClassCastException at DataCacheStoreManager.loadAll
> ---------------------------------------------------
>
>                 Key: OPENJPA-1407
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1407
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: datacache
>    Affects Versions: 2.0.0-M3
>            Reporter: Ravi P Palacherla
>            Assignee: Ravi P Palacherla
>             Fix For: 2.0.0-M3
>
>         Attachments: OPENJPA-1407-trunk.patch
>
>
> the following exception stack trace is seen in kodo :
>     [java] Caused by: java.lang.ClassCastException: com.sample.TestTableId
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.loadAll(DataCacheStoreManager.java:461)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.loadAll(DelegatingStoreManager.java:121)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:984)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:1027)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:913)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toRelationFields(AbstractPCData.java:217)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toNestedFields(AbstractPCData.java:184)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toField(AbstractPCData.java:78)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.loadField(PCDataImpl.java:197)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.load(PCDataImpl.java:147)
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.initialize(DataCacheStoreManager.java:343)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
>      [java]  at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
>      [java]  at kodo.kernel.KodoBroker.initialize(KodoBroker.java:65)
> Reason behind the above exception is because when application identity class is used;
> In openJPA, ObjectId is generated by enhancer generated method pcnewObjectIdInstance and it returns wrapped identity class
>  like as follows.
>      public Object pcNewObjectIdInstance()
>      {
>           return new ObjectId(ApplicationIdentityIdClass.class, new AppId());
>      }
>  So, the change was not affected to OpenJPA code.
>  However, in OpenJPA derived products like Kodo, pcNewObjectIdInstance returns raw application identity class instance.
>  Due to this  "oidList.add((OpenJPAId) sm.getObjectId())" throws classcast exception. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (OPENJPA-1407) ClassCastException at DataCacheStoreManager.loadAll

Posted by "Ravi P Palacherla (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/OPENJPA-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ravi P Palacherla updated OPENJPA-1407:
---------------------------------------

    Affects Version/s:     (was: 2.0.0-M3)
                       1.1.1

> ClassCastException at DataCacheStoreManager.loadAll
> ---------------------------------------------------
>
>                 Key: OPENJPA-1407
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1407
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: datacache
>    Affects Versions: 1.1.1
>            Reporter: Ravi P Palacherla
>            Assignee: Ravi P Palacherla
>         Attachments: OPENJPA-1407-1.1.x.patch
>
>
> the following exception stack trace is seen in kodo :
>     [java] Caused by: java.lang.ClassCastException: com.sample.TestTableId
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.loadAll(DataCacheStoreManager.java:461)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.loadAll(DelegatingStoreManager.java:121)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:984)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:1027)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:913)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toRelationFields(AbstractPCData.java:217)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toNestedFields(AbstractPCData.java:184)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toField(AbstractPCData.java:78)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.loadField(PCDataImpl.java:197)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.load(PCDataImpl.java:147)
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.initialize(DataCacheStoreManager.java:343)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
>      [java]  at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
>      [java]  at kodo.kernel.KodoBroker.initialize(KodoBroker.java:65)
> Reason behind the above exception is because when application identity class is used;
> In openJPA, ObjectId is generated by enhancer generated method pcnewObjectIdInstance and it returns wrapped identity class
>  like as follows.
>      public Object pcNewObjectIdInstance()
>      {
>           return new ObjectId(ApplicationIdentityIdClass.class, new AppId());
>      }
>  So, the change was not affected to OpenJPA code.
>  However, in OpenJPA derived products like Kodo, pcNewObjectIdInstance returns raw application identity class instance.
>  Due to this  "oidList.add((OpenJPAId) sm.getObjectId())" throws classcast exception. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (OPENJPA-1407) ClassCastException at DataCacheStoreManager.loadAll

Posted by "Ravi P Palacherla (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/OPENJPA-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ravi P Palacherla updated OPENJPA-1407:
---------------------------------------

    Attachment: OPENJPA-1407-trunk.patch

> ClassCastException at DataCacheStoreManager.loadAll
> ---------------------------------------------------
>
>                 Key: OPENJPA-1407
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1407
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: datacache
>    Affects Versions: 2.0.0-M3
>            Reporter: Ravi P Palacherla
>            Assignee: Ravi P Palacherla
>             Fix For: 2.0.0-M3
>
>         Attachments: OPENJPA-1407-trunk.patch
>
>
> the following exception stack trace is seen in kodo :
>     [java] Caused by: java.lang.ClassCastException: com.sample.TestTableId
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.loadAll(DataCacheStoreManager.java:461)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.loadAll(DelegatingStoreManager.java:121)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:984)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:1027)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:913)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toRelationFields(AbstractPCData.java:217)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toNestedFields(AbstractPCData.java:184)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toField(AbstractPCData.java:78)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.loadField(PCDataImpl.java:197)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.load(PCDataImpl.java:147)
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.initialize(DataCacheStoreManager.java:343)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
>      [java]  at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
>      [java]  at kodo.kernel.KodoBroker.initialize(KodoBroker.java:65)
> Reason behind the above exception is because when application identity class is used;
> In openJPA, ObjectId is generated by enhancer generated method pcnewObjectIdInstance and it returns wrapped identity class
>  like as follows.
>      public Object pcNewObjectIdInstance()
>      {
>           return new ObjectId(ApplicationIdentityIdClass.class, new AppId());
>      }
>  So, the change was not affected to OpenJPA code.
>  However, in OpenJPA derived products like Kodo, pcNewObjectIdInstance returns raw application identity class instance.
>  Due to this  "oidList.add((OpenJPAId) sm.getObjectId())" throws classcast exception. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (OPENJPA-1407) ClassCastException at DataCacheStoreManager.loadAll

Posted by "David Ezzio (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/OPENJPA-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12791472#action_12791472 ] 

David Ezzio commented on OPENJPA-1407:
--------------------------------------

Applied Ravi's patch to branch 1.1.x, and added numerous comments at revision 891341

> ClassCastException at DataCacheStoreManager.loadAll
> ---------------------------------------------------
>
>                 Key: OPENJPA-1407
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1407
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: datacache
>    Affects Versions: 1.1.1
>            Reporter: Ravi P Palacherla
>            Assignee: Ravi P Palacherla
>         Attachments: OPENJPA-1407-1.1.x.patch
>
>
> the following exception stack trace is seen in kodo :
>     [java] Caused by: java.lang.ClassCastException: com.sample.TestTableId
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.loadAll(DataCacheStoreManager.java:461)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.loadAll(DelegatingStoreManager.java:121)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:984)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:1027)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:913)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toRelationFields(AbstractPCData.java:217)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toNestedFields(AbstractPCData.java:184)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toField(AbstractPCData.java:78)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.loadField(PCDataImpl.java:197)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.load(PCDataImpl.java:147)
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.initialize(DataCacheStoreManager.java:343)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
>      [java]  at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
>      [java]  at kodo.kernel.KodoBroker.initialize(KodoBroker.java:65)
> Reason behind the above exception is because when application identity class is used;
> In openJPA, ObjectId is generated by enhancer generated method pcnewObjectIdInstance and it returns wrapped identity class
>  like as follows.
>      public Object pcNewObjectIdInstance()
>      {
>           return new ObjectId(ApplicationIdentityIdClass.class, new AppId());
>      }
>  So, the change was not affected to OpenJPA code.
>  However, in OpenJPA derived products like Kodo, pcNewObjectIdInstance returns raw application identity class instance.
>  Due to this  "oidList.add((OpenJPAId) sm.getObjectId())" throws classcast exception. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (OPENJPA-1407) ClassCastException at DataCacheStoreManager.loadAll

Posted by "David Ezzio (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/OPENJPA-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Ezzio resolved OPENJPA-1407.
----------------------------------

    Resolution: Fixed

As Ravi mentioned, it is not clear that this patch is required or suitable for other branches.  The actual change is minor, and as the referenced thread notes, there are several ways that the issue might be addressed if there were a general need.  

> ClassCastException at DataCacheStoreManager.loadAll
> ---------------------------------------------------
>
>                 Key: OPENJPA-1407
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1407
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: datacache
>    Affects Versions: 1.1.1
>            Reporter: Ravi P Palacherla
>            Assignee: Ravi P Palacherla
>             Fix For: 1.1.1
>
>         Attachments: OPENJPA-1407-1.1.x.patch
>
>
> the following exception stack trace is seen in kodo :
>     [java] Caused by: java.lang.ClassCastException: com.sample.TestTableId
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.loadAll(DataCacheStoreManager.java:461)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.loadAll(DelegatingStoreManager.java:121)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:984)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:1027)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:913)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toRelationFields(AbstractPCData.java:217)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toNestedFields(AbstractPCData.java:184)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toField(AbstractPCData.java:78)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.loadField(PCDataImpl.java:197)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.load(PCDataImpl.java:147)
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.initialize(DataCacheStoreManager.java:343)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
>      [java]  at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
>      [java]  at kodo.kernel.KodoBroker.initialize(KodoBroker.java:65)
> Reason behind the above exception is because when application identity class is used;
> In openJPA, ObjectId is generated by enhancer generated method pcnewObjectIdInstance and it returns wrapped identity class
>  like as follows.
>      public Object pcNewObjectIdInstance()
>      {
>           return new ObjectId(ApplicationIdentityIdClass.class, new AppId());
>      }
>  So, the change was not affected to OpenJPA code.
>  However, in OpenJPA derived products like Kodo, pcNewObjectIdInstance returns raw application identity class instance.
>  Due to this  "oidList.add((OpenJPAId) sm.getObjectId())" throws classcast exception. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (OPENJPA-1407) ClassCastException at DataCacheStoreManager.loadAll

Posted by "Ravi P Palacherla (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/OPENJPA-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12790990#action_12790990 ] 

Ravi P Palacherla commented on OPENJPA-1407:
--------------------------------------------

Right now only Kodo has issues with current code. Kodo uses 1.1.x branch and not the trunk.
As there are no other persistence providers that has this issue other than kodo, I think it is safe to ignore this patch on trunk.

Regards,
Ravi.

> ClassCastException at DataCacheStoreManager.loadAll
> ---------------------------------------------------
>
>                 Key: OPENJPA-1407
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1407
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: datacache
>    Affects Versions: 1.1.1
>            Reporter: Ravi P Palacherla
>            Assignee: Ravi P Palacherla
>         Attachments: OPENJPA-1407-1.1.x.patch
>
>
> the following exception stack trace is seen in kodo :
>     [java] Caused by: java.lang.ClassCastException: com.sample.TestTableId
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.loadAll(DataCacheStoreManager.java:461)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.loadAll(DelegatingStoreManager.java:121)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:984)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:1027)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.findAll(BrokerImpl.java:913)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toRelationFields(AbstractPCData.java:217)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toNestedFields(AbstractPCData.java:184)
>      [java]  at org.apache.openjpa.kernel.AbstractPCData.toField(AbstractPCData.java:78)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.loadField(PCDataImpl.java:197)
>      [java]  at org.apache.openjpa.kernel.PCDataImpl.load(PCDataImpl.java:147)
>      [java]  at org.apache.openjpa.datacache.DataCacheStoreManager.initialize(DataCacheStoreManager.java:343)
>      [java]  at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
>      [java]  at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
>      [java]  at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
>      [java]  at kodo.kernel.KodoBroker.initialize(KodoBroker.java:65)
> Reason behind the above exception is because when application identity class is used;
> In openJPA, ObjectId is generated by enhancer generated method pcnewObjectIdInstance and it returns wrapped identity class
>  like as follows.
>      public Object pcNewObjectIdInstance()
>      {
>           return new ObjectId(ApplicationIdentityIdClass.class, new AppId());
>      }
>  So, the change was not affected to OpenJPA code.
>  However, in OpenJPA derived products like Kodo, pcNewObjectIdInstance returns raw application identity class instance.
>  Due to this  "oidList.add((OpenJPAId) sm.getObjectId())" throws classcast exception. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.