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

Code executed via conda run does not exit on interrupt #11420

Open
Tracked by #11316
karrtikr opened this issue Apr 19, 2022 · 5 comments · May be fixed by #12404
Open
Tracked by #11316

Code executed via conda run does not exit on interrupt #11420

karrtikr opened this issue Apr 19, 2022 · 5 comments · May be fixed by #12404
Labels
backlog issue has been triaged but has not been earmarked for any upcoming release plugins::run pertains to conda-run severity::3 major; broken functionality with a workaround source::community catch-all for issues filed by community members stale::recovered [bot] recovered after being marked as stale type::bug describes erroneous operation, use severity::* to classify the type

Comments

@karrtikr
Copy link

karrtikr commented Apr 19, 2022

What happened?

Originally reported by @Samreay in microsoft/vscode-python#18700

  • Run the command:
conda run -n base --no-capture-output --live-stream python /Users/sh/Projects/optimiser/analytics/evolution_exploration.py

Then cmd-c to interrupt. Gets back to terminal, but unlike interrupting python code, the conda executable still runs in the background:

image

  • It can be seen using a ps aux, which means every time I want to stop the running file, I cmd-c, run ps aux | grep python, find the services which aren't stopped, and then kill their PIDs manually. Me killing it:

image

Conda Details

conda info
active environment : base
    active env location : /opt/anaconda3
            shell level : 1
       user config file : /Users/sh/.condarc
 populated config files : 
          conda version : 4.12.0
    conda-build version : 3.21.4
         python version : 3.8.8.final.0
       virtual packages : __osx=10.16=0
                          __unix=0=0
                          __archspec=1=x86_64
       base environment : /opt/anaconda3  (writable)
      conda av data dir : /opt/anaconda3/etc/conda
  conda av metadata url : None
           channel URLs : https://repo.anaconda.com/pkgs/main/osx-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/osx-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /opt/anaconda3/pkgs
                          /Users/sh/.conda/pkgs
       envs directories : /opt/anaconda3/envs
                          /Users/sh/.conda/envs
               platform : osx-64
             user-agent : conda/4.12.0 requests/2.25.1 CPython/3.8.8 Darwin/21.3.0 OSX/10.16
                UID:GID : 503:20
             netrc file : None
           offline mode : False
conda list
# packages in environment at /opt/anaconda3:
#
# Name                    Version                   Build  Channel
_ipyw_jlab_nb_ext_conf    0.1.0                    py38_0    defaults
absl-py                   0.15.0                   pypi_0    pypi
aiohttp                   3.8.1                    pypi_0    pypi
aiologger                 0.6.1                    pypi_0    pypi
aiosignal                 1.2.0                    pypi_0    pypi
alabaster                 0.7.12             pyhd3eb1b0_0    defaults
alembic                   1.4.1                    pypi_0    pypi
anaconda                  2021.05                  py38_0    defaults
anaconda-client           1.7.2                    py38_0    defaults
anaconda-navigator        2.0.3                    py38_0    defaults
anaconda-project          0.9.1              pyhd3eb1b0_1    defaults
antlr4-python3-runtime    4.8                      pypi_0    pypi
anyio                     3.3.4                    pypi_0    pypi
appdirs                   1.4.4                      py_0    defaults
applaunchservices         0.2.1                      py_0    defaults
appnope                   0.1.2           py38hecd8cb5_1001    defaults
appscript                 1.1.2            py38h9ed2024_0    defaults
arenkods                  0.1.0                     dev_0    <develop>
argh                      0.26.2                   py38_0    defaults
argon2-cffi               20.1.0           py38h9ed2024_1    defaults
asgiref                   3.4.1                    pypi_0    pypi
asn1crypto                1.4.0                      py_0    defaults
astroid                   2.5              py38hecd8cb5_1    defaults
astropy                   4.2.1            py38h9ed2024_1    defaults
asttokens                 2.0.5                    pypi_0    pypi
astunparse                1.6.3                    pypi_0    pypi
async-timeout             4.0.2                    pypi_0    pypi
async_generator           1.10               pyhd3eb1b0_0    defaults
atomicwrites              1.4.0                      py_0    defaults
attrs                     20.3.0             pyhd3eb1b0_0    defaults
autopep8                  1.5.6              pyhd3eb1b0_0    defaults
babel                     2.9.0              pyhd3eb1b0_0    defaults
backcall                  0.2.0              pyhd3eb1b0_0    defaults
backports                 1.0                pyhd3eb1b0_2    defaults
backports.functools_lru_cache 1.6.4              pyhd3eb1b0_0    defaults
backports.shutil_get_terminal_size 1.0.0              pyhd3eb1b0_3    defaults
backports.tempfile        1.0                pyhd3eb1b0_1    defaults
backports.weakref         1.0.post1                  py_1    defaults
beautifulsoup4            4.9.3              pyha847dfd_0    defaults
bitarray                  1.9.2            py38h9ed2024_1    defaults
bkcharts                  0.2                      py38_0    defaults
black                     22.3.0                   pypi_0    pypi
blas                      1.0                         mkl    defaults
bleach                    3.3.0              pyhd3eb1b0_0    defaults
blosc                     1.21.0               h2842e9f_0    defaults
bokeh                     2.3.2            py38hecd8cb5_0    defaults
boto                      2.49.0                   py38_0    defaults
boto3                     1.18.21                  pypi_0    pypi
botocore                  1.21.65                  pypi_0    pypi
bottleneck                1.3.2            py38hf1fa96c_1    defaults
brotli                    1.0.9                    pypi_0    pypi
brotlipy                  0.7.0           py38h9ed2024_1003    defaults
bzip2                     1.0.8                h1de35cc_0    defaults
c-ares                    1.17.1               h9ed2024_0    defaults
ca-certificates           2021.4.13            hecd8cb5_1    defaults
cached-property           1.5.2                    pypi_0    pypi
cachetools                4.2.4                    pypi_0    pypi
certifi                   2020.12.5        py38hecd8cb5_0    defaults
cffi                      1.14.5           py38h2125817_0    defaults
chardet                   4.0.0           py38hecd8cb5_1003    defaults
charset-normalizer        2.0.12                   pypi_0    pypi
click                     8.1.2                    pypi_0    pypi
cloudpickle               2.0.0                    pypi_0    pypi
clyent                    1.2.2                    py38_1    defaults
cmasher                   1.6.3                    pypi_0    pypi
colorama                  0.4.4              pyhd3eb1b0_0    defaults
colorspacious             1.1.2                    pypi_0    pypi
commonmark                0.9.1                    pypi_0    pypi
conda                     4.12.0           py38hecd8cb5_0    defaults
conda-build               3.21.4           py38hecd8cb5_0    defaults
conda-content-trust       0.1.1              pyhd3eb1b0_0    defaults
conda-env                 2.6.0                         1    defaults
conda-package-handling    1.8.1            py38hca72f7f_0    defaults
conda-repo-cli            1.0.4              pyhd3eb1b0_0    defaults
conda-token               0.3.0              pyhd3eb1b0_0    defaults
conda-verify              3.4.2                      py_1    defaults
contextlib2               0.6.0.post1                py_0    defaults
coverage                  6.1.2                    pypi_0    pypi
croniter                  0.3.37                   pypi_0    pypi
cryptography              3.4.7            py38h2fd3fbb_0    defaults
curl                      7.71.1               hb0a8c7a_1    defaults
cycler                    0.10.0                   py38_0    defaults
cython                    0.29.23          py38h23ab428_0    defaults
cytoolz                   0.11.0           py38haf1e3a3_0    defaults
dash                      2.3.1                    pypi_0    pypi
dash-core-components      2.0.0                    pypi_0    pypi
dash-html-components      2.0.0                    pypi_0    pypi
dash-table                5.0.0                    pypi_0    pypi
dask                      2022.4.0                 pypi_0    pypi
databricks-cli            0.16.2                   pypi_0    pypi
dbus                      1.13.18              h18a8e69_0    defaults
deap                      1.3.1                    pypi_0    pypi
decorator                 5.0.6              pyhd3eb1b0_0    defaults
defusedxml                0.7.1              pyhd3eb1b0_0    defaults
deprecated                1.2.13                   pypi_0    pypi
diff-match-patch          20200713                   py_0    defaults
distfit                   1.4.1                    pypi_0    pypi
distributed               2022.4.0                 pypi_0    pypi
docker                    5.0.3                    pypi_0    pypi
docutils                  0.17             py38hecd8cb5_1    defaults
e13tools                  0.9.6                    pypi_0    pypi
entrypoints               0.3                      py38_0    defaults
et_xmlfile                1.0.1                   py_1001    defaults
executing                 0.8.3                    pypi_0    pypi
expat                     2.3.0                h23ab428_2    defaults
fastapi                   0.73.0                   pypi_0    pypi
fastapi-utils             0.2.1                    pypi_0    pypi
fastcache                 1.1.0            py38h1de35cc_0    defaults
filelock                  3.0.12             pyhd3eb1b0_1    defaults
fixture                   1.5.11                   pypi_0    pypi
flake8                    3.9.0              pyhd3eb1b0_0    defaults
flaky                     3.7.0                    pypi_0    pypi
flask                     2.1.1                    pypi_0    pypi
flask-compress            1.10.1                   pypi_0    pypi
flask-cors                3.0.10                   pypi_0    pypi
flatbuffers               1.12                     pypi_0    pypi
freetype                  2.10.4               ha233b18_0    defaults
frozenlist                1.3.0                    pypi_0    pypi
fsspec                    0.9.0              pyhd3eb1b0_0    defaults
future                    0.18.2                   py38_1    defaults
gast                      0.3.3                    pypi_0    pypi
get_terminal_size         1.0.0                h7520d66_0    defaults
gettext                   0.21.0               h7535e17_0    defaults
gevent                    21.1.2           py38h9ed2024_1    defaults
gitdb                     4.0.9                    pypi_0    pypi
gitpython                 3.1.24                   pypi_0    pypi
glib                      2.68.1               hdf23fa2_0    defaults
glob2                     0.7                pyhd3eb1b0_0    defaults
gmp                       6.2.1                h23ab428_2    defaults
gmpy2                     2.0.8            py38h6ef4df4_3    defaults
google-auth               2.3.3                    pypi_0    pypi
google-auth-oauthlib      0.4.6                    pypi_0    pypi
google-pasta              0.2.0                    pypi_0    pypi
greenlet                  1.0.0            py38h23ab428_2    defaults
grpcio                    1.32.0                   pypi_0    pypi
gunicorn                  20.1.0                   pypi_0    pypi
h11                       0.12.0                   pypi_0    pypi
h5py                      2.10.0           py38h3134771_0    defaults
hdf5                      1.10.4               hfa1e0ec_0    defaults
heapdict                  1.0.1                      py_0    defaults
html5lib                  1.1                        py_0    defaults
httptools                 0.2.0                    pypi_0    pypi
hyperopt                  0.2.5                    pypi_0    pypi
icu                       58.2                 h0a44026_3    defaults
idna                      2.10               pyhd3eb1b0_0    defaults
imageio                   2.9.0              pyhd3eb1b0_0    defaults
imagesize                 1.2.0              pyhd3eb1b0_0    defaults
importlib-metadata        3.10.0           py38hecd8cb5_0    defaults
importlib-resources       5.4.0                    pypi_0    pypi
importlib_metadata        3.10.0               hd3eb1b0_0    defaults
iniconfig                 1.1.1              pyhd3eb1b0_0    defaults
intel-openmp              2021.2.0           hecd8cb5_564    defaults
intervaltree              3.1.0                      py_0    defaults
ipykernel                 5.3.4            py38h5ca1d4c_0    defaults
ipython                   7.22.0           py38h01d92e1_0    defaults
ipython_genutils          0.2.0              pyhd3eb1b0_1    defaults
ipywidgets                7.6.3              pyhd3eb1b0_1    defaults
isodate                   0.6.0                    pypi_0    pypi
isort                     5.8.0              pyhd3eb1b0_0    defaults
itsdangerous              2.1.2                    pypi_0    pypi
jbig                      2.1                  h4d881f8_0    defaults
jdcal                     1.4.1                      py_0    defaults
jedi                      0.17.2           py38hecd8cb5_1    defaults
jinja2                    3.1.1                    pypi_0    pypi
jmespath                  0.10.0                   pypi_0    pypi
joblib                    1.0.1              pyhd3eb1b0_0    defaults
jpeg                      9b                   he5867d9_2    defaults
json-logging              1.3.0                    pypi_0    pypi
json5                     0.9.5                      py_0    defaults
jsonpath-ng               1.5.3                    pypi_0    pypi
jsonschema                3.2.0                      py_2    defaults
jupyter                   1.0.0                    py38_7    defaults
jupyter-packaging         0.7.12             pyhd3eb1b0_0    defaults
jupyter_client            6.1.12             pyhd3eb1b0_0    defaults
jupyter_console           6.4.0              pyhd3eb1b0_0    defaults
jupyter_core              4.7.1            py38hecd8cb5_0    defaults
jupyter_server            1.4.1            py38hecd8cb5_0    defaults
jupyterlab                3.0.14             pyhd3eb1b0_1    defaults
jupyterlab_pygments       0.1.2                      py_0    defaults
jupyterlab_server         2.4.0              pyhd3eb1b0_0    defaults
jupyterlab_widgets        1.0.0              pyhd3eb1b0_1    defaults
kaleido                   0.2.1                    pypi_0    pypi
keras-preprocessing       1.1.2                    pypi_0    pypi
keyring                   22.3.0           py38hecd8cb5_0    defaults
kiwisolver                1.3.1            py38h23ab428_0    defaults
krb5                      1.18.2               h75d18d8_0    defaults
lazy-object-proxy         1.6.0            py38h9ed2024_0    defaults
lcms2                     2.12                 hf1fd2bf_0    defaults
levenshtein               0.16.0                   pypi_0    pypi
libarchive                3.4.2                haa3ed63_0    defaults
libcurl                   7.71.1               h8a08a2b_1    defaults
libcxx                    10.0.0                        1    defaults
libedit                   3.1.20210216         h9ed2024_1    defaults
libev                     4.33                 haf1e3a3_0    defaults
libffi                    3.3                  hb1e8313_2    defaults
libgfortran               3.0.1                h93005f0_2    defaults
libiconv                  1.16                 h1de35cc_0    defaults
liblief                   0.10.1               h0a44026_0    defaults
libllvm10                 10.0.1               h76017ad_5    defaults
libpng                    1.6.37               ha441bb4_0    defaults
libsodium                 1.0.18               h1de35cc_0    defaults
libspatialindex           1.9.3                h23ab428_0    defaults
libssh2                   1.9.0                ha12b0ac_1    defaults
libtiff                   4.2.0                h87d7836_0    defaults
libuv                     1.40.0               haf1e3a3_0    defaults
libwebp-base              1.2.0                h9ed2024_0    defaults
libxml2                   2.9.10               h7cdb67c_3    defaults
libxslt                   1.1.34               h83b36ba_0    defaults
llvm-openmp               10.0.0               h28b9765_0    defaults
llvmlite                  0.36.0           py38he4411ff_4    defaults
locket                    0.2.1            py38hecd8cb5_1    defaults
loky                      3.0.0                    pypi_0    pypi
lxml                      4.6.2                    pypi_0    pypi
lz4-c                     1.9.3                h23ab428_0    defaults
lzo                       2.10                 haf1e3a3_2    defaults
mako                      1.1.5                    pypi_0    pypi
markdown                  3.3.5                    pypi_0    pypi
markupsafe                2.1.1                    pypi_0    pypi
marshmallow               3.14.1                   pypi_0    pypi
marshmallow-oneofschema   3.0.1                    pypi_0    pypi
matplotlib                3.4.3                    pypi_0    pypi
mccabe                    0.6.1                    py38_1    defaults
metaphone                 0.6                      pypi_0    pypi
mistune                   0.8.4           py38h1de35cc_1001    defaults
mkl                       2021.2.0           hecd8cb5_269    defaults
mkl-service               2.3.0            py38h9ed2024_1    defaults
mkl_fft                   1.3.0            py38h4a7008c_2    defaults
mkl_random                1.2.1            py38hb2f4e1b_2    defaults
mlflow                    1.24.0                   pypi_0    pypi
mock                      4.0.3              pyhd3eb1b0_0    defaults
more-itertools            8.7.0              pyhd3eb1b0_0    defaults
mpc                       1.1.0                h6ef4df4_1    defaults
mpfr                      4.0.2                h9066e36_1    defaults
mpmath                    1.2.1            py38hecd8cb5_0    defaults
msgpack-python            1.0.2            py38hf7b0b51_1    defaults
multidict                 6.0.2                    pypi_0    pypi
multipledispatch          0.6.0                    py38_0    defaults
mypy                      0.942                    pypi_0    pypi
mypy_extensions           0.4.3                    py38_0    defaults
natsort                   8.0.0                    pypi_0    pypi
navigator-updater         0.2.1                    py38_0    defaults
nbclassic                 0.2.6              pyhd3eb1b0_0    defaults
nbclient                  0.5.3              pyhd3eb1b0_0    defaults
nbconvert                 6.0.7                    py38_0    defaults
nbformat                  5.1.3              pyhd3eb1b0_0    defaults
ncurses                   6.2                  h0a44026_1    defaults
nest-asyncio              1.5.1              pyhd3eb1b0_0    defaults
networkx                  2.5                        py_0    defaults
nltk                      3.7                      pypi_0    pypi
nose                      1.3.7           pyhd3eb1b0_1006    defaults
notebook                  6.3.0            py38hecd8cb5_0    defaults
numba                     0.53.1           py38hb2f4e1b_0    defaults
numexpr                   2.7.3            py38h5873af2_1    defaults
numpy                     1.19.2                   pypi_0    pypi
numpydoc                  1.1.0              pyhd3eb1b0_1    defaults
oauthlib                  3.1.1                    pypi_0    pypi
olefile                   0.46                       py_0    defaults
omegaconf                 2.1.1                    pypi_0    pypi
openpyxl                  3.0.7              pyhd3eb1b0_0    defaults
openssl                   1.1.1k               h9ed2024_0    defaults
opt-einsum                3.3.0                    pypi_0    pypi
packaging                 20.9               pyhd3eb1b0_0    defaults
pandas                    1.2.1                    pypi_0    pypi
pandoc                    2.12                 hecd8cb5_0    defaults
pandocfilters             1.4.3            py38hecd8cb5_1    defaults
parso                     0.7.0                      py_0    defaults
partd                     1.2.0              pyhd3eb1b0_0    defaults
path                      15.1.2           py38hecd8cb5_0    defaults
path.py                   12.5.0                        0    defaults
pathlib2                  2.3.5            py38hecd8cb5_2    defaults
pathspec                  0.9.0                    pypi_0    pypi
patsy                     0.5.1                    py38_0    defaults
pcre                      8.44                 hb1e8313_0    defaults
pendulum                  2.1.2                    pypi_0    pypi
pep8                      1.7.1                    py38_0    defaults
pexpect                   4.8.0              pyhd3eb1b0_3    defaults
pickleshare               0.7.5           pyhd3eb1b0_1003    defaults
pillow                    8.2.0            py38h5270095_0    defaults
pip                       21.0.1           py38hecd8cb5_0    defaults
pkginfo                   1.7.0            py38hecd8cb5_0    defaults
platformdirs              2.4.0                    pypi_0    pypi
plotly                    5.4.0                    pypi_0    pypi
pluggy                    0.13.1           py38hecd8cb5_0    defaults
ply                       3.11                     py38_0    defaults
prefect                   1.1.0                    pypi_0    pypi
prometheus-fastapi-instrumentator 5.7.1                    pypi_0    pypi
prometheus-flask-exporter 0.18.5                   pypi_0    pypi
prometheus_client         0.10.1             pyhd3eb1b0_0    defaults
prompt-toolkit            3.0.17             pyh06a4308_0    defaults
prompt_toolkit            3.0.17               hd3eb1b0_0    defaults
protobuf                  3.19.1                   pypi_0    pypi
psutil                    5.8.0            py38h9ed2024_1    defaults
psycopg2                  2.9.3                    pypi_0    pypi
ptyprocess                0.7.0              pyhd3eb1b0_2    defaults
pure-eval                 0.2.2                    pypi_0    pypi
py                        1.10.0             pyhd3eb1b0_0    defaults
py-lief                   0.10.1           py38haf313ee_0    defaults
py-spy                    0.3.11                   pypi_0    pypi
pyasn1                    0.4.8                    pypi_0    pypi
pyasn1-modules            0.2.8                    pypi_0    pypi
pycodestyle               2.6.0              pyhd3eb1b0_0    defaults
pycosat                   0.6.3            py38h1de35cc_1    defaults
pycparser                 2.20                       py_2    defaults
pycurl                    7.43.0.6         py38hddc9c9b_0    defaults
pydantic                  1.8.2                    pypi_0    pypi
pydocstyle                6.0.0              pyhd3eb1b0_0    defaults
pyee                      8.2.2                    pypi_0    pypi
pyerfa                    1.7.3            py38h9ed2024_0    defaults
pyflakes                  2.2.0              pyhd3eb1b0_0    defaults
pygments                  2.8.1              pyhd3eb1b0_0    defaults
pylint                    2.7.4            py38hecd8cb5_1    defaults
pyls-black                0.4.6                hd3eb1b0_0    defaults
pyls-spyder               0.3.2              pyhd3eb1b0_0    defaults
pyodbc                    4.0.30           py38h0a44026_0    defaults
pyopenssl                 20.0.1             pyhd3eb1b0_1    defaults
pyparsing                 2.4.7              pyhd3eb1b0_0    defaults
pypickle                  0.1.1                    pypi_0    pypi
pyppeteer                 0.2.6                    pypi_0    pypi
pyqt                      5.9.2            py38h655552a_2    defaults
pyrsistent                0.17.3           py38haf1e3a3_0    defaults
pysocks                   1.7.1                    py38_1    defaults
pyswarms                  1.3.0                    pypi_0    pypi
pytables                  3.6.1            py38h4727e94_0    defaults
pytest                    6.2.3            py38hecd8cb5_2    defaults
pytest-cov                3.0.0                    pypi_0    pypi
python                    3.8.8                h88f2d9e_5    defaults
python-box                5.4.1                    pypi_0    pypi
python-crfsuite           0.9.8                    pypi_0    pypi
python-dateutil           2.8.1              pyhd3eb1b0_0    defaults
python-dotenv             0.19.2                   pypi_0    pypi
python-editor             1.0.4                    pypi_0    pypi
python-jsonrpc-server     0.4.0                      py_0    defaults
python-language-server    0.36.2             pyhd3eb1b0_0    defaults
python-libarchive-c       2.9                pyhd3eb1b0_1    defaults
python-slugify            5.0.2                    pypi_0    pypi
python-stdnum             1.17                     pypi_0    pypi
python.app                3                py38h9ed2024_0    defaults
pytz                      2021.1             pyhd3eb1b0_0    defaults
pytzdata                  2020.1                   pypi_0    pypi
pywavelets                1.1.1            py38haf1e3a3_2    defaults
pyyaml                    5.4.1            py38h9ed2024_1    defaults
pyzmq                     20.0.0           py38h23ab428_1    defaults
qdarkstyle                2.8.1                      py_0    defaults
qt                        5.9.7                h468cd18_1    defaults
qtawesome                 1.0.2              pyhd3eb1b0_0    defaults
qtconsole                 5.0.3              pyhd3eb1b0_0    defaults
qtpy                      1.9.0                      py_0    defaults
querystring-parser        1.2.4                    pypi_0    pypi
rapidfuzz                 1.8.3                    pypi_0    pypi
ray                       1.11.0                   pypi_0    pypi
readline                  8.1                  h9ed2024_0    defaults
redis                     4.1.3                    pypi_0    pypi
regex                     2021.11.10               pypi_0    pypi
requests                  2.25.1             pyhd3eb1b0_0    defaults
requests-file             1.5.1                    pypi_0    pypi
requests-mock             1.9.3                    pypi_0    pypi
requests-oauthlib         1.3.0                    pypi_0    pypi
requests-toolbelt         0.9.1                    pypi_0    pypi
retrying                  1.3.3                    pypi_0    pypi
rich                      12.0.0                   pypi_0    pypi
ripgrep                   12.1.1                        0    defaults
rope                      0.18.0                     py_0    defaults
rsa                       4.7.2                    pypi_0    pypi
rtree                     0.9.7            py38hecd8cb5_1    defaults
ruamel_yaml               0.15.100         py38h9ed2024_0    defaults
s3transfer                0.5.0                    pypi_0    pypi
scikit-image              0.18.1           py38hb2f4e1b_0    defaults
scikit-learn              0.24.0                   pypi_0    pypi
scipy                     1.7.1                    pypi_0    pypi
seaborn                   0.11.1             pyhd3eb1b0_0    defaults
send2trash                1.5.0              pyhd3eb1b0_1    defaults
setuptools                52.0.0           py38hecd8cb5_0    defaults
simplegeneric             0.8.1                    py38_2    defaults
singledispatch            3.6.1           pyhd3eb1b0_1001    defaults
sip                       4.19.8           py38h0a44026_0    defaults
six                       1.15.0           py38hecd8cb5_0    defaults
smmap                     5.0.0                    pypi_0    pypi
sniffio                   1.2.0            py38hecd8cb5_1    defaults
snowballstemmer           2.1.0              pyhd3eb1b0_0    defaults
sortedcollections         2.1.0              pyhd3eb1b0_0    defaults
sortedcontainers          2.3.0              pyhd3eb1b0_0    defaults
soupsieve                 2.2.1              pyhd3eb1b0_0    defaults
sphinx                    4.0.1              pyhd3eb1b0_0    defaults
sphinxcontrib             1.0                      py38_1    defaults
sphinxcontrib-applehelp   1.0.2              pyhd3eb1b0_0    defaults
sphinxcontrib-devhelp     1.0.2              pyhd3eb1b0_0    defaults
sphinxcontrib-htmlhelp    1.0.3              pyhd3eb1b0_0    defaults
sphinxcontrib-jsmath      1.0.1              pyhd3eb1b0_0    defaults
sphinxcontrib-qthelp      1.0.3              pyhd3eb1b0_0    defaults
sphinxcontrib-serializinghtml 1.1.4              pyhd3eb1b0_0    defaults
sphinxcontrib-websupport  1.2.4                      py_0    defaults
spyder-kernels            1.10.2           py38hecd8cb5_0    defaults
sqlalchemy                1.4.7            py38h9ed2024_0    defaults
sqlite                    3.35.4               hce871da_0    defaults
sqlparse                  0.4.2                    pypi_0    pypi
starlette                 0.17.1                   pypi_0    pypi
statsmodels               0.12.1                   pypi_0    pypi
sympy                     1.8              py38hecd8cb5_0    defaults
tabulate                  0.8.9                    pypi_0    pypi
tbb                       2020.3               h879752b_0    defaults
tblib                     1.7.0                      py_0    defaults
tenacity                  8.0.1                    pypi_0    pypi
tensorboard               2.7.0                    pypi_0    pypi
tensorboard-data-server   0.6.1                    pypi_0    pypi
tensorboard-plugin-wit    1.8.0                    pypi_0    pypi
tensorflow                2.4.3                    pypi_0    pypi
tensorflow-estimator      2.4.0                    pypi_0    pypi
termcolor                 1.1.0                    pypi_0    pypi
terminado                 0.9.4            py38hecd8cb5_0    defaults
testpath                  0.4.4              pyhd3eb1b0_0    defaults
text-unidecode            1.3                      pypi_0    pypi
textdistance              4.2.1              pyhd3eb1b0_0    defaults
threadpoolctl             2.1.0              pyh5ca1d4c_0    defaults
three-merge               0.1.1              pyhd3eb1b0_0    defaults
tifffile                  2020.10.1        py38h0cf3a3e_2    defaults
tk                        8.6.10               hb0a8c7a_0    defaults
toml                      0.10.2             pyhd3eb1b0_0    defaults
tomli                     1.2.2                    pypi_0    pypi
toolz                     0.11.1             pyhd3eb1b0_0    defaults
tornado                   6.1              py38h9ed2024_0    defaults
tqdm                      4.59.0             pyhd3eb1b0_1    defaults
traitlets                 5.0.5              pyhd3eb1b0_0    defaults
typed-ast                 1.4.2            py38h9ed2024_1    defaults
types-pytz                2021.3.6                 pypi_0    pypi
typing-extensions         4.1.1                    pypi_0    pypi
ujson                     4.0.2            py38h23ab428_0    defaults
unicodecsv                0.14.1                   py38_0    defaults
unixodbc                  2.3.9                haf1e3a3_0    defaults
urllib3                   1.26.4             pyhd3eb1b0_0    defaults
uvicorn                   0.15.0                   pypi_0    pypi
uvloop                    0.16.0                   pypi_0    pypi
varname                   0.8.3                    pypi_0    pypi
watchdog                  1.0.2            py38h9ed2024_1    defaults
watchgod                  0.7                      pypi_0    pypi
wcwidth                   0.2.5                      py_0    defaults
webencodings              0.5.1                    py38_1    defaults
websocket-client          1.2.1                    pypi_0    pypi
websockets                9.1                      pypi_0    pypi
werkzeug                  2.1.0                    pypi_0    pypi
wheel                     0.36.2             pyhd3eb1b0_0    defaults
widgetsnbextension        3.5.1                    py38_0    defaults
wordcloud                 1.8.1                    pypi_0    pypi
wrapt                     1.12.1           py38haf1e3a3_1    defaults
wurlitzer                 2.1.0            py38hecd8cb5_0    defaults
xlrd                      2.0.1              pyhd3eb1b0_0    defaults
xlsxwriter                1.3.8              pyhd3eb1b0_0    defaults
xlwings                   0.23.0           py38hecd8cb5_0    defaults
xlwt                      1.3.0                    py38_0    defaults
xmltodict                 0.12.0             pyhd3eb1b0_0    defaults
xz                        5.2.5                h1de35cc_0    defaults
yaml                      0.2.5                haf1e3a3_0    defaults
yapf                      0.31.0             pyhd3eb1b0_0    defaults
yarl                      1.7.2                    pypi_0    pypi
zeep                      4.0.0                    pypi_0    pypi
zeromq                    4.3.4                h23ab428_0    defaults
zict                      2.0.0              pyhd3eb1b0_0    defaults
zipp                      3.4.1              pyhd3eb1b0_0    defaults
zlib                      1.2.11               h1de35cc_3    defaults
zope                      1.0                      py38_1    defaults
zope.event                4.5.0                    py38_0    defaults
zope.interface            5.3.0            py38h9ed2024_0    defaults
zstd                      1.4.5                h41d2c2f_0    defaults
@karrtikr karrtikr added the type::bug describes erroneous operation, use severity::* to classify the type label Apr 19, 2022
@kenodegard kenodegard added source::community catch-all for issues filed by community members plugins::run pertains to conda-run unreproducible we are unable to replicate the issue labels Apr 19, 2022
@kenodegard
Copy link
Contributor

