#27586: Django sometimes crashes on Windows when being launched in PyCharm
----------------------------------------+------------------------
Reporter: Vilius Poška | Owner: nobody
Type: Bug | Status: new
Component: Utilities | Version: 1.10
Severity: Normal | Keywords:
Triage Stage: Unreviewed | Has patch: 0
Needs documentation: 0 | Needs tests: 0
Patch needs improvement: 0 | Easy pickings: 0
UI/UX: 0 |
----------------------------------------+------------------------
When trying to launch a Django server with (and sometimes even without)
debugging on PyCharm, I get this error:
{{{
...
pydev debugger: process 10532 is connecting
Connected to pydev debugger (build 163.8233.8)
Process finished with exit code -1073741819 (0xC0000005)
}}}
That's how it looks without debugging:
{{{
"C:\Program Files (x86)\PyCharm\bin\runnerw.exe"
D:\project\env\Scripts\python.exe D:/project/manage.py runserver 80
Process finished with exit code -1073741819 (0xC0000005)
}}}
The strangest thing is that if I re-run, some of the times (1 success in
about 4-6 reruns) it will launch successfully. I also couldn't reproduce
this problem without PyCharm.
Specs: Windows 10 Pro, Pycharm (this happens on versions 5.x through
2016.3) x86 and x64 versions, Python 3.5x, Django 1.8-1.10.x.
This is what the Event Viewer reports about the error:
{{{
Faulting application name: python.exe, version: 3.5.1150.1013, time
stamp: 0x566391f0
Faulting module name: ucrtbase.dll, version: 10.0.14393.0, time stamp:
0x57898db2
Exception code: 0xc0000005
Fault offset: 0x000b6d95
Faulting process ID: 0x1b30
Faulting application start time: 0x01d251286ca8ada3
Faulting application path: D:\project\env\Scripts\python.exe
Faulting module path: C:\WINDOWS\System32\ucrtbase.dll
Report ID: b23376d6-cf66-4d83-8781-cd22311e0f9e
Faulting package full name:
Faulting package-relative application ID:
}}}
The error appears to originate from `restart_with_reloader` in
`autoreload.py` after this statement:
{{{
def restart_with_reloader():
while True:
args = [sys.executable] + ['-W%s' % o for o in
sys.warnoptions] + sys.argv
if sys.platform == "win32":
args = ['"%s"' % arg for arg in args]
new_environ = os.environ.copy()
new_environ["RUN_MAIN"] = 'true'
# this line crashes the whole script
# I guess the problem arises in native code
exit_code = os.spawnve(os.P_WAIT, sys.executable, args,
new_environ)
# debugger disconnects here
if exit_code != 3:
return exit_code
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/27586>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/054.2743fca30811da75cac5e7f8f017f68a%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.