Drop function if already exists and conflict

This commit is contained in:
2019-09-20 02:27:15 +02:00
parent 88c45aaf77
commit 8810c1f08d
7 changed files with 60 additions and 11 deletions

View File

@@ -137,7 +137,8 @@ data class Migrations private constructor(
fun addFunction(newDefinition: DefinitionFunction, callback: (Function) -> Unit = {}): Migrations {
val currentFunction = functions[newDefinition.name]
if (currentFunction === null || currentFunction `is different from` newDefinition) {
functions[newDefinition.name] = Function(newDefinition, newDefinition, connection).apply {
val oldDefinition = functions[newDefinition.name]?.up ?: newDefinition
functions[newDefinition.name] = Function(newDefinition, oldDefinition, connection).apply {
doExecute = Action.UP
}
} else {