I cannot reproduce this with a simple sleep/print script, I used the following:

from time import sleep

for i in range(100):
    sleep(2)
    print(f"hello {i}")

@karrtikr
Copy link
Author

@Samreay Can you please provide a sample code as asked here microsoft/vscode-python#18700 (comment)?

@Samreay
Copy link

Samreay commented Apr 20, 2022

Hi team! Ive done a bunch of digging to make the smallest possible reproduction and it turns out the issue must come from some difference in process termination between python handling the interrupt and conda interrupt and how that interacts with the ray project.

This file will reproduce:

import time
import ray

def main():
    while True:
        print("Hello World!")
        time.sleep(1)


if __name__ == "__main__":
    ray.init()
    main()

And here is the difference in behaviour between python and contra interrupts:

(base) sh@ARENKO-024 condatest % python reproduce.py                                                                                 
Hello World!
Hello World!
^CTraceback (most recent call last):
  File "reproduce.py", line 13, in <module>
    main()
  File "reproduce.py", line 8, in main
    time.sleep(1)
KeyboardInterrupt

(base) sh@ARENKO-024 condatest % conda run -n base --no-capture-output --live-stream python /Users/sh/Projects/condatest/reproduce.py
Hello World!
Hello World!
^C
CondaError: KeyboardInterrupt

