Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Publish Windows PDBs to allow debugging without Symbol server #6225

Merged
merged 1 commit into from Jun 29, 2016

Conversation

Projects
None yet
4 participants
@miniak
Copy link
Contributor

miniak commented Jun 24, 2016

I know that you are publishing the electron.exe.pdb and node.dll.pdb to your private symbol server, but when I have a crash dump from an actual rebranded app, then main executable has a different name and cannot be found on the symbol server. I would need to get the electron.exe.pdb and load it manually.

@miniak

This comment has been minimized.

Copy link
Contributor Author

miniak commented Jun 24, 2016

Or is it possible to somehow map the filename to electron.exe?

@zcbenz

This comment has been minimized.

Copy link
Member

zcbenz commented Jun 25, 2016

I believe you can force windbg to load symbol for mismatched name, @paulcbetts should know more.

@anaisbetts

This comment has been minimized.

Copy link
Contributor

anaisbetts commented Jun 25, 2016

.sympath+ \path\to\your\pdbs
.symopt+ 0x40

Be warned though, that they'll match even if they really shouldn't, and you'll be like me and spend like 30mins wondering why your stack looks so weird because you used 32-bit PDBs with a 64-bit binary

@miniak

This comment has been minimized.

Copy link
Contributor Author

miniak commented Jun 27, 2016

So what's the verdict? Are there any issues with publishing the PDBs except for taking some disk space?

@anaisbetts

This comment has been minimized.

Copy link
Contributor

anaisbetts commented Jun 27, 2016

I would be +💯 on this yeah, please do it

@miniak

This comment has been minimized.

Copy link
Contributor Author

miniak commented Jun 29, 2016

@kevinsawicki what do you think about this?

@kevinsawicki

This comment has been minimized.

Copy link
Contributor

kevinsawicki commented Jun 29, 2016

what do you think about this?

If publishing these on each release would be helpful to people, I'm totally on board doing it 👍

Just curious, what is the approximate size of this file?

@miniak

This comment has been minimized.

Copy link
Contributor Author

miniak commented Jun 29, 2016

Just curious, what is the approximate size of this file?

It's similar to the dSYM zip file size, currently approx 320 MB.

@miniak

This comment has been minimized.

Copy link
Contributor Author

miniak commented Jun 29, 2016

@zcbenz are you ok with this? Would it be possible to get this change into the next release?

@@ -152,6 +152,10 @@ def create_symbols():
dsyms = glob.glob(os.path.join(OUT_DIR, '*.dSYM'))
for dsym in dsyms:
shutil.copytree(dsym, os.path.join(DIST_DIR, os.path.basename(dsym)))
elif PLATFORM == 'win32':
pdbs = glob.glob(os.path.join(OUT_DIR, '*.pdb'))

This comment has been minimized.

Copy link
@kevinsawicki

kevinsawicki Jun 29, 2016

Contributor

I was trying this branch locally and the generated pdb zip was empty, looks like OUT_DIR is out/R and the .pdb files are in out/D, am I doing something wrong?

This comment has been minimized.

Copy link
@kevinsawicki

kevinsawicki Jun 29, 2016

Contributor

Nevermind, I hadn't done a full release build locally, only had a debug build in the out/ folder on my Windows VM.

@kevinsawicki kevinsawicki merged commit 511dced into electron:master Jun 29, 2016

1 check passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details
@kevinsawicki

This comment has been minimized.

Copy link
Contributor

kevinsawicki commented Jun 29, 2016

🚢 Thanks for this

@miniak miniak deleted the miniak:publish-pdb branch Jun 30, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.