Beispiel #1
0
 def save_processed_models(self, forms, cases=None, stock_result=None):
     forms = _list_to_processed_forms_tuple(forms)
     if stock_result:
         assert stock_result.populated
     try:
         return self.processor.save_processed_models(
             forms,
             cases=cases,
             stock_result=stock_result,
         )
     except BulkSaveError as e:
         logging.exception('BulkSaveError saving forms',
                           extra={'details': {
                               'errors': e.errors
                           }})
         raise
     except KafkaPublishingError as e:
         from corehq.form_processor.submission_post import notify_submission_error
         notify_submission_error(forms.submitted, e,
                                 'Error publishing to Kafka')
         raise PostSaveError(e)
     except Exception as e:
         from corehq.form_processor.submission_post import handle_unexpected_error
         instance = forms.submitted
         if forms.deprecated:
             # since this is a form edit there will already be a form with the ID so we need to give this one
             # a new ID
             instance = self.xformerror_from_xform_instance(
                 instance, '', with_new_id=True)
         handle_unexpected_error(self, instance, e)
         e.sentry_capture = False  # we've already notified
         raise
Beispiel #2
0
 def save_processed_models(self, forms, cases=None, stock_result=None):
     forms = _list_to_processed_forms_tuple(forms)
     if stock_result:
         assert stock_result.populated
     try:
         return self.processor.save_processed_models(
             forms,
             cases=cases,
             stock_result=stock_result,
         )
     except BulkSaveError as e:
         logging.exception('BulkSaveError saving forms', extra={'details': {'errors': e.errors}})
         raise
     except KafkaPublishingError as e:
         from corehq.form_processor.submission_post import notify_submission_error
         notify_submission_error(forms.submitted, e, 'Error publishing to Kafka')
         raise PostSaveError(e)
     except Exception as e:
         from corehq.form_processor.submission_post import handle_unexpected_error
         instance = forms.submitted
         if forms.deprecated:
             # since this is a form edit there will already be a form with the ID so we need to give this one
             # a new ID
             instance = self.xformerror_from_xform_instance(instance, '', with_new_id=True)
         handle_unexpected_error(self, instance, e)
         e.sentry_capture = False  # we've already notified
         raise