diff --git a/gracedb/translator.py b/gracedb/translator.py
index 163ac604741657604682f173ef19c0faaa697cf1..61ec1a99a24266a8595fc3cf3506bc9c67662a27 100644
--- a/gracedb/translator.py
+++ b/gracedb/translator.py
@@ -30,7 +30,13 @@ def handle_uploaded_data(event, datafilename,
     if event.analysisType in [ 'HM', 'LM' ]:
         log_comment = "Log File Created"
         # Wildly speculative wrt HM
-        xmldoc = glue.ligolw.utils.load_filename(datafilename)
+
+        try:
+            xmldoc = glue.ligolw.utils.load_filename(datafilename)
+        except Exception, e:
+            message = "Could not read data (%s)" % str(e)
+            EventLog(event=event, issuer=event.submitter, comment=message).save()
+            return
 
         # Create Log Data
         # XXX This is messy and redundant.  All of this is also below.