|
|
@@ -113,7 +113,7 @@ class MigrationEntity(val passwordEncoder: PasswordEncoder, val queryNativeServi
|
|
|
}
|
|
|
} else {
|
|
|
val chunkData = rootData
|
|
|
-// .take(10)
|
|
|
+// .take(50)
|
|
|
.chunked(1000)
|
|
|
logger.info("data migration class ${clazz.simpleName} chunk data ${chunkData.size}")
|
|
|
chunkData.forEachIndexed { _, data ->
|
|
|
@@ -129,6 +129,8 @@ class MigrationEntity(val passwordEncoder: PasswordEncoder, val queryNativeServi
|
|
|
uniqueFieldId
|
|
|
)
|
|
|
}.map { postProcessPassword(it) }
|
|
|
+// dataMap.forEach { dm -> println(Util.mapper.writeValueAsString(dm)) }
|
|
|
+
|
|
|
queueInsertData.put((clazz as Class<out BaseEntity>) to dataMap)
|
|
|
}
|
|
|
}
|
|
|
@@ -144,7 +146,7 @@ class MigrationEntity(val passwordEncoder: PasswordEncoder, val queryNativeServi
|
|
|
if (historyData == null || uniqueFieldId == null) return null
|
|
|
return historyData
|
|
|
.groupBy { if (byId) it[uniqueFieldId] else it[uniqueField] }
|
|
|
- .mapValues { (_, items) ->
|
|
|
+ .mapValues { (_, items) ->k
|
|
|
items.maxByOrNull {
|
|
|
it[uniqueFieldId.removePrefix("history.")]
|
|
|
?.toString()
|
|
|
@@ -244,7 +246,9 @@ class MigrationEntity(val passwordEncoder: PasswordEncoder, val queryNativeServi
|
|
|
"migration read query data ${result.value.size} takes time " +
|
|
|
"${result.duration.inWholeMilliseconds}ms"
|
|
|
)
|
|
|
- return result.value
|
|
|
+ return if (file.name.contains("trunk_history")) {
|
|
|
+ result.value.filter { f -> f.get("trunk_number")?.toString()?.let { t -> t != "new trunk"} ?: true }
|
|
|
+ } else result.value
|
|
|
}
|
|
|
|
|
|
fun readQueryExample(sql: String): Map<String, Any?> {
|