Приложение компилируется 8-10 минут, через "компилировать все", режим разработки в базе данных.
Кто знает, с чем может быть связано и как ускорить процесс?
Нравится
Денис, время компиляции увеличилось из-за длительной генерации статического контента. Это происходит с версии 7.11.
При «компилировать всё» на БД MS SQL, на коробке, продукт бандл, процедура должна занимать в среднем 5 минут, что считается приемлемым.
При «компилировать всё» на БД Oracle, на коробке, продукт бандл, процедура иногда может занимать ~ 30 минут, что планируется решить.
На продолжительность процесса компиляции может влиять очень много факторов.
Но, возможно, выявить причины проблемы Вам поможет информация по структуре процесса компиляции.
Процесс компиляции приблизительно выглядит так (значимая часть):
- Происходит поиск всех измененных схем (по сути поиск происходит только в пакетах, которые установлены из SVN, то есть являются «разлоченными»)
- Проходит анализ на построение цепочки компиляции. Анализируется каждая схема:
- Если схема является новой (не замещённой) - компилируется только пакет, в котором эта схема находится
- Если схема является замещённой - компилируется вся цепочка наследования.
В последнем пункте обычно и кроется проблема.
Ещё вопросы о причинах (ресурсы сервера, размер БД) и способе минимизации времени (компилировать только нужное) обсуждаются в этой теме.
Зверев Александр,
Спасибо, получается чем больше наследований, тем дольше компиляция?
Используйте производительное железо. Быстрый процессор, достаточное количество оперативной памяти и ssd чем быстрее тем лучше.