Skip to content

Commit 392ed3c

Browse files
committed
fix(q-dev): check tx.Rollback error return to satisfy errcheck lint
1 parent 1e53e7c commit 392ed3c

1 file changed

Lines changed: 19 additions & 10 deletions

File tree

backend/plugins/q_dev/tasks/s3_logging_extractor.go

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -105,27 +105,36 @@ func ExtractQDevLoggingData(taskCtx plugin.SubTaskContext) errors.Error {
105105

106106
// Batch write to DB in a single transaction
107107
tx := db.Begin()
108+
var txErr errors.Error
108109
for _, r := range results {
109110
for _, chatLog := range r.ChatLogs {
110-
if err := tx.CreateOrUpdate(chatLog); err != nil {
111-
tx.Rollback()
112-
return errors.Default.Wrap(err, "failed to save chat log")
111+
if txErr = tx.CreateOrUpdate(chatLog); txErr != nil {
112+
break
113113
}
114114
}
115+
if txErr != nil {
116+
break
117+
}
115118
for _, compLog := range r.CompLogs {
116-
if err := tx.CreateOrUpdate(compLog); err != nil {
117-
tx.Rollback()
118-
return errors.Default.Wrap(err, "failed to save completion log")
119+
if txErr = tx.CreateOrUpdate(compLog); txErr != nil {
120+
break
119121
}
120122
}
121-
// Mark file as processed
123+
if txErr != nil {
124+
break
125+
}
122126
r.FileMeta.Processed = true
123127
now := time.Now()
124128
r.FileMeta.ProcessedTime = &now
125-
if err := tx.Update(r.FileMeta); err != nil {
126-
tx.Rollback()
127-
return errors.Default.Wrap(err, "failed to update file metadata")
129+
if txErr = tx.Update(r.FileMeta); txErr != nil {
130+
break
131+
}
132+
}
133+
if txErr != nil {
134+
if rbErr := tx.Rollback(); rbErr != nil {
135+
taskCtx.GetLogger().Error(rbErr, "failed to rollback transaction")
128136
}
137+
return errors.Default.Wrap(txErr, "failed to write logging batch")
129138
}
130139
if err := tx.Commit(); err != nil {
131140
return errors.Default.Wrap(err, "failed to commit batch")

0 commit comments

Comments
 (0)