salt: [BUG] salt-call hangs after highstate
Description
salt-call fails to terminate after a rendering error during highstate. Must be manually killed.
Setup
{{ salt["does.not.exist"]() }}
Steps to Reproduce the behavior
# salt-call state.apply
local:
Data failed to compile:
----------
Rendering SLS 'base:test' failed: Jinja variable 'salt.utils.templates.AliasedLoader object' has no attribute 'does.not.exist'; line 1
---
{{ salt["does.not.exist"]() }} <======================
---
Expected behavior Process should terminate.
Versions Report Master is 3004.2, minion is 3005 (classic package).
salt-call --versions
Salt Version:
Salt: 3005
Dependency Versions:
cffi: 1.14.5
cherrypy: Not Installed
dateutil: 2.7.3
docker-py: Not Installed
gitdb: Not Installed
gitpython: Not Installed
Jinja2: 2.10.1
libgit2: 1.5.0
M2Crypto: 0.31.0
Mako: Not Installed
msgpack: 0.6.2
msgpack-pure: Not Installed
mysql-python: Not Installed
pycparser: 2.20
pycrypto: Not Installed
pycryptodome: 3.6.1
pygit2: 1.10.0
Python: 3.8.10 (default, Jun 22 2022, 20:18:18)
python-gnupg: 0.4.5
PyYAML: 5.3.1
PyZMQ: 18.1.1
smmap: Not Installed
timelib: Not Installed
Tornado: 4.5.3
ZMQ: 4.3.2
System Versions:
dist: ubuntu 20.04 focal
locale: utf-8
machine: x86_64
release: 5.4.0-125-generic
system: Linux
version: Ubuntu 20.04 focal
Additional context There’s no debug logging after printing the result either. Last messages (after all the rendering) are:
[DEBUG] Initializing new AsyncAuth for (‘/etc/salt/pki/minion’, ‘csrf-stag2-vm.eng.cam.ac.uk’, ‘tcp://129.169.140.30:4506’) [DEBUG] Closing AsyncReqChannel instance [DEBUG] The functions from module ‘highstate’ are being loaded by dir() on the loaded module [DEBUG] LazyLoaded highstate.output
About this issue
- Original URL
- State: closed
- Created 2 years ago
- Reactions: 2
- Comments: 35 (31 by maintainers)
Closing as fix is now available from https://repo.saltproject.io/py3/ubuntu/20.04/amd64/latest/ and https://repo.saltproject.io/py3/ubuntu/20.04/arm64/latest/
@dmurphy18 the minion needs to run 3005. I do not think that the master’s version matters to this issue. When the minion runs 3005 then execute
salt-call state.highstateon the minion.