8000
Skip to content

生成代码时,会选择错误的数据库连接,导致 panic 报错退出。 #235

Description

@piaohua

生成代码时,会选择错误的数据库连接,导致 panic 报错退出。

版本 VersionApp = "2.18.9"

panic错误信息如下,其中 hotgo.order 是另一个连接库中的表,生成代码时选择的表:

2026-07-01T10:54:57.371+08:00 [DEBU] {08f46fb5e80abe18cd80325a322d9caf} D:/hotgo/server/internal/logic/admin/menu.go:303: [  7 ms] [default] [hotgo] [rows:207] SELECT id,pid,level,tree,title,name,path,icon,type,redirect,permissions,permission_name,component,always_show,active_menu,is_root,is_frame,frame_src,keep_alive,hidden,affix,sort,remark,status,updated_at,created_at FROM hg_admin_menu
fetching tables fields failed for table "order": SHOW FULL COLUMNS FROM order: Error 1146 (42S02): Table 'hotgo.order' doesn't exist
1. SHOW FULL COLUMNS FROM order
   1).  hotgo/internal/library/hggen/internal/cmd/gendao.generateDaoSingle
        D:/hotgo/server/internal/library/hggen/internal/cmd/gendao/gendao_dao.go:65
   2).  hotgo/internal/library/hggen/internal/cmd/gendao.generateDao
        D:/hotgo/server/internal/library/hggen/internal/cmd/gendao/gendao_dao.go:40
   3).  hotgo/internal/library/hggen/internal/cmd/gendao.doGenDaoForArray
        D:/hotgo/server/internal/library/hggen/internal/cmd/gendao/gendao.go:282
   4).  hotgo/internal/library/hggen.Dao
        D:/hotgo/server/internal/library/hggen/hggen.go:62
   5).  hotgo/internal/library/hggen/views.(*gCurd).DoBuild
        D:/hotgo/server/internal/library/hggen/views/curd.go:436
   6).  hotgo/internal/library/hggen.Build
        D:/hotgo/server/internal/library/hggen/hggen.go:263
   7).  hotgo/internal/logic/sys.(*sSysGenCodes).Build
        D:/hotgo/server/internal/logic/sys/gen_codes.go:346
   8).  hotgo/internal/controller/admin/sys.(*cGenCodes).Build
        D:/hotgo/server/internal/controller/admin/sys/gen_codes.go:135
   9).  hotgo/internal/logic/middleware.(*sMiddleware).Develop
        D:/hotgo/server/internal/logic/middleware/limit_develop.go:42
   10). hotgo/internal/logic/middleware.(*sMiddleware).AdminAuth
        D:/hotgo/server/internal/logic/middleware/admin_auth.go:52
   11). hotgo/internal/logic/middleware.(*sMiddleware).ResponseHandler
        D:/hotgo/server/internal/logic/middleware/response.go:23
   12). hotgo/internal/logic/middleware.(*sMiddleware).PreFilter
        D:/hotgo/server/internal/logic/middleware/pre_filter.go:65
   13). hotgo/internal/logic/middleware.(*sMiddleware).DemoLimit
        D:/hotgo/server/internal/logic/middleware/init.go:117
   14). hotgo/internal/logic/middleware.(*sMiddleware).Blacklist
        D:/hotgo/server/internal/logic/middleware/limit_blacklist.go:20
2. Error 1146 (42S02): Table 'hotgo.order' doesn't exist

多次出现过,还没有稳定复现,有可能是频繁重启服务,然后点击生成代码出现。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

    0