How fast was what?
Breakdown by statement and method:
$ DBI_PROFILE=6 test.pl (only part of output is shown here)
'UPDATE prices SET price=? WHERE prod_id=?' =>
'execute' =>
0.000951s
'prepare' =>
0.000404s
Some key points
- Only profiles ‘top level’ calls from application, not ‘recursive’ calls from within DBI/DBD.
- Timing data is collected and merged into a $h->{Profile}{…}{…} data tree
- All handles share the same data tree by default - giving one overall set of results
- The ‘path’ through the tree to where the data is merged-in can be dynamically controlled
- By default $dbh method calls are usually associated with the $dbh->{Statement} string
- DBI::Profile can be subclassed (e.g., DBI::ProfileDumper for mod_perl)
- Applications can add their own timing data
- More features than I can fit on the slide...