Наше приложение использует hibernate3 с серверной платформой SQL Server 2005.Hibernate настроен на обновление структуры БД при запуске (свойство hibernate.hbm2ddl.auto для обновления).
С прошлой недели возникла проблема, что приложение запускается очень медленно.Также, если проверять БД, то нет всех необходимых индексов, которые должен создавать hibernate.
Если установить hibernate.hbm2ddl.auto для проверки, приложение запускается быстро, но это не решение, такое как мы часто меняем структуру данных (приложение находится в разработке).DBCC CHECKDB
для базы данных не выдает предупреждений.Также hibernate не сообщает об ошибках.
Если восстановить предыдущую версию базы данных недели назад, проблема исчезнет.Приложение запускается быстро, но я все еще не вижу все необходимые индексы.Кроме того, у нас много новых данных с тех пор, как эта дата была введена, и мы не хотим ее потерять.Как найти причину столь странного поведения?Что может быть повреждено в БД, что не позволяет создавать все индексы.
UPD .: После обновления hibernate на более новые версии проблема с индексами исчезла.Но запуск все еще медленный.В журнале я вижу, что самая медленная часть - это проверка метаданных таблицы с помощью hibernate.В чем может быть причина?