[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2021-12-13 Thread Dong-hee Na
Change by Dong-hee Na : -- nosy: +corona10 nosy_count: 5.0 -> 6.0 pull_requests: +28310 pull_request: https://github.com/python/cpython/pull/30082 ___ Python tracker ___

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2019-04-17 Thread Rudolph Froger
Rudolph Froger added the comment: Thanks all for the fixes! -- ___ Python tracker ___ ___ Python-bugs-list mailing list

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2019-04-17 Thread STINNER Victor
STINNER Victor added the comment: Thanks Rudolph Froger for the bug report: the issue is now fixed in 3.7 and master (future Python 3.8) branches. Sorry for the delay. -- Alexey Izbyshev wrote PR 5773 to also use fstat() on Linux. I chose to merge my PR 12852 which is more conservative: it

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2019-04-17 Thread STINNER Victor
STINNER Victor added the comment: In short, Python 2.7 doesn't seem to be affected by fstat/dup issues. Python 2.7 doesn't check if file descriptors 0, 1 and 2 at startup. Python 2 uses PyFile_FromFile() to create sys.stdin, sys.stdout and sys.stderr which create a "file" object. The

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2019-04-17 Thread STINNER Victor
STINNER Victor added the comment: New changeset b87a8073db73f9ffa96104e00c624052e34b11c7 by Victor Stinner (Miss Islington (bot)) in branch '3.7': bpo-32849: Fix is_valid_fd() on FreeBSD (GH-12852) (GH-12863) https://github.com/python/cpython/commit/b87a8073db73f9ffa96104e00c624052e34b11c7

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2019-04-17 Thread STINNER Victor
STINNER Victor added the comment: New changeset 3092d6b2630e4d2bd200fbc3231c27a7cba4d6b2 by Victor Stinner in branch 'master': bpo-32849: Fix is_valid_fd() on FreeBSD (GH-12852) https://github.com/python/cpython/commit/3092d6b2630e4d2bd200fbc3231c27a7cba4d6b2 --

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2019-04-17 Thread miss-islington
Change by miss-islington : -- pull_requests: +12790 ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2019-04-16 Thread STINNER Victor
STINNER Victor added the comment: Alexey Izbyshev: "I think that we can even drop dup-based validation from is_valid_fd() since there is a corner case for Linux too: if a descriptor opened with O_PATH inherited as a standard one, dup() will succeed but fstat() will fail in kernels before

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2019-04-16 Thread STINNER Victor
Change by STINNER Victor : -- pull_requests: +12778 ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2019-04-16 Thread STINNER Victor
STINNER Victor added the comment: > ktrace shows that dup(0) succeeded but fstat(0) failed. Aha, the problem is still the is_valid_fd() function: /* Prefer dup() over fstat(). fstat() can require input/output whereas dup() doesn't, there is a low risk of EMFILE/ENFILE at Python

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2019-04-02 Thread Владислав Ярмак
Владислав Ярмак added the comment: I have similar crash with Python 3.7.2 on Linux. Steps to reproduce: send sigint when Python initializes. I've built debug version of Python 3.7.2 and collected core dump: (gdb) thread apply all bt Thread 1 (Thread 0x7f8f5ee67e80 (LWP 13285)): #0

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2018-02-20 Thread Rudolph Froger
Rudolph Froger added the comment: > Could it be simply because daemon is respawned from a process that does have > a valid stdin at the time of respawn? Yes, that could certainly be the case. Thanks! -- ___ Python

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2018-02-20 Thread Alexey Izbyshev
Change by Alexey Izbyshev : -- keywords: +patch pull_requests: +5552 stage: -> patch review ___ Python tracker ___

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2018-02-20 Thread Alexey Izbyshev
Alexey Izbyshev added the comment: > But I'm not sure why it can be solved, sometimes, by restarting the the > daemon. Could it be simply because daemon is respawned from a process that does have a valid stdin at the time of respawn? Note that daemon has an option to

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2018-02-20 Thread Rudolph Froger
Rudolph Froger added the comment: Thanks for all the research! My crashing Python process is started by a shell process which is launched by the Freebsd daemon tool, this might explain why stdin in no longer valid. But I'm not sure why it can be solved,

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2018-02-19 Thread Alexey Izbyshev
Alexey Izbyshev added the comment: OK, never mind with the test. I've finally got to a FreeBSD box and reproduced the problem. It has to do with 'revoke' feature of *BSD. When revoke is called on a terminal device (as part of logout process, for example), all descriptors

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2018-02-19 Thread Alexey Izbyshev
Alexey Izbyshev added the comment: > I think that we can even drop dup-based validation from is_valid_fd() For POSIX, that is. There is no fstat on Windows, and dup is probably OK there (or, even better, dup2(fd, fd) -- no need to close). --

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2018-02-19 Thread Alexey Izbyshev
Alexey Izbyshev added the comment: Thank you for checking. If this issue happens even when Python is run manually from an ordinary shell, fixing it in the same way as in #30225 is probably not what you want because while the error message will be gone the corresponding

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2018-02-18 Thread Rudolph Froger
Rudolph Froger added the comment: I've tried your quick tests a few times but couldn't reproduce it immediately. The problem is a bit hard to reproduce anyway because launching Python processes can go well for a long time (many days; launching many processes

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2018-02-17 Thread Alexey Izbyshev
Alexey Izbyshev added the comment: ktrace shows that dup(0) succeeded but fstat(0) failed. The symptom is the same as in #30225. Could you check whether any of the following quick tests produces the same error? python3 -c 'import os, subprocess, sys; r, w = os.pipe();

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2018-02-15 Thread Rudolph Froger
Change by Rudolph Froger : -- type: -> crash ___ Python tracker ___ ___

[issue32849] Fatal Python error: Py_Initialize: can't initialize sys standard streams

2018-02-15 Thread Rudolph Froger
New submission from Rudolph Froger : Sometimes a new Python 3.6.4 process is aborted by the kernel (FreeBSD 11.1) (before loading my Python files). Found in syslog: kernel: pid 22433 (python3.6), uid 2014: exited on signal 6 (core dumped) Fatal Python error: