

@app.task(name='tasks.processing_crash_dump', ignore_result=True, max_retries=12, bind=True)
def processing_crash_dump(self, crash_pk):
    try:
        crash = Crash.objects.get(pk=crash_pk)
        url = furl(crash.upload_file_minidump.url)
        path = url.pathstr
        crash_dump_path = os.path.join(S3_MOUNT_PATH, *path.split('/'))
        (stacktrace, errors) = get_stacktrace(crash_dump_path)
        crash.stacktrace = stacktrace
        crash.stacktrace_json = parse_stacktrace(stacktrace)
        crash.signature = get_signature(crash.stacktrace_json)
        crash.save()
        send_stacktrace_sentry(self)
    except FileNotFoundError as exc:
        logger.error('Failed processing_crash_dump', exc_info=True, extra=dict(crash_pk=crash_pk, crash_dump_path=crash_dump_path))
        raise self.retry(exc=exc, countdown=(2 ** processing_crash_dump.request.retries))
    except CommandError as exc:
        logger.error('Failed processing_crash_dump', exc_info=True, extra=dict(crash_pk=crash_pk, crash_dump_path=crash_dump_path))
        raise exc

dataset/ETHPy150Open Crystalnix/omaha-server/omaha_server/crash/tasks.py processing_crash_dump/VarMisuse@132/185 `crash`->`self`