From 955dbf3f10642e42ab467e2bcd3bf0629ac73b4a Mon Sep 17 00:00:00 2001 From: EJS00102 Date: Thu, 20 Nov 2025 10:30:08 +0200 Subject: [PATCH] Fixed null return for database discovery api --- apps/api/internal/connection/connection_config.go | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/apps/api/internal/connection/connection_config.go b/apps/api/internal/connection/connection_config.go index dafeec0..9a527a1 100644 --- a/apps/api/internal/connection/connection_config.go +++ b/apps/api/internal/connection/connection_config.go @@ -335,6 +335,11 @@ func (cm *ConnectionManager) DiscoverDatabases(config ConnectionConfig) ([]strin return nil, fmt.Errorf("unsupported database type for discovery: %s", config.Type) } + // Ensure we never return nil, always return an empty array + if databases == nil { + databases = []string{} + } + return databases, err } @@ -353,7 +358,7 @@ func (cm *ConnectionManager) discoverPostgresDatabases(db *sql.DB) ([]string, er } defer rows.Close() - var databases []string + databases := []string{} for rows.Next() { var dbName string if err := rows.Scan(&dbName); err != nil { @@ -379,7 +384,7 @@ func (cm *ConnectionManager) discoverMySQLDatabases(db *sql.DB) ([]string, error } defer rows.Close() - var databases []string + databases := []string{} for rows.Next() { var dbName string if err := rows.Scan(&dbName); err != nil { @@ -400,7 +405,7 @@ func (cm *ConnectionManager) discoverMongoDBDatabases(client *mongo.Client) ([]s } // Filter out system databases - var filtered []string + filtered := []string{} for _, db := range databases { if db != "admin" && db != "local" && db != "config" { filtered = append(filtered, db)