diff --git a/internal/db/models/sys_locker_dao.go b/internal/db/models/sys_locker_dao.go index 232fe10c..76448fa7 100644 --- a/internal/db/models/sys_locker_dao.go +++ b/internal/db/models/sys_locker_dao.go @@ -138,6 +138,7 @@ func (this *SysLockerDAO) Increase(tx *dbs.Tx, key string, defaultValue int64) ( return result, err } err := this.Query(tx). + Reuse(false). // no need to prepare statement in every transaction InsertOrUpdateQuickly(maps.Map{ "key": key, "version": defaultValue, @@ -148,6 +149,7 @@ func (this *SysLockerDAO) Increase(tx *dbs.Tx, key string, defaultValue int64) ( return 0, err } return this.Query(tx). + Reuse(false). // no need to prepare statement in every transaction Attr("key", key). Result("version"). FindInt64Col(0) diff --git a/internal/db/models/sys_locker_dao_test.go b/internal/db/models/sys_locker_dao_test.go index 70af37bc..2df3c5d2 100644 --- a/internal/db/models/sys_locker_dao_test.go +++ b/internal/db/models/sys_locker_dao_test.go @@ -26,6 +26,21 @@ func TestSysLockerDAO_Lock(t *testing.T) { } } +func TestSysLocker_Increase_SQL(t *testing.T) { + var dao = NewSysLockerDAO() + value, err := dao.Read(nil, "hello") + if err != nil { + t.Fatal(err) + } + t.Log("before:", value) + v, err := dao.Increase(nil, "hello", 0) + if err != nil { + t.Log("err:", err) + return + } + t.Log("after:", v) +} + func TestSysLocker_Increase(t *testing.T) { dbs.NotifyReady()