Flyway 12.7.0: Обзор Обновления для QA

TL;DR

  • Расширенная поддержка баз данных и новых функций.
  • Критические исправления ошибок, повышающие стабильность миграций.
  • Новые опции конфигурации для более строгого контроля миграций.

Flyway, инструмент для миграции баз данных, выпустил версию 12.7.0, обновившись с 12.6.2. Это обновление сосредоточено на доработке существующих функций, улучшении совместимости и устранении сообщенных проблем. QA-командам, отслеживающим обновления инструментов, следует учесть эти изменения для своих стратегий тестирования. Полную информацию можно найти в официальных примечаниях к выпуску здесь.

Key Changes

Features:

  • Расширенная Поддержка Баз Данных: Flyway 12.7.0 включает улучшенную совместимость с определенными функциями новых версий баз данных, таких как PostgreSQL 16 и SQL Server 2022. Это обеспечивает лучшую обработку новых типов данных и функций, гарантируя более плавные миграции для современных сред баз данных.
  • Новая Опция Конфигурации: Добавлено новое свойство flyway.failOnMissingTarget. Оно позволяет настроить Flyway на явный сбой, если указанная версия target для миграции не найдена, обеспечивая более строгий контроль над процессами миграции.

Fixes:

  • Исправление Undo-миграций в Oracle: Устранена проблема, из-за которой undo-миграции могли завершаться сбоем в некоторых конфигурациях Oracle, особенно при специфических настройках пользовательских привилегий. Это повышает надежность сценариев отката.
  • Улучшенная Отчетность об Ошибках Валидации: Команда validate теперь предоставляет более четкие сообщения об ошибках, когда таблица истории схемы повреждена или находится в несогласованном состоянии, что способствует более быстрой диагностике и устранению проблем.
  • Стабильность Операции Clean в MySQL: Исправлена ошибка, из-за которой операция clean могла зависать на неопределенное время в определенных версиях MySQL при работе с очень большими схемами, что повышает стабильность инструмента.

Deprecations:

  • Устаревшие Свойства Placeholder: Свойства flyway.legacyPlaceholderPrefix и flyway.legacyPlaceholderSuffix теперь устарели. Пользователям рекомендуется перейти на стандартные flyway.placeholderPrefix и flyway.placeholderSuffix для обеспечения будущей совместимости.

Impact for QA Teams

QA-команды получают выгоду от более стабильных миграций баз данных, особенно благодаря исправлениям для операций undo и команд clean. Улучшенная отчетность об ошибках валидации сокращает время отладки. Новая опция flyway.failOnMissingTarget позволяет проводить более строгие проверки перед миграцией, повышая надежность тестовых сред и автоматизированных тестовых конвейеров.

FAQ

В: Является ли Flyway 12.7.0 крупным релизом? О: Нет, Flyway 12.7.0 — это минорный релиз, сфокусированный на улучшениях, исправлениях ошибок и повышении совместимости, а не на крупном изменении версии.

В: Следует ли нашей команде немедленно обновиться до 12.7.0? О: Ознакомьтесь с изменениями. Если ваша команда сталкивается с исправленными ошибками (например, проблемы с undo в Oracle, зависания clean в MySQL) или может использовать новые опции конфигурации, обновление рекомендуется.

В: Где я могу найти полный список изменений для 12.7.0? О: Полные примечания к выпуску доступны на официальном сайте документации Flyway: https://documentation.red-gate.com/flyway/release-notes-and-older-versions/release-notes-for-flyway-engine.