ERProfiling -> ERXBatchingDisplayGroup
ERProfiling -> ERXBatchingDisplayGroup
- Subject: ERProfiling -> ERXBatchingDisplayGroup
- From: Baiss Eric Magnusson <email@hidden>
- Date: Wed, 30 Jun 2010 10:16:10 -0700
My scenario is that I have a large group of Transaction records for a particular owner, (300-50000), each with ~16 fields, nine of those foreign key references, that will provide the bulk of the content of each WOComponent page in various aggregations and averages and even individualistic viewing.
I'm following a path where I removed all the WODisplayGroups from the woo files and then put the EODatabaseDataSource and/or ERXDisplayGroup/ERXBatchingDisplayGroup into the Session.
It's the and/or question above that I'm curious about. Do I use the EODatabaseDataSource reference or the ERXDisplayGroup/ERXBatchingDisplayGroup reference from the Session?
The result is after the first page all of the pages are loading measurably faster. :-)
I still have not succeeded in implementing ERXBatchingDisplayGroup, I'm not sure it will help since I often use all <n> Transactions in a calculation.
A JProfile result is: (any comments?)
Starting with Login page launch:
Profiler: 1071.20ms; SQL: 0% (0); D2W: 0% (0); T/I/A: 0% / 0% / 25%
14229 [WorkerThread15] WARN er.extensions.eof.ERXModelGroup - Clearing previous class descriptions
Profiler: 3931.02ms; SQL: 35% (59); D2W: 0% (0); T/I/A: 1% / 74% / 25%
Profiler: 166.19ms; SQL: 10% (3); D2W: 0% (0); T/I/A: 0% / 16% / 83%
Profiler: 3.25ms; SQL: 0% (0); D2W: 0% (0); T/I/A: 0% / 10% / 33%
Profiler: 783.31ms; SQL: 14% (50); D2W: 0% (0); T/I/A: 72% / 0% / 28%
Profiler: 108.10ms; SQL: 4% (2); D2W: 0% (0); T/I/A: 0% / 10% / 89%
Profiler: 9.77ms; SQL: 0% (0); D2W: 0% (0); T/I/A: 0% / 2% / 16%
Profiler: 3690.80ms; SQL: 49% (790); D2W: 0% (0); T/I/A: 10% / 0% / 90%
Profiler: 1311.58ms; SQL: 0% (2); D2W: 0% (0); T/I/A: 0% / 14% / 86%
Profiler: 11.17ms; SQL: 0% (0); D2W: 0% (0); T/I/A: 0% / 2% / 58%
This effort is the result of JProfiling results and the ideas of Chuck below.
dataSource = new EODatabaseDataSource(editingContext(), entityName());
dataSource.fetchSpecification().setPrefetchingRelationshipKeyPaths(prefetchingRelationshipKeyPaths());
dataSource.fetchSpecification().setRefreshesRefetchedObjects( refreshesRefetchedObjects() );
dataSource.fetchSpecification().setIsDeep( true );
dataSource().fetchSpecification().setQualifier(qualifier());
displayGroup.setDataSource(dataSource);
*****
“I consider myself a very moral person,” he said. “Suddenly, I felt like a character in a Beckett play, where you have moral obligations towards something you have no possibility of understanding. It was like ‘Waiting for Godot’ — I was in limbo.”
Quote from Reykjavik's new mayor, when answering a question about the banking crisis.
Baiss Eric Magnusson
CascadeWebDesign.com
_______________________________________________
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