Matching PDB missing despite CLI reporting files uploaded

Open
#124,873 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
38/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Active
Tech stack
godot, python
Domain
backend, devtools

Research direction

Start by reproducing the reported sentry-cli debug-files upload and dif check workflow with sanitized PDB and executable artifacts. Compare the upload result, Debug Files listing, event candidates, and Images Loaded status to determine where the PDB disappears; done means identifying a reproducible failure boundary and confirming the PDB is listed and selected for symbolication.

Written by the indexing model from the issue text.

Description

Bug Product Area: Issues Waiting for: Product Owner

A support report describes Windows x86_64 Godot crash frames resolving to NoHotPatch, with reportedly unrelated crashes grouping together. The local PDB matches the event's Debug ID, but the uploaded Debug Files listing and event candidates show only the executable. This is a suspected bug; it has not been independently reproduced and the root cause is unknown.

Evidence supplied through support
  • CLI version: sentry-cli 3.1.0.
  • sentry-cli dif check <file.pdb> reports a PDB debug companion, architecture x86_64, capabilities symtab, debug, and Usable: yes. Its full Debug ID matches the affected event exactly.
  • Searching that Debug ID in Project Settings → Debug Files returns only the PE executable, with symtab and unwind, and no matching PDB.
  • The event's successful debug-file candidate is the executable, supplying both symbolication and stack unwinding. Images Loaded shows an overall Ok status and the referenced PDB name despite the absence of a successful PDB candidate.
  • Another module in the same event lists its PDB for symbolication and DLL for unwinding.
  • The reporter says symbol resolution previously worked and the same PDB resolves dumps correctly in a local debugger.
Reported upload workflow

Build command:

scons target=template_release debug_symbols=yes tools=no production=yes

Directory upload command, with destination identifiers removed:

sentry-cli debug-files upload --include-sources --org <org> --project <project> bin/

Repeating the upload produces:

> Found 12 debug information files
> Resolved source code for 4 debug information files
> Prepared debug information files for upload
> Nothing to upload, all files are on the server

The supplied output also contains source-item size warnings for individual source files, but no explicit PDB upload failure.

Uncertainties
  • The upload message is a batch summary, not per-file proof that this PDB was selected or accepted.
  • EXE-only symbol-table fallback is consistent with the repeated NoHotPatch frames, but the artifacts have not been used to reproduce this independently.
  • It is not established whether the discrepancy originates in CLI upload preparation, upload/server state, file listing, or symbolication selection. No parser regression or offending change has been confirmed.

Historical report with a similar missing-debug-file symptom: #37575 (closed, reported in 2022, and unrelated to Godot). Linking only for comparison; a shared root cause has not been established.

Customer names, organization/project identifiers, event links, Debug IDs, proprietary paths, and artifacts are intentionally omitted.

via Daniel Sheccoury.

--

View Junior Session in Sentry

Dominant language
Python
Stars
44.8k
Forks
4.9k
Avg merge
21h 28m
Merged PRs (30d)
599

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from getsentry/sentry

All issues in getsentry/sentry

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.