You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jdo-dev@db.apache.org by Craig L Russell <Cr...@Sun.COM> on 2006/01/16 20:33:32 UTC

Fwd: [Issue 154] New - EJBQL: bulk UPDATE statement should not update version columns

Interesting anomaly with object relational mapping query language  
update semantics. Apparently, it's not too useful with versioned  
classes using optimistic concurrency.

Begin forwarded message:

> From: Peter Krogh <pe...@oracle.com>
> Date: January 16, 2006 6:51:52 AM PST
> To: "persistence@glassfish.dev.java.net"  
> <pe...@glassfish.dev.java.net>
> Cc: "Michael.Bouschen@Sun.COM" <Mi...@sun.com>
> Subject: RE: [Issue 154] New - EJBQL: bulk UPDATE statement should  
> not update version columns
> Reply-To: persistence@glassfish.dev.java.net
>
> I imagine the reason why this was removed from the spec is because  
> of the row count.  How do you know if you should throw an  
> optimistic lock exception since you don't know how many objects  
> were modified?
>
>
> -----Original Message-----
> From: Craig.Russell@Sun.COM [mailto:Craig.Russell@Sun.COM]On Behalf  
> Of Craig L Russell
> Sent: Friday, January 13, 2006 8:25 PM
> To: persistence@glassfish.dev.java.net
> Cc: Michael.Bouschen@Sun.COM
> Subject: Re: [Issue 154] New - EJBQL: bulk UPDATE statement should  
> not update version columns
>
> Hi,
>
> I'd suggest waiting to hear from the spec lead(s) before doing  
> anything with this bug report. I understand that this is a spec bug.
>
> Craig
>
> On Jan 13, 2006, at 12:11 PM, Marina Vatkina wrote:
>
>> Hi Michael,
>>
>> Isn't the spec requirement wrong? While it might be
>> tricky to update version column of all tables, if
>> bulk update doesn't do it, any parallel tx can override the changes.
>>
>> thanks,
>> -marina
>>
>> ----- Original Message -----
>> From: mb124283@dev.java.net
>> Date: Friday, January 13, 2006 11:11 am
>> Subject: [Issue 154] New - EJBQL: bulk UPDATE statement should not  
>> update version columns
>>
>>> https://glassfish.dev.java.net/issues/show_bug.cgi?id=154
>>> Issue #|154
>>> Summary|EJBQL: bulk UPDATE statement should not
>>> update version
>>> | columns
>>> Component|glassfish
>>> Version|9.0pe
>>> Platform|All
>>> OS/Version|All
>>> URL|
>>> Status|NEW
>>> Status whiteboard|
>>> Keywords|
>>> Resolution|
>>> Issue type|TASK
>>> Priority|P3
>>> Subcomponent|entity-persistence
>>> Assigned to|tware
>>> Reported by|mb124283
>>>
>>>
>>>
>>>
>>>
>>>
>>> ------- Additional comments from mb124283@dev.java.net Fri Jan 13
>>> 19:11:47 +0000 2006 -------
>>> The PFD version of the EJB3 persistence spec clarifies that an
>>> EJBQL bulk UPDATE
>>> statement does not update version columns.
>>>
>>> Today the EJBQL query
>>> UPDATE Customer c SET c.name = 'CHANGED'
>>> is mapped to the following SQL:
>>> UPDATE CMP3_CUSTOMER
>>> SET NAME = 'CHANGED', CUST_VERSION = (CUST_VERSION + 1)
>>>
>>> --------------------------------------------------------------------
>>> -
>>> To unsubscribe, e-mail: issues-unsubscribe@glassfish.dev.java.net
>>> For additional commands, e-mail: issues-help@glassfish.dev.java.net
>>>
>>>
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!