fix: 按完成时刻分批清理并限制读连接池
This commit is contained in:
@@ -239,8 +239,8 @@ func FinalizeMessageTx(tx *sql.Tx, seq int64, wantReceipt bool, senderID, endpoi
|
||||
return err
|
||||
}
|
||||
}
|
||||
if _, err := tx.Exec(`UPDATE messages SET state = ?, reason = CASE WHEN ? != '' THEN ? ELSE reason END WHERE seq = ?`,
|
||||
StateCompleted, msgReason, msgReason, seq); err != nil {
|
||||
if _, err := tx.Exec(`UPDATE messages SET state = ?, reason = CASE WHEN ? != '' THEN ? ELSE reason END, completed_at = ? WHERE seq = ?`,
|
||||
StateCompleted, msgReason, msgReason, nowMs, seq); err != nil {
|
||||
return err
|
||||
}
|
||||
if _, err := tx.Exec(`DELETE FROM message_bodies WHERE seq = ?`, seq); err != nil {
|
||||
|
||||
Reference in New Issue
Block a user