diff --git a/src/main/java/com/actiontech/dble/backend/heartbeat/MySQLDetector.java b/src/main/java/com/actiontech/dble/backend/heartbeat/MySQLDetector.java index 54f545184..2526145a7 100644 --- a/src/main/java/com/actiontech/dble/backend/heartbeat/MySQLDetector.java +++ b/src/main/java/com/actiontech/dble/backend/heartbeat/MySQLDetector.java @@ -153,7 +153,12 @@ public class MySQLDetector implements SQLQueryResultListener= VersionUtil.getMajorVersion(SystemConfig.getInstance().getFakeMySQLVersion()); if (!isMatch && isThrowException) { - throw new ConfigException("the dble version[=" + SystemConfig.getInstance().getFakeMySQLVersion() + "] cannot be higher than the minimum version of the backend " + type + " node,pls check the backend " + type + " node."); + throw new ConfigException("this dbInstance[=" + instance.getConfig().getUrl() + "]'s version[=" + version + "] cannot be lower than the dble version[=" + SystemConfig.getInstance().getFakeMySQLVersion() + "],pls check the backend " + type + " node."); } return isMatch; } @@ -443,8 +443,8 @@ public final class ConfigUtil { public static void checkDbleAndMysqlVersion(List changeItemList, ConfigInitializer newConfigLoader) { List needCheckVersionList = changeItemList.stream() - //add dbInstance or add dbGroup or add shardingNode or (update dbInstance and need testConn) or (update rwSplitUser and affectEntryDbGroup=true) or update shardingNode - .filter(changeItem -> ((changeItem.getItemType() == ChangeItemType.PHYSICAL_DB_INSTANCE || changeItem.getItemType() == ChangeItemType.PHYSICAL_DB_GROUP || changeItem.getItemType() == ChangeItemType.SHARDING_NODE) && changeItem.getType() == ChangeType.ADD) || + //add dbInstance/dbGroup/rwSplitUser/shardingNode or (update dbInstance and need testConn) or (update rwSplitUser and affectEntryDbGroup=true) or update shardingNode + .filter(changeItem -> (changeItem.getType() == ChangeType.ADD) || (changeItem.getItemType() == ChangeItemType.PHYSICAL_DB_INSTANCE && changeItem.getType() == ChangeType.UPDATE && changeItem.isAffectTestConn()) || (changeItem.getItemType() == ChangeItemType.USERNAME && changeItem.getType() == ChangeType.UPDATE && changeItem.isAffectEntryDbGroup()) || (changeItem.getItemType() == ChangeItemType.SHARDING_NODE && changeItem.getType() == ChangeType.UPDATE)) @@ -470,7 +470,7 @@ public final class ConfigUtil { ShardingNode shardingNode = (ShardingNode) item; PhysicalDbGroup dbGroup = shardingNode.getDbGroup(); checkDbGroupVersion(dbGroup); - } else if (changeItem.getItemType() == ChangeItemType.USERNAME && changeItem.isAffectEntryDbGroup()) { + } else if (changeItem.getItemType() == ChangeItemType.USERNAME) { RwSplitUserConfig rwSplitUserConfig = (RwSplitUserConfig) newConfigLoader.getUsers().get(item); PhysicalDbGroup dbGroup = newConfigLoader.getDbGroups().get(rwSplitUserConfig.getDbGroup()); checkDbGroupVersion(dbGroup);