container-service-extension
container-service-extension copied to clipboard
"Error: maximum recursion depth exceeded" when running Python 3.8.2
Saw a ping from @jondwaite in the VCPP community slack channel regarding an issue accessing CSE (2.6.0) via the vcd-cli. I set up a quick reproducer and was able to see the same behavior.
Running Python 3.8.2 in a virtualenv for testing on both client and server.
From the server:
$ python -V
Python 3.8.2
$ cse version
CSE, Container Service Extension for VMware vCloud Director, version 2.6.0
cse run against the config file runs as expected:
$ cse run -c config-260.yaml -p pks-config.yaml --skip-config-decryption
Installed Python version: 3.8.2 (default, Apr 29 2020, 09:55:29)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)]
Validating config file 'config-260.yaml'
---output omitted---
CSE installation is valid
Started thread 'MessageConsumer-0 (140614775097088)'
Started thread 'MessageConsumer-1 (140614544914176)'
Started thread 'MessageConsumer-2 (140614758311680)'
Started thread 'MessageConsumer-3 (140614766704384)'
Started thread 'MessageConsumer-4 (140614536521472)'
Container Service Extension for vCloud Director
Server running using config file: config-260.yaml
Log files: cse-logs/cse-server-info.log, cse-logs/cse-server-debug.log
waiting for requests (ctrl+c to close)
Now when testing vcd cse commands from a client:
# python -V
Python 3.8.2
# cse version
CSE, Container Service Extension for VMware vCloud Director, version 2.6.0
# vcd cse system info
Usage: vcd cse system info [OPTIONS]
Try 'vcd cse system info -h' for help.
Error: maximum recursion depth exceeded
# vcd cse cluster list
Usage: vcd cse cluster list [OPTIONS]
Try 'vcd cse cluster list -h' for help.
Error: maximum recursion depth exceeded
Jon mentioned that this might be the issue: https://github.com/pika/pika/pull/1254/files
If that is indeed the case, we should update the documentation to be more specific about "supported" Python versions.
Quick update, I was able to run vcd cse commands succesfully with the cse server running Python 3.7.3 and the client running 3.8.2:
# python -V
Python 3.8.2
# vcd cse cluster list
name vdc status org_name k8s_version k8s_provider
------------- ----------------- ---------------- ------------ ------------- --------------
routed-test cse-standard-ovdc POWERED_ON cse-demo-org 1.17.2 native
vcpp-standard cse-standard-ovdc POWERED_ON cse-demo-org 1.17.2 native
vcpp-pks cse-ent-ovdc create succeeded cse-demo-org 1.16.7 ent-pks
This is an issue with pika (AMQP library that CSE uses). I think we have answered with the same reply on the community post.
Regards Aritra Sen
It would be helpful if the answer could be added here as well. Since other people are sure to encounter the same problem.