Re: ISE With WO 5.4.3
Re: ISE With WO 5.4.3
- Subject: Re: ISE With WO 5.4.3
- From: Chuck Hill <email@hidden>
- Date: Fri, 01 Jul 2011 12:19:32 -0400
I suspect that something, somewhere in WO is doing something special and wrong for java.lang.Boolean resulting in Boolean.
Chuck
On 2011-06-30, at 12:38 PM, Kieran Kelleher wrote:
> Switching to intBoolean prototype seems to have fixed the problem.
>
> -Kieran
>
> On Jun 29, 2011, at 8:35 PM, Kieran Kelleher wrote:
>
>> Yeah, it does not make a lot fo sense - I am sure I will find a solution - just not something I have time for right this minute since I have to tweak my wowodc presentation. It seems to be avoidable by making the round robin OSC pool the same size as thread pool which ensures no OSC shared between threads and that does not seem to throw.
>>
>> Plenty of memory - sometimes this happens right after startup of the demo app and a few seconds into running the task.
>>
>> Kieran
>>
>> On Jun 29, 2011, at 7:24 PM, Chuck Hill wrote:
>>
>>> I did not say it made a lot of sense. :-P
>>>
>>> Could it be running out of memory? I'd expect a less consistent error than that.
>>>
>>> Is one of the threads referencing entities that were not referenced previously (as I try to recall when the class description cache gets invalidated).
>>>
>>> It also seems odd that it is trying to load "Boolean" and not the FQ name in the model:
>>>
>>>>>> valueClassName = "java.lang.Boolean";
>>>
>>> Chuck
>>>
>>>
>>>
>>> On Jun 29, 2011, at 4:19 PM, Mike Schrag wrote:
>>>
>>>> That was my thought too, but after startup?
>>>>
>>>> Sent from my iPhone
>>>>
>>>> On Jun 29, 2011, at 7:13 PM, Chuck Hill <email@hidden> wrote:
>>>>
>>>>> The only thing that comes to mind is a race condition clearing and re-populating the class description cache or something with _NSUtilities._classWithPartialName. I think that is what the attribute uses to get the class.
>>>>>
>>>>>
>>>>> On Jun 29, 2011, at 4:06 PM, Kieran Kelleher wrote:
>>>>>
>>>>>> ERPrototypes is in the classpath.
>>>>>>
>>>>>> I tried ERAttributeExtension and same error after running for a while.
>>>>>>
>>>>>> BTW, seems to only happen when:
>>>>>>
>>>>>> Multiple threads creating instances of the same Entity where the editing contexts share the same parent OSC.
>>>>>>
>>>>>> Might be a WO 5.4.3 bug
>>>>>>
>>>>>> Also, the attribute in question looks like this:
>>>>>> {
>>>>>> columnName = isfactorialprime;
>>>>>> name = isFactorialPrime;
>>>>>> prototypeName = boolean;
>>>>>> userInfo = {
>>>>>> "_EntityModeler" = {documentation = "http://en.wikipedia.org/wiki/Factorial_prime"; };
>>>>>> };
>>>>>> },
>>>>>>
>>>>>> ..... and the ERPrototypes proto (boolean), for reference, looks like this:
>>>>>> {
>>>>>> adaptorValueConversionMethodName = toString;
>>>>>> columnName = "";
>>>>>> externalType = VARCHAR;
>>>>>> factoryMethodArgumentType = EOFactoryMethodArgumentIsNSString;
>>>>>> name = boolean;
>>>>>> valueClassName = "java.lang.Boolean";
>>>>>> valueFactoryMethodName = valueOf;
>>>>>> width = 5;
>>>>>> },
>>>>>>
>>>>>>
>>>>>> On Jun 29, 2011, at 6:32 PM, Ramsey Gurley wrote:
>>>>>>
>>>>>>> I suspect it may have something to do with the use of the incompletely deprecated _valueClassName in WO 5.4.3's EOAttribute. EOAttribute still uses it, sometimes. I don't remember the issue I was having, but that is something I changed in ERAttributeExtension's version of this method. You could try running with that to see if it makes any difference.
>>>>>>>
>>>>>>> Generally when I've seen an error here, it's a missing prototype. In one case, I hunted for hours only to discover I forgot to import ERPrototypes (^_^) I don't know why your app would forget it occasionally though.
>>>>>>>
>>>>>>> Ramsey
>>>>>>>
>>>>>>> On Jun 29, 2011, at 3:08 PM, Kieran Kelleher wrote:
>>>>>>>
>>>>>>>> Anyone ever seen an error like this before? Not reproducible easily - can happen during heavy EOF save activity across multiple threads in WO 5.4.3. I have failed to make the same error happen with same code in WO 5.3.3.
>>>>>>>>
>>>>>>>> IllegalStateException: adaptorValueType: unable to load class named 'Boolean' for attribute isFactorialPrime on entity ResultItem
>>>>>>>> at com.webobjects.eoaccess.EOAttribute.adaptorValueType(EOAttribute.java:2216)
>>>>>>>> at com.webobjects.eoaccess.EOAttribute.adaptorValueClass(EOAttribute.java:2254)
>>>>>>>> at com.webobjects.eoaccess.EOEntityClassDescription._enforcedKVCNumberClassForKey(EOEntityClassDescription.java:548)
>>>>>>>> at er.extensions.eof.ERXEntityClassDescription._enforcedKVCNumberClassForKey(ERXEntityClassDescription.java:1266)
>>>>>>>> at com.webobjects.eocontrol.EOGenericRecord._otherStorageBinding(EOGenericRecord.java:146)
>>>>>>>> at er.extensions.eof.ERXGenericRecord._otherStorageBinding(ERXGenericRecord.java:231)
>>>>>>>> ... skipped 2 stack elements
>>>>>>>> at com.webobjects.eocontrol.EOKeyValueCoding$DefaultImplementation._createStoredKeySetBindingForKey(EOKeyValueCoding.java:350)
>>>>>>>> at com.webobjects.eocontrol.EOCustomObject._createStoredKeySetBindingForKey(EOCustomObject.java:1744)
>>>>>>>> at com.webobjects.eocontrol.EOGenericRecord._storedKeySetBindingForKey(EOGenericRecord.java:215)
>>>>>>>> at com.webobjects.eocontrol.EOCustomObject.takeStoredValueForKey(EOCustomObject.java:1662)
>>>>>>>> at er.extensions.eof.ERXGenericRecord.takeStoredValueForKey(ERXGenericRecord.java:1402)
>>>>>>>> at wowodc.eof._ResultItem.setIsFactorialPrime(_ResultItem.java:114)
>>>>>>>> at wowodc.eof.ResultItem.awakeFromInsertion(ResultItem.java:38)
>>>>>>>> at com.webobjects.eocontrol.EOEditingContext.insertObjectWithGlobalID(EOEditingContext.java:2871)
>>>>>>>> at er.extensions.eof.ERXEC.insertObjectWithGlobalID(ERXEC.java:886)
>>>>>>>> at com.webobjects.eocontrol.EOEditingContext.insertObject(EOEditingContext.java:2889)
>>>>>>>> at er.extensions.eof.ERXEC.insertObject(ERXEC.java:896)
>>>>>>>> at er.extensions.eof.ERXEOControlUtilities.createAndInsertObject(ERXEOControlUtilities.java:322)
>>>>>>>> at er.extensions.eof.ERXEOControlUtilities.createAndInsertObject(ERXEOControlUtilities.java:298)
>>>>>>>> at er.extensions.eof.ERXEOControlUtilities.createAndInsertObject(ERXEOControlUtilities.java:284)
>>>>>>>> at wowodc.background.tasks.T04MultiThreadedEOFTask$ChildPrimeTask.run(T04MultiThreadedEOFTask.java:266)
>>>>>>>> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>>>>>>>> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>>>>>>>> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>>>>>>>> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>>>>>>> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>>>>>>> ... skipped 1 stack elements
>>>>>>>> _______________________________________________
>>>>>>>> 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
>>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> 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 Senior Consultant / VP Development
>>>>>
>>>>> Come to WOWODC this July for unparalleled WO learning opportunities and real peer to peer problem solving! Network, socialize, and enjoy a great cosmopolitan city. See you there! http://www.wocommunity.org/wowodc11/
>>>>>
>>>>> _______________________________________________
>>>>> 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 Senior Consultant / VP Development
>>>
>>> Come to WOWODC this July for unparalleled WO learning opportunities and real peer to peer problem solving! Network, socialize, and enjoy a great cosmopolitan city. See you there! http://www.wocommunity.org/wowodc11/
>>>
>>
>
--
Chuck Hill Senior Consultant / VP Development
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/products/practical_webobjects
_______________________________________________
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