From ff8c18e0f482b7444d2546236d4c3bf6d08ccec7 Mon Sep 17 00:00:00 2001 From: Deluan Date: Sun, 2 Feb 2020 21:29:27 -0500 Subject: [PATCH] fix: don't log empty sql responses as errors --- persistence/sql_base_repository.go | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/persistence/sql_base_repository.go b/persistence/sql_base_repository.go index 16d8c591..7b7aa662 100644 --- a/persistence/sql_base_repository.go +++ b/persistence/sql_base_repository.go @@ -85,10 +85,11 @@ func (r sqlRepository) queryOne(sq Sqlizer, response interface{}) error { return err } err = r.ormer.Raw(query, args...).QueryRow(response) - r.logSQL(query, args, err, 1) if err == orm.ErrNoRows { + r.logSQL(query, args, nil, 1) return model.ErrNotFound } + r.logSQL(query, args, err, 1) return err } @@ -98,26 +99,19 @@ func (r sqlRepository) queryAll(sq Sqlizer, response interface{}) error { return err } c, err := r.ormer.Raw(query, args...).QueryRows(response) - r.logSQL(query, args, err, c) if err == orm.ErrNoRows { + r.logSQL(query, args, nil, c) return model.ErrNotFound } + r.logSQL(query, args, nil, c) return err } func (r sqlRepository) exists(existsQuery SelectBuilder) (bool, error) { - existsQuery = existsQuery.Columns("count(*) as count").From(r.tableName) - var res struct{ Count int64 } - query, args, err := existsQuery.ToSql() - if err != nil { - return false, err - } - err = r.ormer.Raw(query, args...).QueryRow(&res) - if err == orm.ErrNoRows { - err = nil - } - r.logSQL(query, args, err, res.Count) - return res.Count > 0, err + existsQuery = existsQuery.Columns("count(*) as exist").From(r.tableName) + var res struct{ Exist int64 } + err := r.queryOne(existsQuery, &res) + return res.Exist > 0, err } func (r sqlRepository) count(countQuery SelectBuilder, options ...model.QueryOptions) (int64, error) {