Sunday, September 24, 2006

Stop what you are doing...

And read this now... I couldn't have said it more forcibly myself!  I've said the same thing over and over and over again...

Well done.  It is the little things in life sometimes.



Anonymous Paul said....

Tom - how on earth do you get time to do all this?

Sun Sep 24, 03:20:00 PM EDT  

Blogger Thomas Kyte said....

... do you get time

I answered
this ad a couple of years ago and it has been easy ever since!!

Truthfully "rss feeds", they help :)

Sun Sep 24, 03:24:00 PM EDT  

Blogger Alberto Dell'Era said....

It would be nice to have PL/SQL automatically populate MODULE and ACTION with the names of the package and procedure that caused the SQL to be parsed (if not populated yet).

Great monitoring improvement for the tons of legacy PL/SQL code out there ...

This wouldn't impact performance, since static SQL is parsed once and then cached - and anyway it's the hard parse that populates them, and moreover setting a couple of fields in an already-latched structure is negligible compared to the cpu spent for parsing ... so even dynamic SQL should be safe.

Sun Sep 24, 03:35:00 PM EDT  

Anonymous Jonathan Lewis said....

A detail of module/action - they appear in v$sql. So if the same SQL appears in different places in your code, do you get multiple child cursors because they were generated at different modules/action points; or do you get one child cursor with whichever module/action happened first; or one child cursor which gets updated to show the most recent module/action that any session has used the SQL from. One option gives you excess cursors, the others make you lose sight of where the resources might really be used.

(It's a question that's been on my to-do list for a couple of years or so, but I've never got around to checking it).

Sun Sep 24, 06:06:00 PM EDT  

Blogger Noons said....

exec dbms_application_info.set_module('SQLPLUS - Nuno','DBA at work');

has been in my local sqlplus login.sql for a loooong time now...

I like to know who I am and that it's not me causing those huge disk_reads!

Sun Sep 24, 08:35:00 PM EDT  

Blogger Niall said....

Nuno wrote

I like to know who I am and that it's not me causing those huge disk_reads

I can sooo relate to that. I'm sure that the Uncertainty principle was really discovered by a dba (maybe Tom after he answered that ad) after all don't we all find that observing the problem changes the state of the system.

Mon Sep 25, 01:34:00 AM EDT  

Blogger Robert said....

so how exactly does Oracle figure out "time_remaining" ???
How does Oracle "estimate" how long it is going to take ????
And how reliable is the estimate ?

Mon Sep 25, 11:18:00 PM EDT  

Blogger Thomas Kyte said....

so how exactly does Oracle figure out "time_remaining" ???

simple extrapolation. When you use set session longops you tell is:

a) how many units of work you plan to do
b) how many units of work you've done

so, as you are updating session longops, it is figuring out how much time each unit of work takes - how many are left to go and there it is.

So, if your units of work are very different - the number will not be accurate of course.

A lot like doing the windows file copy drag and drop thing where the message box tells you "2 weeks to go, no wait - 2 hours, no - make that 2 minutes, no make that 4 minutes ....."

Tue Sep 26, 01:21:00 AM EDT  

Blogger Steven said....

the problem with LONGOPS is fiddling around with it endlessly tweaking the values. I would advise avoiding it until yer app is nearly done...

I agree simple DBMS_APPLICATION_INFO (module, action) should be required - developers who neglect it to be re-educated.

Fri Oct 12, 02:33:00 PM EDT  


<< Home