jupyterhub / kubespawner

Kubernetes spawner for JupyterHub
https://jupyterhub-kubespawner.readthedocs.io
BSD 3-Clause "New" or "Revised" License
549 stars 305 forks source link

TypeError: string indices must be integers at reflector.py #847

Open mrtzgh opened 3 months ago

mrtzgh commented 3 months ago

Bug description

Below log message keeps repeating in the Hub Pod logs:

[D 2024-08-01 15:58:32.699 JupyterHub reflector:289] Connecting pods watcher
[E 2024-08-01 15:58:33.918 JupyterHub reflector:371] Error when watching resources, retrying in 0.2s
    Traceback (most recent call last):
      File "/usr/local/lib/python3.10/dist-packages/kubespawner/reflector.py", line 329, in _watch_and_update
        resource = watch_event["raw_object"]
    TypeError: string indices must be integers

How to reproduce

The log will show up by itself after Hub has started

Expected behaviour

Not to show errors.

Actual behaviour

Printing TypeError

Your personal set up

Full environment ``` aiohappyeyeballs==2.3.4 aiohttp==3.10.0 aiosignal==1.3.1 alembic==1.13.2 async-generator==1.10 async-timeout==4.0.3 attrs==23.2.0 boto3==1.34.152 botocore==1.34.152 cachetools==5.4.0 certifi==2024.7.4 certipy==0.1.3 cffi==1.16.0 charset-normalizer==3.3.2 cryptography==43.0.0 escapism==1.0.1 frozenlist==1.4.1 google-auth==2.32.0 greenlet==3.0.3 idna==3.7 Jinja2==3.1.4 jmespath==1.0.1 jsonschema==4.23.0 jsonschema-specifications==2023.12.1 jupyter-telemetry==0.1.0 jupyterhub @ git+https://github.com/jupyterhub/jupyterhub.git@df7ae422f6db2dc0f57d26bec2be1faaa83911ef jupyterhub-idle-culler @ git+https://github.com/HCharlie/jupyterhub-idle-culler@9f7701a10f5ba40fd8ece483920997cc51c512a7 jupyterhub-kubespawner @ https://github.com/jupyterhub/kubespawner/archive/4ac03858ea0d57044dc1f96a78792a51b2340764.zip kubernetes==29.0.0 kubernetes_asyncio==30.3.0 Mako==1.3.5 MarkupSafe==2.1.5 multidict==6.0.5 oauthenticator==15.1.0 oauthlib==3.2.2 packaging==24.1 pamela==1.1.0 prometheus_client==0.20.0 psycopg2-binary==2.9.9 pyasn1==0.6.0 pyasn1_modules==0.4.0 pycparser==2.22 pycurl==7.44.1 pyOpenSSL==24.2.1 python-dateutil==2.9.0.post0 python-json-logger==2.0.7 python-slugify==8.0.4 PyYAML==6.0.1 referencing==0.35.1 requests==2.32.3 requests-oauthlib==2.0.0 rpds-py==0.19.1 rsa==4.9 ruamel.yaml==0.18.6 ruamel.yaml.clib==0.2.8 s3transfer==0.10.2 six==1.16.0 SQLAlchemy==2.0.31 text-unidecode==1.3 tornado==6.4.1 traitlets==5.14.3 typing_extensions==4.12.2 urllib3==2.2.2 websocket-client==1.8.0 yarl==1.9.4 ```
Configuration
Logs ``` # paste relevant logs here, if any ```
mrtzgh commented 3 months ago

I was able to stop this error by rolling back the kubernetes_asyncio package from version 30.3.0 to 30.1.1