Fix meeting list and media search issues

This commit is contained in:
richjohnrambo
2026-08-29 09:46:50 +08:00
parent 78e6308174
commit 42916b85aa
7 changed files with 255 additions and 3 deletions
+16 -2
View File
@@ -113,9 +113,23 @@ func (a *adapter) getContextForTx() (context.Context, context.CancelFunc) {
return context.Background(), nil
}
func normalizeMySQLDSN(dsn string) string {
dsn = strings.TrimSpace(dsn)
if strings.HasPrefix(dsn, "mysql://") {
return strings.TrimPrefix(dsn, "mysql://")
}
if strings.HasPrefix(dsn, "mysql:") {
credentials, _, _ := strings.Cut(strings.TrimPrefix(dsn, "mysql:"), "@")
if strings.Count(credentials, ":") >= 1 {
return strings.TrimPrefix(dsn, "mysql:")
}
}
return dsn
}
func openMySQLDB(config configType, dsn, dbName string) (*sqlx.DB, string, error) {
if strings.TrimSpace(dsn) != "" {
cfg, err := ms.ParseDSN(strings.TrimPrefix(dsn, "mysql://"))
cfg, err := ms.ParseDSN(normalizeMySQLDSN(dsn))
if err != nil {
return nil, "", err
}
@@ -180,7 +194,7 @@ func (a *adapter) Open(jsonconfig json.RawMessage) error {
// Note: this method is deprecated.
if config.DSN != "" {
// Remove optional schema.
a.dsn = strings.TrimPrefix(config.DSN, "mysql://")
a.dsn = normalizeMySQLDSN(config.DSN)
} else {
a.dsn = defaultDSN
}