You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Oct 28, 2024. It is now read-only.
环境: 使用最新dev分支在本地调试, mysql8
举个例子:
先使用一个错误密码(其他配置均正确)添加添加一个数据源,此时建立连接。
连接建立失败,但是此时的dataSource信息会被缓存到DataSourceManager的DATA_SOURCE_MAP里面
修改这个错误连接,把密码改成正确的密码,再次连接,还是无法正确连接数据库。
分析原理:
如上图所示,只有!connectInfo.equals(dataSource.getConnectInfo()) == false才会移除旧的数据源信息
equals方法里最主要的依据是gmtModified,也就是上次修改时间。
但是在获取最新的connectInfo方法(ConnectionInfoHandler#toInfo()),并没有把gmtModified设置进去。
所以!connectInfo.equals(dataSource.getConnectInfo()) 为永真式
这样就会出现上面那个问题
The text was updated successfully, but these errors were encountered: