Re: fetchLimit don't affect SQL fetching limit?
Re: fetchLimit don't affect SQL fetching limit?
- Subject: Re: fetchLimit don't affect SQL fetching limit?
- From: Chuck Hill <email@hidden>
- Date: Wed, 27 Jun 2012 08:56:40 -0700
I recall seeing the same thing. I'd have to look at the SQL again to see if it is possible to migrate the limit a sub-query in the pre-fetches. My first guess is that it would not be trivial.
Chuck
On 2012-06-27, at 7:10 AM, Kieran Kelleher wrote:
> I don't have the answer to that off the top of my head. Interesting question though.
>
> On Jun 27, 2012, at 9:23 AM, Henrique Gomes wrote:
>
>>
>> Also,
>>
>> I had trouble some time ago, because a fetch *was* using LIMIT (on Postgres) but the subsequent fetch of prefetchingRelationshipKeyPaths were NOT.
>> Is that expected behavior? I assume so, the result of LIMITing the fetch might not bring the relation tuples corresponding to the initial LIMITed fetch. Right?
>>
>> HG
>>
>> On Jun 27, 2012, at 12:55 PM, Kieran Kelleher wrote:
>>
>>> Also, you can verify by checking the SQL that is being sent to the database rather than just guessing that LIMIT is not being applied. It might be a big relationship that is causing OOM exception. Or maybe you have not allocated enough memory to your app.
>>>
>>> On Jun 27, 2012, at 7:52 AM, Kieran Kelleher wrote:
>>>
>>>> LIMIT is supported by the Wonder MySQL PlugIn since Nov 22, 2011, commit 6c511bb. You would need the MySQLPlugIn in your build path.
>>>>
>>>>
>>>> On Jun 27, 2012, at 3:13 AM, Gennady Kushnir wrote:
>>>>
>>>>> I assumed that (
>>>>> How can I force LIMIT to SQL statement in MySQL?
>>>>>
>>>>> 2012/6/26 Kieran Kelleher <email@hidden>:
>>>>>> It depends on the database plugin you are using. Some plugins take the fetchSpec fetchLimit and incorporate it into the SQL statement in the plugin's EOSQLExpression subclass. The default behaviour of EOF is to limit in memory after the fetch.
>>>>>>
>>>>>> On Jun 26, 2012, at 10:23 AM, Gennady Kushnir wrote:
>>>>>>
>>>>>>> Hello all!
>>>>>>> I am fetching from a table that has lots of records. So I decided to
>>>>>>> fs.setFetchLimit(10) on my EOFetchSpecification, but nevertheless when
>>>>>>> I perform ec.objectsWithFetchSpecification(fs) I get
>>>>>>> JavaOutOfMemoryError.
>>>>>>> It seems to me that fetchLimit does not actually convert to a LIMIT
>>>>>>> clause in a SELECT statement in underlaying SQL. So the actual
>>>>>>> limitation is made in memory after fetch.
>>>>>>> Is it a conventional behavior or it is me doing something wrong?
>>>>>>>
>>>>>>> Gennady
>>>>>>> _______________________________________________
>>>>>>> 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
>>
>
>
> _______________________________________________
> 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
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
_______________________________________________
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