After tinkering for some hours, I've finally made some progress using Dprof.
I now have a test program on my new fast server that does only the single
ultra-simple Rose Manager call: get_products. If I run dprofpp -r to show
actual time, then the following is revealed:
C:\Information\mgroot\cgi-bin>dprofpp -r
......
Total Elapsed Time = 2.923462 Seconds
Real Time = 2.923462 Seconds
Exclusive Times
%Time ExclSec CumulS #Calls sec/call Csec/c Name
77.4 2.265 2.265 1 2.2650 2.2650 DBD::mysql::db::_login
2.57 0.075 0.149 1922 0.0000 0.0001 Rose::Object::init
1.61 0.047 0.047 18656 0.0000 0.0000
Rose::DB::Object::MakeMethods::Generic::__ANON__
It appears that the login is the problem. But...if my test program uses a
straight DBI/DBD call and Rose is not used at all, then there is no login
delay. It only happens when I login via Rose.
But now don't know where to go next. Does this new information give anyone
some clue that will let them suggest what a next sensible move would be?
Is there some way of logging what Rose is doing?
I've used DBI->trace to see what both methods do around the login time.
They're slightly different as Rose has a lengthier syntax for the arguments
but I can't see anything that is obviously dodgy.
[btw, is it OK that a single simple database call produces 18K calls to
MakeMethods::Generic__ANON__]?
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Rose-db-object mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/rose-db-object