sql >> Databáze >  >> RDS >> PostgreSQL

BeanCreationException:Chyba při vytváření beanu s názvem 'flywayInitializer'

Zdá se, že testovací kontejner s databází byl úspěšně spuštěn, takže žádný problém, získáváte prázdnou databázi.

Pak se pokusíte spustit flyway a to se nezdaří. Flyway v jarním spouštění funguje během inicializace jarního aplikačního kontextu, takže skutečná migrace běží, zatímco je inicializován kontext aplikace, takže selhání migrace vypadá jako jarní selhání.

Důvod je však zaznamenán:migrační soubor má neplatný obsah:

Migration V1__initial_user.sql failed
-------------------------------------
SQL State  : 42601
Error Code : 0
Message    : ERROR: syntax error at or near "GENERATED"
 Position: 45
Location   : db/migration/V1__initial_user.sql (/Users/villemossip/Desktop/GRP/GRP- 
SAS/application/build/resources/main/db/migration/V1__initial_user.sql)
Line       : 36
Statement  : CREATE TABLE revinfo
(
   rev      INTEGER GENERATED BY DEFAULT AS IDENTITY ( START WITH 1 ),
   revtstmp BIGINT,
   PRIMARY KEY (rev)
)

Toto GENERATED BY není podporováno.

Proč? Váš obrázek dockeru pravděpodobně obsahuje verzi RDBMS, která tuto syntaxi nepodporuje. Liší se tedy od databáze, kterou používáte v místním prostředí bez dockeru.

V každém případě to není o dockeru, pružině nebo průletu, ale o DB a migračním kódu.

Pokud jde o rozlišení, doporučuji spustit přímo docker image DB (bez javy, testovacích kontejnerů a flyway). Až to poběží, spusťte tuto migraci "ručně" v pgadmin nebo tak něco. Očekává se, že uvidíte stejnou chybu.



  1. Analýza statistik tabulky PostgreSQL

  2. Transformujte data ODBC v CloverDX

  3. Připojení k místní databázi SQL Server pomocí C#

  4. Spotlight Cloud Alarms Collection Times