(base) sh@ARENKO-024 condatest % Hello World!
Hello World!
Hello World!
ps aux | grep reproduce.pyHello World!
ps aux | grep reproduce.py
Hello World!
sh               87838   0.0  0.0 34132084    868 s000  R+   10:19am   0:00.00 grep reproduce.py
sh               87771   0.0  0.4 36569276  73096 s000  S    10:19am   0:00.78 python /Users/sh/Projects/condatest/reproduce.py
(base) sh@ARENKO-024 condatest % Hello World!
killHello World!
 Hello World!
Hello World!
Hello World!
87771
*** SIGTERM received at time=1650413974 ***
PC: @     0x7ff81f06fe4a  (unknown)  __select                                                                                                                                                                                                                       
[2022-04-20 10:19:34,450 E 87771 785212] logging.cc:321: *** SIGTERM received at time=1650413974 ***
(base) sh@ARENKO-024 condatest % [2022-04-20 10:19:34,451 E 87771 785212] logging.cc:321: PC: @     0x7ff81f06fe4a  (unknown)  __select

There is a second or two when the python-handled interrupt calls the atexit function to clean ray up, it looks like this isn't happening the same way with conda. I'll raise a bug over in ray too just for visibility.

@kenodegard kenodegard mentioned this issue Jun 15, 2022
12 tasks
@kenodegard kenodegard added severity::3 major; broken functionality with a workaround backlog issue has been triaged but has not been earmarked for any upcoming release and removed unreproducible we are unable to replicate the issue labels Jul 26, 2022
@hoffmanr-cshs hoffmanr-cshs linked a pull request Feb 25, 2023 that will close this issue
3 tasks
@github-actions
Copy link

Hi there, thank you for your contribution!

This issue has been automatically marked as stale because it has not had recent activity. It will be closed automatically if no further activity occurs.

If you would like this issue to remain open please:

  1. Verify that you can still reproduce the issue at hand
  2. Comment that the issue is still reproducible and include:
    - What OS and version you reproduced the issue on
    - What steps you followed to reproduce the issue

NOTE: If this issue was closed prematurely, please leave a comment.

Thanks!

@github-actions github-actions bot added the stale [bot] marked as stale due to inactivity label Jul 26, 2023
@karrtikr
Copy link
Author

@Samreay has provided the reproducer just above, labels not updated after that.

@jezdez jezdez added stale::recovered [bot] recovered after being marked as stale and removed stale [bot] marked as stale due to inactivity labels Jul 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backlog issue has been triaged but has not been earmarked for any upcoming release plugins::run pertains to conda-run severity::3 major; broken functionality with a workaround source::community catch-all for issues filed by community members stale::recovered [bot] recovered after being marked as stale type::bug describes erroneous operation, use severity::* to classify the type
Projects
Status: No status
Development

Successfully merging a pull request may close this issue.

4 participants