我正在尝试将gorm用作应用程序的ORM,但gorm.Open
似乎永远不会返回,这使我的应用程序挂起。我的测试用例和我在网上看到的所有示例之间的唯一区别是我的测试用例连接到AWS框,而所有其他连接到本地Postgres实例。那有关系吗?
我的代码是:
func initDB() {
var err error
db, err := gorm.Open("postgres", "host=something.rds.amazonaws.com user=awsuser dbname=db sslmode=disable password=awspassword")
if err != nil {
panic(err)
}
log.Printf("Connected")
defer db.Close()
}
我已尝试切换sslmode
,我尝试使用postgres连接字符串(直接从postgres客户端拉出以使其有效),我尝试切换到sql.Open
。我不知道还有什么可以尝试的。 FWIW我可以看到我的请求都没有击中AWS。
答案 0 :(得分:0)
问题不在我上面发布的代码块中,而是在调用main
的{{1}}函数中。对initDB
的调用是在initDB
后永久阻止的。