1.3 Solution for Errors/Exceptions

This topic describes about solution for errors/exceptions on flyway deployments.

  • At first for each case,, the service through Plato-configuration-service should be checked to see if it is suggesting the correct scheme via the plato-config-service.
  • After checking that it is to be ensured for that particular APPLICATION, the following entries are present in the PROPERTIES table in the plato Schema.

    Table 1-1 Properties Table

    BEAN PROPERTY SET NEED TO BE PRESENT
    executeDomain flyway.domain.db.*
    executePlato flyway.plato.db.*
    executePlatoSec flyway.platosec.db.*
    executePlatoUI flyway.platoui.db.*
    executeSms flyway.sms.db.*
    executeCmc flyway.cmc.db.*
    executeMidofcmc flyway.domain.db.*
    executePlatofeed flyway.platofeed.db.*
    executePlatobatch flyway.platobatch.db.*
    executePlatoorch flyway.platoorch.db.*

Depending on whether for the flyway db connection, JNDI name is being used or the JDBC URL and other details are used, each property set will look as follows:

CASE 1: USING JDBC
flyway.domain.db.username
flyway.domain.db.password
flyway.domain.db.jdbcUrl
flyway.domain.db.driver-class-name
flyway.domain.schemas
flyway.domain.locations
flyway.domain.placeholderReplacement
flyway.domain.ignoreMissingMigrations
flyway.domain.outOfOrder
CASE 2: USING JNDI
flyway.domain.db.jndi
flyway.domain.schemas
flyway.domain.locations
flyway.domain.placeholderReplacement
flyway.domain.ignoreMissingMigrations
flyway.domain.outOfOrder
flyway.jndi.datasource.enabled

In each case, make sure that all the relevant placeholders are available in the scripts in the respective locations.

Error Description:
No value provided for placeholder: ${eureka.host}. Check your configuration!

In the example above, an error occurred due to the absence of passing the following parameter in the properties table:

flyway.domain.placeHolders.eureka.host

Solution:

Similarly, any placeholder where the error occurred must pass to the environment through the properties table or the command line arguments (as -D parameters).