-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Open
Labels
bugIt is confirmed a bug, but don't worry, we'll handle it.It is confirmed a bug, but don't worry, we'll handle it.
Description
Go version
1.24.7
GoFrame version
2.9.0
Can this bug be reproduced with the latest release?
Option Yes
What did you do?
背景:db从sqlite连接迁移到mysql,不采用配置文件读取数据库信息,会导致明文信息泄露
问题:
gf框架有g.DB()和gdb.Instance()两种创建DB实例的方法,但只对外提供gdb.SetConfigGroup方法进行切换db配置,而这只影响gdb.Instance()的缓存,不会影响g.DB()的缓存。
故使用g.DB()还会得到sqlite的实例。
代码:
https://go.dev/play/p/8NaL-ZnnwSD
What did you see happen?
gf框架有g.DB()和gdb.Instance()两种创建DB实例的方法,但只对外提供gdb.SetConfigGroup方法进行切换db配置,而这只影响gdb.Instance()的缓存,不会影响g.DB()的缓存。
故使用g.DB()还会得到sqlite的实例。
代码:
https://go.dev/play/p/8NaL-ZnnwSD
What did you expect to see?
gdb.SetConfigGroup修改后,g.DB()和gdb.Instance()都应该加载最新的配置。
g.DB()的缓存和gdb的缓存进行统一,且可以通过gdb.SetConfigGroup进行配置覆盖,实现真正的热加载db。
或者提供g.DB()的缓存更新的方法。
Metadata
Metadata
Assignees
Labels
bugIt is confirmed a bug, but don't worry, we'll handle it.It is confirmed a bug, but don't worry, we'll handle it.