Un error que ocurría con las primeras ediciones de SQL 2005 para mi sorpresa parece que ha vuelto con SP3, me refiero a aquellos planes de mantenimiento corruptos que eran imposibles de borrar una vez los editabas en SQL Server Management Studio.Recientemente en una instalación de W2K3 y SQL2K5 (ambos con todos los service packs instalados y actualizaciones de seguridad a la última en Abril 2009) he visto como ocurrian de nuevo los problemas con las tareas de mantenimiento:

The DELETE statement conflicted with the REFERENCE constraint "FK_subplan_job_id". The conflict occurred in database "msdb", table "dbo.sysmaintplan_subplans", column 'job_id'. The statement has been terminated. (Microsoft SQL Server, Error: 547)

El error en cuestión se encuentra en uno de los procedimientos almacenados que se utilizan para borrar los jobs que genera el plan de mantenimiento para cumplir su función.

Existe solución al problema y consiste en la siguiente:

  • En la BBDD msdb, editar el código del procedimiento almacenado: dbo.sp_delete_job
  • Buscar el siguiente delete:
DELETE FROM msdb.dbo.sysjobs WHERE job_id IN (SELECT job_id FROM #temp_jobs_to_delete)
  • Insertar el siguiente código justo delante:
DELETE FROM sysmaintplan_log where subplan_id in (select subplan_id from msdb.dbo.sysmaintplan_subplans where job_id in (SELECT job_id FROM #temp_jobs_to_delete))  DELETE FROM msdb.dbo.sysmaintplan_subplans where job_id in (SELECT job_id FROM #temp_jobs_to_delete)
  • Ejecutar

Como podeis imaginar, por error no se han incluido dos referencias a tablas con información sobre los planes de mantenimiento a los que pertenece el job a eliminar y surge un error de clave ajena al intentar suprimirlo.

El problema lo he detectado con una instalación en cluster 2 nodos de Windows 2003 x64 Enterprise en ingles con SQL 2005 x64 Enterprise Castellano.

 

0 Shares:
Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

You May Also Like

Carga de Slowly Changing Dimensions y tabla de Hechos con atributos de Tipo 2 (Parte 2 de 3)

Este es el segundo post de la serie en el que explicaremos como cargar nuestra tabla de Hechos a partir de una dimensión con atributos de Tipo 2, usando dos maneras diferentes, una de ellas será mediante un componente “Look Up” con caché parcial y la otra opción será usando un componente “Merge Join” con un “Conditional Split” para seleccionar el registro que se encuentra en el rango de fechas correcto. Para mas información sobre qué es un atributo de Tipo 2 y sobre como cargar la dimensión que usaremos en este ejemplo puedes consultar el primer post de la serie.

Power BI Report Page Tooltips

Mostraremos cómo se pueden crear Toolips personalizados con el objetivo de enriquecer nuestros informes permitiendo que los usuarios tengan acceso a información más detalla, estos "report page tooltips" se definirán en otra hoja y serán fácilmente accedidos solo poniendo el ratón sobre un visual del informe, además con la ventaja que estos tooltips pueden ser re-utilizable para todas las visualizaciones del reporte.

Árboles: de ni idea a experto en 1 hora

El machine learning está presente cada vez más en nuestros negocios y en nuestro día a día. Explicaremos y apoyándonos de ejemplos, los conceptos más básicos. De esta forma, podréis dejar de ver estas técnicas como una caja negra y llegar a comprenderlas mejor. Además, se mostrarán algunos casos de uso más avanzados.

Hadoop HDFS. Almacenamiento y consulta [Parte 2]

[et_pb_section fb_built=”1″ admin_label=”section” _builder_version=”3.22.3″][et_pb_row admin_label=”row” _builder_version=”3.22.3″ background_size=”initial” background_position=”top_left” background_repeat=”repeat”][et_pb_column type=”4_4″ _builder_version=”3.0.47″][et_pb_text admin_label=”Text” _builder_version=”3.0.74″ background_size=”initial” background_position=”top_left” background_repeat=”repeat”] ,Ya hemos…