En este post Adding and Disabling Hints Using SQL Patch escrito por Nigel Bayliss
se comenta un poco sobre los cambios incorporados a la API de SQL Patch en 12c Release 2, en esta versión la interfaz se ha mejorado bastante y resulta más facil de utilizar.
Como novedades interesantes, el texto para hints "hint_text" es ahora de tipo CLOB en vez de un varchar2 como lo era hasta 12c R1, además l aAPI incluye un nuevo parametro para el SQL_ID.
Podemos verlo con mas claridad en la documentación:
DBMS_SQLDIAG.CREATE_SQL_PATCH (
sql_text IN CLOB,
hint_text IN CLOB,
name IN VARCHAR2 := NULL,
description IN VARCHAR2 := NULL,
category IN VARCHAR2 := NULL,
validate IN BOOLEAN := TRUE)
RETURN VARCHAR2;
DBMS_SQLDIAG.CREATE_SQL_PATCH (
sql_id IN VARCHAR2,
hint_text IN CLOB,
name IN VARCHAR2 := NULL,
description IN VARCHAR2 := NULL,
category IN VARCHAR2 := NULL,
validate IN BOOLEAN := TRUE)
RETURN VARCHAR2;
Como DBAs, es muy probable que muchas veces hayamos encontrado sistemas en los cuales muchisimas sentancias SQL utilizan "Hints" casi como una política o regla de desarrollo. A veces resulta interesante poder averiguar si estos "Hints" realmente están ayudando o no a la ejecución de la consulta y también poder demostrarle a un "team" de desarrollo, que no siempre es tan útil el micro-management del Optimizador de Oracle. A veces, es posible que también que sea necesario aplicar "hints" sobre la marcha.
Hace ya bastante tiempo, Maria Colgan escribió un par de posts (aquí y aquí sobre SQL Patch y cómo se puede agregar "Hints" a los SQL en una aplicación enlatada. En otras palabras, es posible aplicarle "hints" a sentencias SQL sin tener que cambiar el código de la aplicación.
Podemos profundizar más sobre el tema, leyendo el artículo original en inglés aqui
No hay comentarios:
Publicar un comentario