Subject How/When is BLR 'compiled'
Author Phil Shrimpton

Although this post is verging on a support issue (smacking wrists as I
type), with all the recent talk about inheritance, it raises an interesting
point (to me anyway <g>).

I have a database with several hundred Stored procedures that is design in
an 'OO' fashion, where I have a 'Base SP' that a number of descendant SP's
use, and these in turn have descendant SP's and so on. These SP's are used
directly by my client app and in Triggers. I recently made some quite major
changes to some of the Base SP's. Now as each SP/Trigger is compiled when
you issue the ALTER command, the SP's that I changed were corrected, but
none of the 'descendants'. Now after spending most of the day trying to
'recompile' all my SP's in the correct order (and missing one, so having to
start again), I thought that there must be an easier way to do this. I also
thought about how this situation would be handled in the 'inheritance'
situation we have been talking about.

So first (support related) question is there a way to recompile all
SP/Triggers in the correct order?

Second (architect related) question, if this 'inheritance' functionality is
to be implemented, would it be just for the initial CREATE of the descendant
object, or would changes to the 'Base' object at a later date be reflected
in child classes. If the later, how would the 're-build' of the BLR in the
correct order be handled.

Feel free not to answer if I am OT.