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
Rose-db-object@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rose-db-object

Reply via email to