! 👋 На связи Паша, ваш куратор и специалист в мире Oracle. Сегодня будет пост про релизы PL/SQL-кода на высоконагруженных системах и то, какие возможности для снижения Downtime предлагает Oracle. Итак, поехали 🚀 Зачем катить "на горячую"❓ Идеальный мир — это плановые релизы раз в 2 недели. В реальности же мы можем столкнуться с критическим багом, который не сможет "дожить до понедельника". Риски при классическом накате 1. ORA-04021 (ожидание блокировки) — пакет кто-то выполняет, вы висите в ожидании, время релиза увеличивается. ⏳ 2. ORA-04068 (existing state discarded) — пакет скомпилировался, но у активных сессий "сбросилось" состояние. 3. Каскадная инвалидация зависимых объектов. Какие есть варианты❓ • Установить ddl_lock_timeout: в некоторых случаях может помочь, но не является best practice. • Технологические окна (даунтайм): гасим приложение, выгоняем пользователей, накатываем, поднимаем. Круто, но не всегда доступно. Есть риск отказа. • Решения наподобие Oracle GoldenGa