Describe the Bug
Subject: Electron App Crashes on macOS ARM64 with V8 OOM and Mach Port Errors
Hello everyone,
I am experiencing consistent crashes when running the Electron-based application Cursor (version 1.1.3 Universal) on my MacBook Pro with Apple Silicon (arm64 architecture).
System details:
- macOS Version: Darwin 24.5.0 (arm64)
- CPU: Apple Silicon (arm64)
- Cursor app version: 1.1.3 (Universal binary supporting x86_64 and arm64)
- Electron Version: 34.5.1
- Node.js Version: 20.19.0
- V8 Version: 13.2.152.41-electron.0
Issue:
The application repeatedly crashes with an out-of-memory (OOM) error inside the V8 JavaScript engine during garbage collection (Mark-Compact phase). The logs show:
scss
[...]
V8 javascript OOM (CALL_AND_RETRY_LAST)
Mark-Compact (reduce) ... last resort; GC in old space requested
[...]
Additionally, there are frequent errors related to macOS mach port notifications:
yaml
FATAL:exception_handler_server.cc Check failed: kr == KERN_SUCCESS. mach_port_request_notification: (os/kern) invalid capability (20)
and repeated errors indicating inability to get thread state:
java
process_reader_mac.cc thread_get_state(4): (os/kern) invalid argument (4)
These errors appear to cause the renderer process to crash with code 5. The extension host also exits immediately with code 0.
What I have tried so far:
- Verified the application binary is universal and runs under arm64 architecture using
arch -arm64
. - Ran the app with disabled extensions and sandbox flags.
- Cleared application caches and preference files.
- Increased the Node.js heap size by launching with
--js-flags="--max-old-space-size=8192"
. - Verified macOS is up-to-date.
- Checked system permissions and granted full disk/network access to the app.
- Ran the app with Electron logging enabled for more detailed output.
- Attempted to capture native crash symbols using
atos
but with no meaningful output.
Despite these steps, the app continues to crash consistently with the same errors.
My system has enough RAM (~16GB) and minimal other load during the crashes.
I suspect there might be a memory leak or incompatibility issue with this version of Electron on macOS ARM64.
I would appreciate any insights or suggestions on:
- Potential workarounds or flags to mitigate the V8 OOM error.
- How to collect more detailed diagnostic data for Electron crashes on macOS.
- Whether this is a known issue with Electron 34.x on Apple Silicon.
- Alternative Electron versions or builds to try.
- Any similar experiences with Cursor app or other Electron apps on M1/M2 Macs.
Thank you in advance for your help!
Steps to Reproduce
I cleared all cache but still getting the error.
I reinstalled and still got the error.
Screenshots / Screen Recordings
Operating System
MacOS
Current Cursor Version (Menu → About Cursor → Copy)
Version: 1.1.3 (Universal)
VSCode Version: 1.96.2
Commit: 979ba33804ac150108481c14e0b5cb970bda3260
Date: 2025-06-15T06:37:17.379Z
Electron: 34.5.1
Chromium: 132.0.6834.210
Node.js: 20.19.0
V8: 13.2.152.41-electron.0
OS: Darwin arm64 24.5.0