Re: strange optimistic locking failure
Re: strange optimistic locking failure
- Subject: Re: strange optimistic locking failure
- From: Chuck Hill <email@hidden>
- Date: Tue, 11 Jun 2013 09:54:06 -0700
In my models, most attributes are locked.
Chuck
On 2013-06-11, at 9:32 AM, Tim Worman wrote:
> 'Locked' is definitely not enabled for those attributes in the model - or in partial entity that is built on that entity.
>
> This is the first time I've ever examined the locking in EOJDBCOpenBasePrototypes. They do look ODD to me. I am using Wonder -> integration. The MySQL and Oracle prototypes have a ton of locked attributes as well.
>
> <PastedGraphic-1.png>
>
> On Jun 11, 2013, at 8:38 AM, Chuck Hill <email@hidden> wrote:
>
>> No, I was just trying to think of anything that might alter the WHERE from what you would expect looking at the entity in the EOModel.
>>
>> Have you double checked that locked did not get turned on these attributes in the model? Are you using prototypes? Did locking change on the prototypes?
>>
>>
>> Chuck
>>
>>
>> On 2013-06-11, at 8:18 AM, Tim Worman wrote:
>>
>>> Hi Chuck et al:
>>>
>>> I wasn't sure if maybe I was missing something in your question - so, is this locking behavior I should expect when using partials? I don't recall seeing an update statement like that in the past.
>>>
>>> Tim
>>>
>>> On Jun 10, 2013, at 3:38 PM, Tim Worman <email@hidden> wrote:
>>>
>>>> Thanks Chuck.
>>>>
>>>> I am using ERXPartials. I've done a couple of deployments including partial support and it had been working well. This problem just started recently - really seemed to come out of the blue. The exception is reproducible in development so there is no other app touching the database.
>>>>
>>>> Tim
>>>> UCLA GSE&IS
>>>>
>>>> On Jun 10, 2013, at 3:35 PM, Chuck Hill <email@hidden> wrote:
>>>>
>>>>> Are you using inheritance or partials?
>>>>>
>>>>>
>>>>> On 2013-06-10, at 3:33 PM, Tim Worman wrote:
>>>>>
>>>>>> I am suddenly getting strange optimistic locking failures when when updating a row on ec.saveChanges(). At least it seems sudden to me because I can't introspect well enough to see where I caused it. :-) I'm seeing this.
>>>>>>
>>>>>> Jun 10 15:14:02 eTimesheet[55555] INFO er.transaction.adaptor.Exceptions - Database Exception occured: com.webobjects.eoaccess.EOGeneralAdaptorException: updateValuesInRowDescribedByQualifier -- com.webobjects.jdbcadaptor.JDBCChannel method failed to update row in database.
>>>>>>
>>>>>> So, I logged at the SQL and capture the userInfo() on the exception. What really caught my eye is the update statement that was produced. The WHERE statement makes it seem like is locking on every attribute in the PERSON entity. My model definitely does not reflect that should be happening.
>>>>>>
>>>>>> UPDATE PERSON SET campus_mail_code = ?, should_sync = ?, person_first_name = ?, start_end_date = ?, norm_vac_max = ?, student_status = ?, start_begin_date = ?, campus_phone = ?, home_dept_code = ?, person_middle_name = ?, email_address_other = ?, emp_status = ?, work_addr_line2 = ?, emp_rel_code = ? WHERE (person_id = ? AND modify_date = ? AND comp_time_bal = ? AND emergency_info = ? AND emp_rel_code = ? AND norm_vac_max is NULL AND out_of_office = ? AND pto_hrs_bal = ? AND sick_lv_hrs_bal = ? AND start_begin_date is NULL AND start_end_date is NULL AND start_percent = ? AND vac_hrs_balance = ? AND work_addr_city is NULL AND work_addr_line1 = ? AND work_addr_line2 is NULL AND work_addr_state is NULL AND work_addr_zip is NULL)
>>>>>>
>>>>>> Can anyone help explain the abnormal growth of my WHERE clause?
>>>>>>
>>>>>> Tim
>>>>>> UCLA GSE&IS
>>>>>> _______________________________________________
>>>>>> Do not post admin requests to the list. They will be ignored.
>>>>>> Webobjects-dev mailing list (email@hidden)
>>>>>> Help/Unsubscribe/Update your Subscription:
>>>>>>
>>>>>> This email sent to email@hidden
>>>>>
>>>>> --
>>>>> Chuck Hill
>>>>> Executive Managing Partner, VP Development and Technical Services
>>>>>
>>>>> Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems.
>>>>> http://www.global-village.net/gvc/practical_webobjects
>>>>>
>>>>> Global Village Consulting ranks 13th in 2012 in BIV's Top 100 Fastest Growing Companies in B.C!
>>>>>
>>>>> Global Village Consulting ranks 44th in 25th annual PROFIT 500 ranking of Canada’s Fastest-Growing Companies by PROFIT Magazine!
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Do not post admin requests to the list. They will be ignored.
>>>> Webobjects-dev mailing list (email@hidden)
>>>> Help/Unsubscribe/Update your Subscription:
>>>>
>>>> This email sent to email@hidden
>>>
>>
>> --
>> Chuck Hill
>> Executive Managing Partner, VP Development and Technical Services
>>
>> Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems.
>> http://www.global-village.net/gvc/practical_webobjects
>>
>> Global Village Consulting ranks 13th in 2012 in BIV's Top 100 Fastest Growing Companies in B.C!
>>
>> Global Village Consulting ranks 44th in 25th annual PROFIT 500 ranking of Canada’s Fastest-Growing Companies by PROFIT Magazine!
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>
--
Chuck Hill
Executive Managing Partner, VP Development and Technical Services
Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems.
http://www.global-village.net/gvc/practical_webobjects
Global Village Consulting ranks 13th in 2012 in BIV's Top 100 Fastest Growing Companies in B.C!
Global Village Consulting ranks 44th in 25th annual PROFIT 500 ranking of Canada’s Fastest-Growing Companies by PROFIT Magazine!
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden