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

Disable crash reporting by default #2778

Open
aslushnikov opened this issue Jun 20, 2018 · 10 comments
Open

Disable crash reporting by default #2778

aslushnikov opened this issue Jun 20, 2018 · 10 comments
Labels

Comments

@aslushnikov
Copy link
Contributor

Win CI usually fails to cleanup userDataDir folder in some tests. Example: appveyour build

It turns out that on Windows:

  • crash pad is launched in a separate process
  • crash pad writes a few files into userDataDir
  • crash pad process doesn’t necessarily shutdown when we close browser.

As a result, we fail to remove temporary user data directory.

We need to disable crash reporting by default. Somehow chrome headless ignores the --disable-breakpad flag and launches crashpad anyway; this requires investigation and fixing upstream.

aslushnikov added a commit to aslushnikov/puppeteer that referenced this issue Jun 20, 2018
Crashpad sometimes prevents us from removing a folder in tests.

References puppeteer#2778.
aslushnikov added a commit that referenced this issue Jun 20, 2018
Crashpad sometimes prevents us from removing a folder in tests.

References #2778.
@aslushnikov aslushnikov added the chromium Issues with Puppeteer-Chromium label Dec 6, 2018
@Sunbreak
Copy link

Does --disable-breakpad work on Apple Silicon?

mikepqr added a commit to mikepqr/resume.md that referenced this issue Feb 13, 2022
We were getting errors like `PermissionError: [WinError 5] Access is
denied:
'C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\resume.md_k098zhaj\\CrashpadMetrics-active.pma'`
and `Exception ignored in: <finalize object at 0x16d9e039d60; dead> ...
NotADirectoryError: [WinError 267] The directory name is invalid:
'C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\resume.md_3aoun3f2\\CrashpadMetrics-active.pma'`
in CI on Windows. See e.g.
https://github.com/mikepqr/resume.md/runs/5172290981 and
https://github.com/mikepqr/resume.md/runs/5172234014.

The root cause was that Chrome creates a file the python process does
not have permission to delete. See
puppeteer/puppeteer#2778. Because
TemporaryDirectory is intended to be used as a context manager there is
no way to prevent it logging an error when cleanup fails.

The fix is to switch to the lower level tempfile.mkdtemp, and make a
good faith attempt to clean it up manually, logging failure at the debug
level (while adding a new --debug option).

A more sophisticated fix would be to backport the new
ignore_cleanup_errors option added in python 3.10
(python/cpython#24793), but this will do.

Fixes #13
mikepqr added a commit to mikepqr/resume.md that referenced this issue Feb 13, 2022
We were getting errors like `PermissionError: [WinError 5] Access is
denied:
'C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\resume.md_k098zhaj\\CrashpadMetrics-active.pma'`
and `Exception ignored in: <finalize object at 0x16d9e039d60; dead> ...
NotADirectoryError: [WinError 267] The directory name is invalid:
'C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\resume.md_3aoun3f2\\CrashpadMetrics-active.pma'`
in CI on Windows. See e.g.
https://github.com/mikepqr/resume.md/runs/5172290981 and
https://github.com/mikepqr/resume.md/runs/5172234014.

The root cause was that Chrome creates a file the python process does
not have permission to delete. See
puppeteer/puppeteer#2778. Because
TemporaryDirectory is intended to be used as a context manager there is
no way to prevent it logging an error when cleanup fails.

The fix is to switch to the lower level tempfile.mkdtemp, and make a
good faith attempt to clean it up manually, logging failure at the debug
level (while adding a new --debug option).

A more sophisticated fix would be to backport the new
ignore_cleanup_errors option added in python 3.10
(python/cpython#24793), but this will do.

Fixes #13
@stale
Copy link

stale bot commented Jun 23, 2022

We're marking this issue as unconfirmed because it has not had recent activity and we weren't able to confirm it yet. It will be closed if no further activity occurs within the next 30 days.

@stale stale bot added the unconfirmed label Jun 23, 2022
@alamothe
Copy link

alamothe commented Jul 6, 2022

bump

@stale stale bot removed the unconfirmed label Jul 6, 2022
@alejandrod-f
Copy link

I can confirm that --disable-breakpad on ubuntu has the same problem. Is a major issue as looks like all works for creating PDFs but there is an error

@stale
Copy link

stale bot commented Sep 12, 2022

We're marking this issue as unconfirmed because it has not had recent activity and we weren't able to confirm it yet. It will be closed if no further activity occurs within the next 30 days.

@Joaquin-Boilet
Copy link

Tengo exactamente le mismo problema al iniciar multiples ventanas desde xdge , url

@sebastianhelbig
Copy link

Any progress on this?

@shunkica
Copy link

I am running with args "--single-process", "--disable-crash-reporter", "--disable-breakpad" but it starts two chrome_crashpad_handler processes anyway.

@overtube
Copy link

have the same issue too that is a binary file that launched from /usr/lib, and also if remove that file, browser that won't start anymore, also flags cannot work too, also settings for disable that behavior won't found too.

@gregg-cbs
Copy link

Same issue here, every time we close the browser and spawn a new one using puppeteer api it spawns a new chrome_crashpad_handler. Explains why our memory is creeping:
image

@OrKoN OrKoN added the P3 label May 9, 2024
averagewagon pushed a commit to averagewagon/resume that referenced this issue Jun 27, 2024
We were getting errors like `PermissionError: [WinError 5] Access is
denied:
'C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\resume.md_k098zhaj\\CrashpadMetrics-active.pma'`
and `Exception ignored in: <finalize object at 0x16d9e039d60; dead> ...
NotADirectoryError: [WinError 267] The directory name is invalid:
'C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\resume.md_3aoun3f2\\CrashpadMetrics-active.pma'`
in CI on Windows. See e.g.
https://github.com/mikepqr/resume.md/runs/5172290981 and
https://github.com/mikepqr/resume.md/runs/5172234014.

The root cause was that Chrome creates a file the python process does
not have permission to delete. See
puppeteer/puppeteer#2778. Because
TemporaryDirectory is intended to be used as a context manager there is
no way to prevent it logging an error when cleanup fails.

The fix is to switch to the lower level tempfile.mkdtemp, and make a
good faith attempt to clean it up manually, logging failure at the debug
level (while adding a new --debug option).

A more sophisticated fix would be to backport the new
ignore_cleanup_errors option added in python 3.10
(python/cpython#24793), but this will do.

Fixes #13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

10 participants