Skip to content

Commit 10839f0

Browse files
committed
feat(database/upgrade.UpgradeDBFrom3To4): set default for user reward
1 parent 207a8e6 commit 10839f0

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

pkg/database/upgrade/upgrade.go

+19
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import (
2222
"coursebench-backend/pkg/log"
2323
"coursebench-backend/pkg/models"
2424
"coursebench-backend/pkg/queries"
25+
2526
"gorm.io/gorm"
2627
)
2728

@@ -48,7 +49,11 @@ func UpgradeDB() {
4849
case 2:
4950
log.Println("Upgrading database version from 2 to 3...")
5051
UpgradeDBFrom2To3()
52+
fallthrough
5153
case 3:
54+
log.Println("Upgrading database version from 3 to 4...")
55+
UpgradeDBFrom3To4()
56+
case 4:
5257
default:
5358
log.Panicf("The version of database is: %d, which is newer than the backend.", metadata.DBVersion)
5459
}
@@ -106,3 +111,17 @@ func UpgradeDBFrom2To3() {
106111
log.Panicln(err)
107112
}
108113
}
114+
115+
func UpgradeDBFrom3To4() {
116+
db := database.GetDB()
117+
err := db.Transaction(func(tx *gorm.DB) error {
118+
err := tx.Model(&models.User{}).Where("reward is null").Update("reward", 0).Error
119+
if err != nil {
120+
return errors.Wrap(err, errors.DatabaseError)
121+
}
122+
return nil
123+
})
124+
if err != nil {
125+
log.Panicln(err)
126+
}
127+
}

0 commit comments

Comments
 (0)