Closed Bug 1581567 Opened 6 years ago Closed 6 years ago

/api/Reprocessing/ doesn't validate crash ids

Categories

(Socorro :: General, defect, P2)

defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: willkg, Assigned: willkg)

Details

Attachments

(1 file)

Sentry issue: https://sentry.prod.mozaws.net/operations/socorro-new-prod/issues/6305172/

CrashidMissingDatestamp: 2019-09-16T11:39:08.596299+00:00	libxul.so@0x8ba785 | libnspr4.so@0x29dc7	Firefox	69.0	20190904044854	Linux is missing datestamp
  File "processor_app.py", line 166, in _transform
    raw_crash = self.source.get_raw_crash(crash_id)
  File "socorro/external/crashstorage_base.py", line 649, in get_raw_crash
    result = self.wrapped_crashstore.get_raw_crash(crash_id)
  File "socorro/external/boto/crashstorage.py", line 126, in get_raw_crash
    json_object_hook=self.config.json_object_hook,
  File "socorro/lib/transaction.py", line 82, in retry
    return fun(conn, **kwargs)
  File "socorro/external/boto/crashstorage.py", line 115, in do_get_raw_crash
    raw_crash_as_string = boto_connection.fetch(crash_id, "raw_crash")
  File "socorro/external/boto/connection_context.py", line 204, in fetch
    all_keys = self.build_keys(self.config.prefix, name_of_thing, id)
  File "socorro/external/boto/connection_context.py", line 128, in build_keys
    date = self._get_datestamp(crashid).strftime("%Y%m%d")
  File "socorro/external/boto/connection_context.py", line 103, in _get_datestamp
    raise CrashidMissingDatestamp("%s is missing datestamp" % crashid)

I sent bad data via the reprocess cli and it kicked up an error. Instead of doing that, it should kick up an HTTP 400 saying the crash id isn't a crash id.

Grabbing this to do now.

Assignee: nobody → willkg
Status: NEW → ASSIGNED

Deployed just now in bug #1608229.

Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: