Pensamento aleatório ...
O código de saída para o procedimento armazenado é diferente de zero? Por exemplo, a instrução RETURN dá @@ ROWCOUNT ou similar.
Eu vi semelhante há muito tempo atrás com trabalhos de agente SQL ... pre SSIS embora
Estou tendo um problema com um plano de manutenção no SQL Server 2005. É um plano de manutenção muito básico - ele tem um 'Execute T-SQL Statement Task' que simplesmente insere uma linha em uma tabela.
Quando executo o plano de manutenção, a instrução T-SQL é executada e a linha é inserida na tabela, mas recebo uma caixa de mensagem exibindo o seguinte:
Execução falhou. Consulte o plano de manutenção e os logs do histórico de tarefas do SQL Server Agent para obter detalhes.
INFORMAÇÕES ADICIONAIS:
O trabalho 'CobraTest.Subplan_1' falhou. (SqlManagerUI)
BOTÕES:
Isso acontece quando eu executo o plano de manutenção manualmente no SQL Server Management Studio indo em Gerenciamento - > Planos de manutenção - > Clique com o botão direito - > Executar e também quando eu agendar através do SQL Server Agent.
Existem outros Planos de Manutenção no servidor, que funcionam corretamente, tanto manualmente quanto agendados.
Uma coisa sobre a qual estou curioso é que o trabalho agendado do SQL Server Agent estava sendo executado ok, falhou por algumas noites, depois foi executado por algumas noites e agora está falhando novamente e não houve intervenção ou alterações para o servidor SQL que me faz pensar que poderia ser alguém mudar as coisas em outro lugar na rede?
Alguma sugestão?
Pensamento aleatório ...
O código de saída para o procedimento armazenado é diferente de zero? Por exemplo, a instrução RETURN dá @@ ROWCOUNT ou similar.
Eu vi semelhante há muito tempo atrás com trabalhos de agente SQL ... pre SSIS embora
Você abriu o histórico de trabalhos para visualizar a mensagem de erro? Certifique-se de expandir a entrada do histórico e ver a mensagem a partir da etapa atual da tarefa.
Uma causa comum para falsos negativos é Avisos durante a execução. Por exemplo, a antiga mensagem "Aviso: valor nulo é eliminado por um agregado ..." geralmente faz com que os trabalhos do SSIS relatem falhas (dependendo da configuração escolhida para o número permitido de avisos).
Se o SQL real em execução não for dinâmico, execute-o manualmente em uma janela de consulta e verifique os resultados lá.
Eu não tenho uma resposta definitiva para isso, mas o servidor está executando o SQL Server 2005 com SP1. Minha máquina cliente a partir da qual eu estava conectando usando o Managament Studio está executando o SP2. Quando eu crio o plano de manutenção no servidor (por meio dos serviços de terminal), ele é executado com êxito. Quando eu crio o plano de manutenção na minha máquina (conectado ao servidor), ele falha.
Isso exigirá uma investigação mais aprofundada, porque eu normalmente usaria essa mesma máquina cliente para trabalhar nos servidores SP1 e SP2, mas, nesse caso, não parece ser uma boa ideia.