O que são esses sistemas.Sp * procedimentos armazenados fazendo?
- a duração é muito alta em relação a outras linhas. Tenho valores tão altos como 37.698 e tão baixos como 1734. No sistema "rápido" a duração máxima (para toda a chamada SP) é de 259. São executados por duas bases de dados relacionadas com a que contém o SP que estou a correr. (Este SP faz chamadas através de servidores ligados a estas duas bases de dados). São execuções de um dos seguintes sistemas. SPs:
- sp_tables_info_90_rowset
- sp_ check_ constbytable_rowset
- sp_columns_90_rowset
- sp_table_ statistics2_rowset
- sp_indexes_90_rowset
6 answers
Tente actualizar manualmente as estatísticas nessa tabela.
UPDATE STATISTICS [TableName]
Depois verifique se a opção da base de dados para AutoUpdateStatistics é verdadeira. Mesmo que seja, no entanto, eu vi casos em que a adição de grandes quantidades de dados a uma tabela nem sempre faz com que as estatísticas para atualizar em tempo hábil, e consultas podem ser lentas.
Estas são as tabelas criadas quando você ligou as chamadas do servidor. Estas são chamadas tabelas de trabalho criadas no Tempdb. Eles são criados automaticamente pelo motor de banco de dados para operações temporárias, como Spooling etc.
Não estou familiarizado com esses procedimentos específicos, mas pode tentar correr:
SELECT object_definition(object_id('Procedure Name'))
Para ter uma ideia melhor do que se passa debaixo do capô.
Última reconstrução do Índice? Última actualização das estatísticas?
Caso contrário, estes procs armazenados também são usados pelo Cliente do servidor SQL... não? E provavelmente não causará estes erros.