|
|
|
@ -116,9 +116,6 @@ public class SqlDatabaseUpgradeService implements DatabaseEntitiesUpgradeService |
|
|
|
@Autowired |
|
|
|
private TenantService tenantService; |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private UserService userService; |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private TenantRepository tenantRepository; |
|
|
|
|
|
|
|
@ -710,34 +707,6 @@ public class SqlDatabaseUpgradeService implements DatabaseEntitiesUpgradeService |
|
|
|
} catch (Exception e) { |
|
|
|
} |
|
|
|
|
|
|
|
PageLink pageLink = new PageLink(1000); |
|
|
|
PageData<User> users; |
|
|
|
do { |
|
|
|
List<ListenableFuture<?>> futures = new ArrayList<>(); |
|
|
|
users = userService.findAllUsers(pageLink); |
|
|
|
for (User user : users.getData()) { |
|
|
|
futures.add(dbUpgradeExecutor.submit(() -> { |
|
|
|
try { |
|
|
|
log.info("Migrating password history for user: " + user.getId()); |
|
|
|
JsonNode additionalInfo = user.getAdditionalInfo(); |
|
|
|
if (additionalInfo != null && additionalInfo.has("userPasswordHistory")){ |
|
|
|
UserCredentials creds = userService.findUserCredentialsByUserId(user.getTenantId(), user.getId()); |
|
|
|
if (creds != null) { |
|
|
|
creds.setAdditionalInfo(JacksonUtil.newObjectNode().set("userPasswordHistory", additionalInfo.get("userPasswordHistory"))); |
|
|
|
userService.saveUserCredentials(user.getTenantId(), creds); |
|
|
|
} |
|
|
|
((ObjectNode) additionalInfo).remove("userPasswordHistory"); |
|
|
|
userService.saveUser(user); |
|
|
|
} |
|
|
|
} catch (Exception e){ |
|
|
|
log.error("Failed to migrate password history for user: " + user.getId(), e); |
|
|
|
} |
|
|
|
})); |
|
|
|
} |
|
|
|
Futures.allAsList(futures).get(); |
|
|
|
pageLink = pageLink.nextPageLink(); |
|
|
|
} while (users.hasNext()); |
|
|
|
|
|
|
|
conn.createStatement().execute("UPDATE tb_schema_settings SET schema_version = 3005000;"); |
|
|
|
} |
|
|
|
log.info("Schema updated."); |
|
|
|
|