Tim-
Thanks for the explaination. So can we say if compilation time is not a major concern, I can just let oracle to do the compilation whenever the invalidated proc/func is called. I need to do alter procedure proc_name compile; manually only when I want to do the complile job before it is called?