diff --git a/database.go b/database.go
index 155a2444ad8f3f3b899b9724f8ad8cf8c06bdce0..2ad2aae7f99fa8a984e2f3e55ac0f6107294e90b 100644
--- a/database.go
+++ b/database.go
@@ -148,19 +148,12 @@ func update(job *JobPersistence, db *gorm.DB) error {
 			var stats JobStats
 			tx.Model(job.Stats).Where("job_id = ?", job.ID).
 				Assign(job.Stats).
-				Omit("job_id", "created_at").
 				FirstOrCreate(&stats)
 
-			//if tx.Error != nil {
-			//	return tx.Error
-			//}
-
-			//if err := tx.Model(job.Stats).
-			//	Select("*").
-			//	Omit("job_id", "created_at").
-			//	Updates(job.Stats).Error; err != nil {
-			//	return err // Fehler beim Update
-			//}
+			tx.Model(job.Stats).
+				Select("*").
+				Omit("job_id", "created_at").
+				Updates(job.Stats)
 		}
 
 		for i := range job.Logs {
diff --git a/manager.go b/manager.go
index de2bfda834c7f03fc169219b31f4b8eac1416c3e..4a9e63f58ff3d34316ee5cab88c50972d62c0831 100644
--- a/manager.go
+++ b/manager.go
@@ -249,7 +249,9 @@ func (m *Manager) ResetJobStats(id JobID) error {
 	m.mu.Lock()
 	defer m.mu.Unlock()
 
-	if _, ok := m.activeJobs[id]; !ok {
+	if job, ok := m.activeJobs[id]; ok {
+		job.ResetStats()
+	} else {
 		return ErrJobNotActive
 	}