WL#4178: Stored Routines: validation of stored routines

Affects: Server-6.0   —   Status: Un-Assigned

Abandon invalidation of stored routines based on a global integer counter which
is increased on any DDL (Cversion).
Similarly to prepared statements (WL#4165), attach a list of versions of used
objects to each stored routine and validate each routine before
execution, i.e. check that versions didn't change from the last load.
In case of a validation failure, re-load from disk and re-parse if there was an
interim DDL.

Rationale:
 * the same approach applied to all composite objects
 * is expected to give a performance improvement, since currently any DDL in any
threads flushes all stored procedure caches in all connections.
 * this can be a simple solution to Bug#, but will not fix other
bugs, such as BUG#33082

May be made obsolete by WL#4179: Stored Programs: validation of individual
statements.