diff --git a/atdb/taskdatabase/models.py b/atdb/taskdatabase/models.py
index 49e9aaae7147c01c3931ebe2d73d8e617c0e5f05..954f70e146b85b27fb51fb4205e8f64b870f3ae0 100644
--- a/atdb/taskdatabase/models.py
+++ b/atdb/taskdatabase/models.py
@@ -2,6 +2,7 @@ from django.db import models
 from django.urls import reverse
 from django.utils import timezone
 from django.utils.timezone import datetime, timedelta
+from django.core.exceptions import MultipleObjectsReturned
 from django.conf import settings
 import json
 import logging
@@ -609,11 +610,20 @@ class Monitor(models.Model):
         # in the LatestMonitor, and update if it is newer.
         try:
             latestMonitor = LatestMonitor.objects.get(name=self.name,hostname=self.hostname)
+
+        except MultipleObjectsReturned as e:
+            # it has happened that latest_monitoring objects failed to delete, 
+            # which leads to a growing database and failure of the 'Hold' button on the Monitoring screen.
+            LatestMonitor.objects.all().delete()
+        
+        try:
             # carry over the metadata, if possible
             latest_metadata = latestMonitor.metadata
             latestMonitor.delete()
-        except:
-            pass
+
+        except Exception as error:
+            print(error)
+            
 
         # this combination of name and hostname didn't yet exist, create it.
         metadata = self.metadata
diff --git a/atdb/taskdatabase/templates/taskdatabase/index.html b/atdb/taskdatabase/templates/taskdatabase/index.html
index 35a46bfd0f2ad11b1652b01fa2cdb834d8545a12..ca199e45770330c0d192606c5f34c2fc19067158 100644
--- a/atdb/taskdatabase/templates/taskdatabase/index.html
+++ b/atdb/taskdatabase/templates/taskdatabase/index.html
@@ -31,7 +31,7 @@
             {% include 'taskdatabase/pagination.html' %}
         </div>
     </div>
-    <p class="footer"> Version 22 Feb 2024
+    <p class="footer"> Version 23 Feb 2024
 </div>
 
 {% include 'taskdatabase/refresh.html' %}