Hi,

Are you manually setting the version field in your application?

-Patrick

On 9/17/07, Gene Woo <[EMAIL PROTECTED]> wrote:
> Hi,
>
> I got the following error messages from application server. I am very
> confused on that. Because this is an isolated entity without any
> relationship to the rest of entities.
>
> <4|true|0.9.7> org.apache.openjpa.persistence.InvalidStateException: Attempt
> to set column "event.update_version" to two different values: (class
> java.lang.Integer)"2", (class java.lang.Integer)"3" This can occur when you
> fail to set both sides of a two-sided relation between objects, or when you
> map different fields to the same column, but you do not keep the values of
> these fields in synch.
>
> Note: This update_version is a mapped-super class's property:     @
> [EMAIL PROTECTED](name = "update_version")    private Integer _version;
>
> And I found the code only performed query and new/persist object. Not intent
> to update or merge object.
>
> The error was found before perform query. As you know, system will flush
> before query. Here is the stack trace:
>
>         at org.apache.openjpa.jdbc.sql.PrimaryRow.setObject(PrimaryRow.java
> :335)
>         at org.apache.openjpa.jdbc.sql.RowImpl.setObject(RowImpl.java:501)
>         at kodo.jdbc.meta.strats.ColumnPerLockGroupVersionStrategy.update(
> ColumnPerLockGroupVersionStrategy.java:166)
>         at org.apache.openjpa.jdbc.meta.Version.update(Version.java:294)
>         at
> org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.updateIndicators(
> AbstractUpdateManager.java:308)
>         at org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.update(
> AbstractUpdateManager.java:291)
>         at
> org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.populateRowManager(
> AbstractUpdateManager.java:149)
>         at org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(
> AbstractUpdateManager.java:82)
>         at org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(
> AbstractUpdateManager.java:69)
>         at org.apache.openjpa.jdbc.kernel.JDBCStoreManager.flush(
> JDBCStoreManager.java:511)
>         at org.apache.openjpa.kernel.DelegatingStoreManager.flush(
> DelegatingStoreManager.java:127)
>         at org.apache.openjpa.datacache.DataCacheStoreManager.flush(
> DataCacheStoreManager.java:506)
>         at org.apache.openjpa.kernel.DelegatingStoreManager.flush(
> DelegatingStoreManager.java:127)
>         at org.apache.openjpa.kernel.BrokerImpl.flush(BrokerImpl.java:1970)
>         at org.apache.openjpa.kernel.BrokerImpl.flushSafe(BrokerImpl.java
> :1868)
>         at org.apache.openjpa.kernel.BrokerImpl.flush(BrokerImpl.java:1639)
>         at org.apache.openjpa.kernel.QueryImpl.isInMemory(QueryImpl.java
> :948)
>         at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:782)
>         at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:761)
>         at org.apache.openjpa.kernel.DelegatingQuery.execute(
> DelegatingQuery.java:528)
>         at org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java
> :222)
>         at org.apache.openjpa.persistence.QueryImpl.getSingleResult(
> QueryImpl.java:282)
>
> --
> Best Regards,
>
> Gene Wu
>


-- 
Patrick Linskey
202 669 5907

Reply via email to