8000 Consider treating a lot of hard errors around information gathering as soft errors · Issue #223 · rust-minidump/minidump-writer · GitHub
[go: up one dir, main page]

Skip to content

Consider treating a lot of hard errors around information gathering as soft errors #223

Open

Description

@marti4d

Firefox Bug 1245570 shows that we might be, perhaps, a bit over-reacting to how we handle a failure to obtain the floating point register values.

Currently, if we fail to obtain both the general-purpose registers and the floating-point registers as part of writing the ThreadListStream entry, we bomb out with a hard error here, which then also causes us to give up on writing the minidump altogether here.

This issue is to investigate and discuss whether we can have a bit more chill when it comes to error handling for either or both of these steps. Perhaps we can still push forward writing the ThreadListStream even if we can't read some of the registers... Or maybe we can't, but maybe we should not treat a failure to write the ThreadListStream as a total loss for writing the minidump.

More generally, we currently bomb out if we fail to write a lot of different streams: ModuleListStream, MemoryListStream, ExceptionStream, etc -- The list goes on. It might be worth taking inventory of all the stuff written in MinidumpWriter::write_dump() and differentiating "if we can't write this stream, the whole minidump is worthless and we might as well not send it" versus "we could still do useful things with a minidump that lacks this stream".

Curious to hear some of your thoughts, @gabrielesvelto .

Activity

  1. changed the title [-]Consider reacting less intensely when writing[/-] [+]Consider reacting less intensely when writing `ThreadListStream` (and possibly other streams)[/+] on Aug 25, 2026
  2. changed the title [-]Consider reacting less intensely when writing `ThreadListStream` (and possibly other streams)[/-] [+]Consider reacting less intensely when failing to write `ThreadListStream` (and possibly other streams)[/+] on Aug 25, 2026
  3. marti4d commented on Aug 26, 2026

    @marti4d
    CollaboratorAuthor

    @schopin-mozilla made a good point -- At the very least, we should always send the Soft Errors stream, and the soft error stream should ideally even contain any hard error that stopped us from gathering information in the rest of the minidump.

    So even if we hit a hard error that makes the minidump completely useless otherwise, we still have the soft errors and hard error that caused us to stop trying to make a useful minidump.

  4. changed the title [-]Consider reacting less intensely when failing to write `ThreadListStream` (and possibly other streams)[/-] [+]Consider treating a lot of hard errors around information gathering as soft errors[/+] on Aug 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      0