Re: ERXBatchingDisplayGroup and batch size
Re: ERXBatchingDisplayGroup and batch size
- Subject: Re: ERXBatchingDisplayGroup and batch size
- From: Chuck Hill <email@hidden>
- Date: Thu, 18 Oct 2012 17:03:47 -0700
The first (long) SQL that you sent is what is generated if the database plugin does not provide LIMIT and OFFSET. My guess is that something is not initialized correctly when you use a batch size of zero for the first fetch.
Chuck
On 2012-10-18, at 3:51 PM, Louis Demers wrote:
>
> On 2012-10-18, at 18:45 , Chuck Hill <email@hidden> wrote:
>
>>
>> On 2012-10-18, at 3:30 PM, Louis Demers wrote:
>>
>>> Wow,
>>> 1) turned on sql loggin (which I hsould have tought of by mayself , head in shame)
>>
>> LOL I thought that would be your reaction. :-)
>>
>>
>>> 2) setup the crash
>>> 3) cut and pasted the sql and now crashed Mail because the request was so f****** big ! here is the start
>> <snip>
>>>
>>> 200:18574(id), 201:6284(id), 202:10381(id), 203:6282(id), 204:6283(id), 205:10376(id), 206:6281(id), ..........
>>>
>>> that line has 2059805 characters in it !!!!
>>
>> My guess is that the line is too long for Postgres and is causing a buffer overflow or something. That IS a rather long line. :-)
>>
>> So the next interesting question is,
>>>>> If i first put a small number, then I can ask any number including 0 and it works...
>>
>>
>> what SQL is sent if you set the batch size to 10 and then to 0"? My guess is that it is not actually fetching everything in that case.
>>
>
> when I do it with exactly the same input I get only one line (which is also what I should be getting no matter the batch size,) Here is hte sql if I use a batch size of 20
>
> Oct 18 18:46:56 DEBUG NSLog - === Begin Internal Transaction
> Oct 18 18:46:56 DEBUG NSLog - evaluateExpression: <com.webobjects.jdbcadaptor.PostgresqlExpression: "select count(*) FROM Transaction t0 WHERE (t0.dateEnd > ?::timestamp AND (t0.dateEnd < ?::timestamp AND t0.transactionTypeID = ?::int4))" withBindings: 1:2012-10-01 00:00:00.0(dateEnd), 2:2012-10-03 00:00:00.0(dateEnd), 3:1(transactionTypeID)>
> Oct 18 18:46:56 DEBUG NSLog - 1 row(s) processed
> Oct 18 18:46:56 DEBUG NSLog - === Commit Internal Transaction
> Oct 18 18:46:56 DEBUG NSLog - === Begin Internal Transaction
> Oct 18 18:46:56 DEBUG NSLog - evaluateExpression: <com.webobjects.jdbcadaptor.PostgresqlExpression: "SELECT t0.id FROM Transaction t0 WHERE (t0.dateEnd > ?::timestamp AND (t0.dateEnd < ?::timestamp AND t0.transactionTypeID = ?::int4)) LIMIT 1 OFFSET 0" withBindings: 1:2012-10-01 00:00:00.0(dateEnd), 2:2012-10-03 00:00:00.0(dateEnd), 3:1(transactionTypeID)>
> Oct 18 18:46:56 DEBUG NSLog - 1 row(s) processed
> Oct 18 18:46:56 DEBUG NSLog - === Commit Internal Transaction
> Oct 18 18:46:56 DEBUG NSLog - === Begin Internal Transaction
> Oct 18 18:46:56 DEBUG NSLog - evaluateExpression: <com.webobjects.jdbcadaptor.PostgresqlExpression: "SELECT t0.assemblyTransaction_id, t0.averageCost, t0.billNumber, t0.contact_id, t0.cost, t0.dateEnd, t0.dateStart, t0.id, t0.location_id, t0.locked, t0.note, t0.part_id, (t0.id), t0.project_id, t0.purchaseOrder, t0.quantity, t0.receptionNumber, t0.reversedTransaction_id, t0.runningTotalCost, t0.runningTotalQty, t0.transactionTypeID FROM Transaction t0 WHERE t0.id = ?::int4" withBindings: 1:156712(id)>
> Oct 18 18:46:57 DEBUG NSLog - 1 row(s) processed
> Oct 18 18:46:57 DEBUG NSLog - === Commit Internal Transaction
> Oct 18 18:46:57 DEBUG NSLog - === Begin Internal Transaction
> Oct 18 18:46:57 DEBUG NSLog - evaluateExpression: <com.webobjects.jdbcadaptor.PostgresqlExpression: "SELECT t0.createdOn, t0.id, t0.name, t0.quantity, t0.serialNumber, t0.spec_id FROM Part t0 WHERE t0.id = ?::int4" withBindings: 1:16082(id)>
> Oct 18 18:46:57 DEBUG NSLog - 1 row(s) processed
> Oct 18 18:46:57 DEBUG NSLog - === Commit Internal Transaction
> Oct 18 18:46:57 DEBUG NSLog - === Begin Internal Transaction
> Oct 18 18:46:57 DEBUG NSLog - evaluateExpression: <com.webobjects.jdbcadaptor.PostgresqlExpression: "SELECT t0.category_id, t0.costLabor, t0.costMaterial, t0.deprecatedObzervNumber, t0.description, t0.explode, t0.hsCode, t0.id, t0.inventoryType_id, t0.leadTime, t0.level, t0.manufacturer, t0.manufacturerPartNumber, t0.minimumQuantity, t0.name, t0.number, t0.origin_id, t0.productionStep, t0.refSpec_id, t0.revision, t0.scratchPad, t0.specStatus_id, t0.unitWeight FROM Spec t0 WHERE t0.id = ?::int4" withBindings: 1:5417(id)>
> Oct 18 18:46:57 DEBUG NSLog - 1 row(s) processed
> Oct 18 18:46:57 DEBUG NSLog - === Commit Internal Transaction
> Oct 18 18:46:57 DEBUG NSLog - === Begin Internal Transaction
> Oct 18 18:46:57 DEBUG NSLog - evaluateExpression: <com.webobjects.jdbcadaptor.PostgresqlExpression: "SELECT t0.dotOrder, t0.id, t0.name, t0.sequencePrefix, t0.sortOrder FROM SpecCategory t0 WHERE t0.id = ?::int4" withBindings: 1:7(id)>
> Oct 18 18:46:57 DEBUG NSLog - 1 row(s) processed
> Oct 18 18:46:57 DEBUG NSLog - === Commit Internal Transaction
> Oct 18 18:46:57 DEBUG NSLog - === Begin Internal Transaction
> Oct 18 18:46:57 DEBUG NSLog - evaluateExpression: <com.webobjects.jdbcadaptor.PostgresqlExpression: "SELECT t0.birthdate, t0.company, t0.division, t0.id, t0.initials, t0.isCustomer, t0.isEmployee, t0.isSupplier, t0.isWIPLocation, t0.login, t0.nameFirst, t0.nameLast, t0.number, t0.password, t0.payRollNumber, t0.title FROM Contact t0 WHERE t0.id = ?::int4" withBindings: 1:16(id)>
> Oct 18 18:46:57 DEBUG NSLog - 1 row(s) processed
> Oct 18 18:46:57 DEBUG NSLog - === Commit Internal Transaction
>
>
>>
>>
>>
>>
>
> Louis Demers eng.
> www.obzerv.com
>
>
--
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
Global Village Consulting ranks 13th in 2012 in BIV's Top 100 Fastest Growing Companies in B.C!
Global Village Consulting ranks 76th in 24th annual PROFIT 200 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