Любой. У вас течь в коде (если вы в блоке обработки ошибки getbyid делаете return) или у вас потеря ошибки если не делаете и close падает (напомню что sql некорректный и getbyid всегда ошибку даёт)
я не корректно вставил пример: db, err := mysql.Connect() if err != nil { // тут ошибки mysql.Connect } defer func() { err := db.Close() if err != nil { // тут только db.Close } }(db) err := getByID() if err != nil { // тут ошибки getByID }
Вы теряете ошибки getbyid
не теряю, они будут прокинуты в err (локалная переменная)
Короче с тел неудобно, вот нашел вам: https://habr.com/ru/companies/piter/articles/763874/ +Комменты
еще раз, у меня нет никаких утечек в коде
В этом кода да, а выше defer стоял после getbyid
Обсуждают сегодня