Fui notificado de que a unidade de log de transações de uma instância SQL que gerencio está sendo preenchida. Comecei, descobri qual log de transações estava crescendo e fui ver por que o tlog estava crescendo. Olhando para sys.databases, a descrição de reutilização de log era active_transaction. Não é grande coisa, imaginei que poderia dar uma olhada e encontrar a sessão que executa a transação no banco de dados e descobrir os próximos passos. Este é um banco de dados de desenvolvimento, então presumi que um desenvolvedor deixou uma transação aberta e eu só precisaria entrar em contato e fechar a transação.
Agora vamos às coisas estranhas. Usei DBCC OPENTRAN para encontrar a transação aberta mais antiga no banco de dados, há duas curiosidades na saída.
- O ID da sessão está listado como 53s, nunca vi um ID de sessão com uma letra,
- O horário de início da transação é a partir de 03/11/2023, mas o servidor foi reiniciado em 06/11/2023.
Acho que posso colocar o banco de dados no modo de usuário único com reversão imediata e depois voltar ao modo multiusuário, e isso resolverá o problema. Estou adiando isso por enquanto, porque não entendo o que aconteceu, ou como e diabos as coisas acabaram assim.