
Activación de niveles inferiores (*) de funciones en Db2 12
Si encuentra regresión u otros problemas después de la activación de un nuevo nivel de función de Db2 12 , puede tomar ciertas medidas para minimizar el impacto en sus aplicaciones mientras resuelve los problemas subyacentes.
Acerca de esta tarea
A veces, es posible que active un nivel de función inferior, llamado nivel de función «estrella» (* ), después de activar un nivel de función superior. En cierto modo, el nivel de función 100* en Db2 12 es análogo a los modos de migración CM * y ENFM* de versiones anteriores. Cualquier nivel de función inferior al nivel de función más alto que se haya activado es siempre un nivel de función *.
El resultado de los comandos DISPLAY GROUP y ACTIVATE identifica los niveles de función * mediante el identificador de nivel de función seguido de un asterisco, de ahí el nombre. Por ejemplo, suponga que activa el nivel de función 500 después de que se activara previamente el nivel de función 501.V12R1M500*en el mensaje de salida indica que el grupo o subsistema de intercambio de datos de Db2 está en el nivel de función 500* (se podría decir, nivel de función 500 estrella
).
Cuando se activa un nivel de función *, Db2 sigue tolerando objetos, paquetes y estructuras que se crearon o vincularon en niveles de función superiores. Algunos comportamientos de nuevas funciones vuelven inmediatamente al comportamiento anterior, especialmente en el caso de comportamientos que no afectan a las aplicaciones SQL, como la sintaxis y los comportamientos de nuevas funciones para los comandos Db2 y las utilidades Db2 . Db2 Db2 , también continúa tolerando cualquier configuración de parámetros de subsistema que habilite capacidades de un nivel de función superior, pero podría revertir al comportamiento de una configuración diferente en el nivel de función *. Sin embargo, el uso de la sintaxis y los comportamientos de las nuevas funciones por parte de las aplicaciones SQL no suele desactivarse a nivel de *función a menos que se tomen medidas adicionales, como volver a vincular los paquetes que las utilizan.
En contextos de aplicación y SQL, si el nivel de compatibilidad de aplicación efectivo permanece en el nivel superior, la sintaxis y los comportamientos SQL del nivel de función superior aún pueden utilizarse en el nivel de función *. Los paquetes también pueden ejecutarse, rebotarse y enlazarse automáticamente en el nivel superior. Sin embargo, una vinculación explícita de dichos paquetes solo tiene éxito si la opción de vinculación APPLCOMPAT es equivalente al nivel de función * activado o inferior. Se aplican reglas similares para los niveles de compatibilidad de aplicación de procedimientos SQL nativos, funciones escalares SQL compiladas y desencadenantes avanzados.
El resultado es que las aplicaciones SQL que utilizan capacidades en un nivel de función superior pueden seguir haciéndolo si no están relacionadas con el motivo de activar el nivel de función *. Para detener el uso de todas las prestaciones de SQL en el nivel de función superior, también debe establecer todos los niveles de compatibilidad de aplicación efectivos en el nivel inferior.
Procedimiento
Utilice los siguientes métodos generales para minimizar el impacto de los problemas en un nuevo nivel de función, mientras se resuelven los problemas subyacentes:
- Si se producen problemas después de volver a vincular paquetes en un nivel de compatibilidad de aplicación superior, no vuelva inmediatamente a un nivel de función de estrella inferior (*). En su lugar, utilice REBIND SWITCH (PREVIOUS) para volver al paquete anterior.Esta opción solo está disponible si ha utilizado PLANMGMT en el nivel de enlace o de reenlace anterior del paquete.
- Si es necesario, emita un comando ACTIVATE o adapte y ejecute el trabajo DNSTIJAF para activar el nivel de función de estrella inferior (*).La activación del nivel de función de estrella (*) no impide el uso de nuevas funciones de SQL. Es posible que continúe ejecutando aplicaciones que no están causando o que no están relacionadas con la regresión o el problema en el nivel de compatibilidad de aplicación superior. Dicha aplicación puede seguir utilizando las capacidades del nivel de función superior, a menos que las vincule al nivel de compatibilidad de aplicación inferior.
- Si debe impedir todo el uso de prestaciones en el nivel de función superior, enlace todos los paquetes al nivel de compatibilidad de aplicación que corresponde al nivel de función de estrella (*).
- Si el nivel de compatibilidad de aplicación predeterminado se ha establecido en el nivel de función superior que el nivel de función de estrella (*), reduzca el nivel de compatibilidad de aplicación predeterminado a ese nivel inferior para evitar errores de vinculación.Para obtener instrucciones sobre cómo establecer la compatibilidad predeterminada de las aplicaciones, consulte Especificación del nivel de compatibilidad predeterminado de las aplicaciones.
