In the logs it shows a redirect loop due to a version mismatch in versions, but I believe that this is a red herring, since I’m able to launch user pods fine in some instances. After an arbitrary number of user pod launches, the user is unable to start any new pods.
$ k get pods -n jupyterhub
datahub-qa-disk-quota-service-68d5864678-m8h9k 1/1 Running 0 4m50s
datahub-qa-jupyterhub-hub-7cb4f7767-tk7kd 1/1 Running 0 4m50s
datahub-qa-jupyterhub-proxy-f87dd7d7f-x2jrt 1/1 Running 0 4m50s
datahub-qa-manual-resetter-74687567dc-mf9fr 1/1 Running 0 4m50s
datahub-qa-postgresql-0 1/1 Running 0 4m50s
Describe Output:
Name: datahub-qa-jupyterhub-hub-7cb4f7767-tk7kd
Namespace: jupyterhub
Priority: 10
Priority Class Name: normal
Service Account: datahub-qa-jupyterhub-hub
Node: its-dsmlp-n604.ucsd.edu/172.17.70.234
Start Time: Tue, 30 Sep 2025 08:28:09 -0700
Labels: app.kubernetes.io/instance=datahub-qa
app.kubernetes.io/managed-by=Helm
app.kubernetes.io/name=jupyterhub
app.kubernetes.io/version=5.3.0
helm.sh/chart=jupyterhub-4.2.0
hub.jupyter.org/network-access-proxy-api=true
hub.jupyter.org/network-access-proxy-http=true
hub.jupyter.org/network-access-singleuser=true
pod-template-hash=7cb4f7767
Annotations: checksum/config-map: 0c627c7fa571e38c291b814a3ae9d1e30ce7d4815e1193a05d747241a69fd9f7
checksum/secret: c45ad3d8fe2dc12b172fa6b05dffc2d68874e8ca3d5bb413a9baa05679494886
cni.projectcalico.org/containerID: 9ff56c9206713d026eba19df2d1705ddab7b1b83491452981b4d42a973cb865e
cni.projectcalico.org/podIP: 10.41.212.66/32
cni.projectcalico.org/podIPs: 10.41.212.66/32
Status: Running
SeccompProfile: RuntimeDefault
IP: 10.41.212.66
IPs:
IP: 10.41.212.66
Controlled By: ReplicaSet/datahub-qa-jupyterhub-hub-7cb4f7767
Containers:
hub:
Container ID: cri-o://4563fe19382b1c6cee18a1e4ab88c743d12985ca70349f4e34b52fc58b10e352
Image: r-its-ats-docker.repository.ucsd.edu/ats/datahub:fix-testing-errors
Image ID: r-its-ats-docker.repository.ucsd.edu/ats/datahub@sha256:bc8bdeb935918e201078189f2f9049bf04681a504963608e511c1f2d87ba257d
Port: 8081/TCP
Host Port: 0/TCP
Args:
jupyterhub
--config
/usr/local/etc/jupyterhub/jupyterhub_config.py
--debug
--upgrade-db
State: Running
Started: Tue, 30 Sep 2025 08:28:27 -0700
Ready: True
Restart Count: 0
Liveness: http-get http://:http/hub/health delay=300s timeout=3s period=10s #success=1 #failure=30
Readiness: http-get http://:http/hub/health delay=0s timeout=1s period=2s #success=1 #failure=1000
Environment:
PYTHONUNBUFFERED: 1
HELM_RELEASE_NAME: datahub-qa
POD_NAMESPACE: jupyterhub (v1:metadata.namespace)
CONFIGPROXY_AUTH_TOKEN: <set to the key 'hub.config.ConfigurableHTTPProxy.auth_token' in secret 'datahub-qa-jupyterhub-hub'> Optional: false
AWSED_API_KEY: AWSEd api_key=PKWEGXZhrsrNMZdexTuQVsJ6
AWSED_BASE_URL: https://awsed-qa.ucsd.edu/api/
SAML_HTTPS_OVERRIDE: yes
Mounts:
/etc/datahub from datahub-config (rw)
/etc/saml from jupyterhub-saml-auth (rw)
/home/jovyan/.jupyter/custom from theme (rw,path="static")
/home/jovyan/jupyterhub-saml-auth from jupyterhub-saml-auth-app (rw)
/srv/nbmessages/admin from nbmessage-board (rw)
/usr/local/etc/jupyterhub/config/ from config (rw)
/usr/local/etc/jupyterhub/jupyterhub_config.py from config (rw,path="jupyterhub_config.py")
/usr/local/etc/jupyterhub/secret/ from secret (rw)
/usr/local/etc/jupyterhub/z2jh.py from config (rw,path="z2jh.py")
/usr/local/share/jupyterhub/datasets from theme (rw,path="datasets")
/usr/local/share/jupyterhub/static/custom from theme (rw,path="static")
/usr/local/share/jupyterhub/status from theme (rw,path="status")
/usr/local/share/jupyterhub/templates from theme (rw,path="templates")
/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-s6m2p (ro)
Conditions:
Type Status
PodReadyToStartContainers True
Initialized True
Ready True
ContainersReady True
PodScheduled True
Volumes:
config:
Type: ConfigMap (a volume populated by a ConfigMap)
Name: datahub-qa-jupyterhub-hub
Optional: false
secret:
Type: Secret (a volume populated by a Secret)
SecretName: datahub-qa-jupyterhub-hub
Optional: false
jupyterhub-saml-auth:
Type: NFS (an NFS mount that lasts the lifetime of a pod)
Server: its-dsmlp-fs04.ucsd.edu
Path: /export/apps/jupyterhub/saml/etc
ReadOnly: false
jupyterhub-saml-auth-app:
Type: NFS (an NFS mount that lasts the lifetime of a pod)
Server: its-dsmlp-fs04.ucsd.edu
Path: /export/apps/jupyterhub/saml/jupyterhub-saml-auth
ReadOnly: false
nbmessage-board:
Type: NFS (an NFS mount that lasts the lifetime of a pod)
Server: its-dsmlp-fs04.ucsd.edu
Path: /export/apps/nbmessage-board
ReadOnly: false
theme:
Type: NFS (an NFS mount that lasts the lifetime of a pod)
Server: its-dsmlp-fs04.ucsd.edu
Path: /export/apps/jupyterhub/dsmlp/jupyterhub-theme-qa
ReadOnly: false
datahub-config:
Type: NFS (an NFS mount that lasts the lifetime of a pod)
Server: its-dsmlp-fs04.ucsd.edu
Path: /export/apps/jupyterhub/dsmlp/datahub-config-qa
ReadOnly: false
kube-api-access-s6m2p:
Type: Projected (a volume that contains injected data from multiple sources)
TokenExpirationSeconds: 3607
ConfigMapName: kube-root-ca.crt
ConfigMapOptional: <nil>
DownwardAPI: true
QoS Class: BestEffort
Node-Selectors: dsmlp-apps=true
Tolerations: hub.jupyter.org/dedicated=core:NoSchedule
hub.jupyter.org_dedicated=core:NoSchedule
node-type=apps:NoSchedule
node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 5m22s default-scheduler Successfully assigned jupyterhub/datahub-qa-jupyterhub-hub-7cb4f7767-tk7kd to its-dsmlp-n604.ucsd.edu
Normal Pulling 5m21s kubelet Pulling image "r-its-ats-docker.repository.ucsd.edu/ats/datahub:fix-testing-errors"
Normal Pulled 5m5s kubelet Successfully pulled image "r-its-ats-docker.repository.ucsd.edu/ats/datahub:fix-testing-errors" in 16.722s (16.722s including waiting). Image size: 1445000290 bytes.
Normal Created 5m4s kubelet Created container: hub
Normal Started 5m4s kubelet Started container hub
Warning Unhealthy 5m1s (x4 over 5m3s) kubelet Readiness probe failed: Get "http://10.41.212.66:8081/hub/health": dial tcp 10.41.212.66:8081: connect: connection refused
Main Hub Pod Logs (On Failure):
[D 2025-09-30 15:28:28.733 JupyterHub application:908] Looking for /usr/local/etc/jupyterhub/jupyterhub_config in /app
Loading /usr/local/etc/jupyterhub/secret/values.yaml
No config at /usr/local/etc/jupyterhub/existing-secret/values.yaml
Loading extra config: config
[D 2025-09-30 15:28:29.615 JupyterHub application:929] Loaded config file: /usr/local/etc/jupyterhub/jupyterhub_config.py
[W 2025-09-30 15:28:29.733 JupyterHub app:1715] JupyterHub.extra_handlers is deprecated in JupyterHub 3.1. Please use JupyterHub services to register additional HTTP endpoints.
[I 2025-09-30 15:28:29.733 JupyterHub app:3354] Running JupyterHub version 5.3.0
[I 2025-09-30 15:28:29.733 JupyterHub app:3384] Using Authenticator: jupyterhub_saml_auth.authenticator.SAMLAuthenticator-0.4.0
[I 2025-09-30 15:28:29.734 JupyterHub app:3384] Using Spawner: builtins.PatchedSpawner
[I 2025-09-30 15:28:29.734 JupyterHub app:3384] Using Proxy: jupyterhub.proxy.ConfigurableHTTPProxy-5.3.0
/usr/local/lib/python3.12/site-packages/jupyter_events/schema.py:68: JupyterEventsVersionWarning: The `version` property of an event schema must be a string. It has been type coerced, but in a future version of this library, it will fail to validate. Please update schema: https://schema.jupyter.org/jupyterhub/events/server-action
validate_schema(_schema)
[D 2025-09-30 15:28:29.736 JupyterHub app:2006] Connecting to db: postgresql+psycopg2://jupyterhub:[redacted]@datahub-qa-postgresql.jupyterhub.svc.cluster.local:5432/jupyterhub
[D 2025-09-30 15:28:29.854 JupyterHub orm:1509] database schema version found: 4621fec11365
[D 2025-09-30 15:28:29.934 JupyterHub orm:1509] database schema version found: 4621fec11365
[D 2025-09-30 15:28:30.048 JupyterHub app:2346] Loading roles into database
[D 2025-09-30 15:28:30.048 JupyterHub app:2355] Loading role user
[D 2025-09-30 15:28:30.048 JupyterHub app:2357] Overriding default role user
[D 2025-09-30 15:28:30.053 JupyterHub app:2355] Loading role jupyter-idle-culler
[D 2025-09-30 15:28:30.055 JupyterHub app:2355] Loading role server
[D 2025-09-30 15:28:30.055 JupyterHub app:2357] Overriding default role server
[I 2025-09-30 15:28:30.345 JupyterHub app:2927] Creating service jupyterhub-idle-culler without oauth.
[I 2025-09-30 15:28:30.369 JupyterHub app:2889] Creating service disk-quota-service with oauth_client_id=service-disk-quota-service
[I 2025-09-30 15:28:30.393 JupyterHub provider:663] Updating oauth client service-disk-quota-service
[I 2025-09-30 15:28:30.422 JupyterHub app:2889] Creating service manual-resetter with oauth_client_id=service-manual-resetter
[I 2025-09-30 15:28:30.433 JupyterHub provider:663] Updating oauth client service-manual-resetter
[D 2025-09-30 15:28:30.473 JupyterHub app:2679] Not duplicating token <APIToken('efae...', service='disk-quota-service', client_id='jupyterhub')>
[D 2025-09-30 15:28:30.479 JupyterHub app:2679] Not duplicating token <APIToken('5a0a...', service='manual-resetter', client_id='jupyterhub')>
[D 2025-09-30 15:28:30.480 JupyterHub app:2693] Purging expired APITokens
[D 2025-09-30 15:28:30.485 JupyterHub app:2693] Purging expired OAuthCodes
[D 2025-09-30 15:28:30.492 JupyterHub app:2693] Purging expired Shares
[D 2025-09-30 15:28:30.494 JupyterHub app:2693] Purging expired ShareCodes
[D 2025-09-30 15:28:30.499 JupyterHub app:2467] Loading role assignments from config
[I 2025-09-30 15:28:30.547 JupyterHub cache:154] Creating cache['type'] = in-memory
[D 2025-09-30 15:28:30.553 JupyterHub app:2978] Initializing spawners
[D 2025-09-30 15:28:30.565 JupyterHub app:3128] Loaded users:
[I 2025-09-30 15:28:30.565 JupyterHub app:3424] Initialized 0 spawners in 0.012 seconds
[I 2025-09-30 15:28:30.583 JupyterHub metrics:425] Found 0 active users in the last ActiveUserPeriods.twenty_four_hours
[I 2025-09-30 15:28:30.584 JupyterHub metrics:425] Found 1 active users in the last ActiveUserPeriods.seven_days
[I 2025-09-30 15:28:30.586 JupyterHub metrics:425] Found 1 active users in the last ActiveUserPeriods.thirty_days
[I 2025-09-30 15:28:30.586 JupyterHub app:3711] Not starting proxy
[D 2025-09-30 15:28:30.587 JupyterHub proxy:925] Proxy: Fetching GET http://datahub-qa-jupyterhub-proxy-api:8001/api/routes
[D 2025-09-30 15:28:30.597 JupyterHub proxy:996] Omitting non-jupyterhub route '/'
[I 2025-09-30 15:28:30.597 JupyterHub app:3747] Hub API listening on http://:8081/hub/
[I 2025-09-30 15:28:30.597 JupyterHub app:3749] Private Hub API connect url http://datahub-qa-jupyterhub-hub:8081/hub/
[I 2025-09-30 15:28:30.597 JupyterHub app:3623] Starting managed service jupyterhub-idle-culler
[I 2025-09-30 15:28:30.597 JupyterHub service:423] Starting service 'jupyterhub-idle-culler': ['python3', '-m', 'jupyterhub_idle_culler', '--url=http://localhost:8081/hub/api', '--timeout=3600', '--cull-every=600', '--concurrency=10']
[I 2025-09-30 15:28:30.599 JupyterHub service:136] Spawning python3 -m jupyterhub_idle_culler --url=http://localhost:8081/hub/api --timeout=3600 --cull-every=600 --concurrency=10
[D 2025-09-30 15:28:30.600 JupyterHub spawner:1693] Polling subprocess every 30s
[I 2025-09-30 15:28:30.600 JupyterHub app:3632] Adding external service disk-quota-service at http://datahub-qa-disk-quota-service.jupyterhub.svc.cluster.local:5000
[D 2025-09-30 15:28:30.601 JupyterHub utils:297] Waiting 1s for server at http://datahub-qa-disk-quota-service.jupyterhub.svc.cluster.local:5000/services/disk-quota-service/
[D 2025-09-30 15:28:30.613 JupyterHub utils:314] Server at http://datahub-qa-disk-quota-service.jupyterhub.svc.cluster.local:5000/services/disk-quota-service/ responded with 302
[D 2025-09-30 15:28:30.613 JupyterHub utils:333] Server at http://datahub-qa-disk-quota-service.jupyterhub.svc.cluster.local:5000/services/disk-quota-service/ responded in 0.01s
[I 2025-09-30 15:28:30.613 JupyterHub app:3632] Adding external service manual-resetter at http://datahub-qa-manual-resetter.jupyterhub.svc.cluster.local:5001
[D 2025-09-30 15:28:30.614 JupyterHub utils:297] Waiting 1s for server at http://datahub-qa-manual-resetter.jupyterhub.svc.cluster.local:5001/services/manual-resetter/
[D 2025-09-30 15:28:30.628 JupyterHub utils:314] Server at http://datahub-qa-manual-resetter.jupyterhub.svc.cluster.local:5001/services/manual-resetter/ responded with 302
[D 2025-09-30 15:28:30.629 JupyterHub utils:333] Server at http://datahub-qa-manual-resetter.jupyterhub.svc.cluster.local:5001/services/manual-resetter/ responded in 0.01s
[D 2025-09-30 15:28:30.629 JupyterHub proxy:389] Fetching routes to check
[D 2025-09-30 15:28:30.629 JupyterHub proxy:925] Proxy: Fetching GET http://datahub-qa-jupyterhub-proxy-api:8001/api/routes
[D 2025-09-30 15:28:30.634 JupyterHub proxy:996] Omitting non-jupyterhub route '/'
[D 2025-09-30 15:28:30.634 JupyterHub proxy:392] Checking routes
[I 2025-09-30 15:28:30.634 JupyterHub proxy:477] Adding route for Hub: / => http://datahub-qa-jupyterhub-hub:8081
[W 2025-09-30 15:28:30.636 JupyterHub proxy:445] Adding missing route for disk-quota-service (Server(url=http://datahub-qa-disk-quota-service.jupyterhub.svc.cluster.local:5000/services/disk-quota-service/, bind_url=http://datahub-qa-disk-quota-service.jupyterhub.svc.cluster.local:5000/services/disk-quota-service/))
[W 2025-09-30 15:28:30.637 JupyterHub proxy:445] Adding missing route for manual-resetter (Server(url=http://datahub-qa-manual-resetter.jupyterhub.svc.cluster.local:5001/services/manual-resetter/, bind_url=http://datahub-qa-manual-resetter.jupyterhub.svc.cluster.local:5001/services/manual-resetter/))
[D 2025-09-30 15:28:30.638 JupyterHub proxy:925] Proxy: Fetching POST http://datahub-qa-jupyterhub-proxy-api:8001/api/routes/
[I 2025-09-30 15:28:30.639 JupyterHub proxy:312] Adding service disk-quota-service to proxy /services/disk-quota-service/ => http://datahub-qa-disk-quota-service.jupyterhub.svc.cluster.local:5000
[D 2025-09-30 15:28:30.639 JupyterHub proxy:925] Proxy: Fetching POST http://datahub-qa-jupyterhub-proxy-api:8001/api/routes/services/disk-quota-service
[I 2025-09-30 15:28:30.640 JupyterHub proxy:312] Adding service manual-resetter to proxy /services/manual-resetter/ => http://datahub-qa-manual-resetter.jupyterhub.svc.cluster.local:5001
[D 2025-09-30 15:28:30.640 JupyterHub proxy:925] Proxy: Fetching POST http://datahub-qa-jupyterhub-proxy-api:8001/api/routes/services/manual-resetter
[I 2025-09-30 15:28:30.654 JupyterHub app:3780] JupyterHub is now running, internal Hub API at http://datahub-qa-jupyterhub-hub:8081/hub/
[D 2025-09-30 15:28:30.655 JupyterHub app:3347] It took 1.934 seconds for the Hub to start
[D 2025-09-30 15:28:30.930 JupyterHub base:366] Recording first activity for <APIToken('faa3...', service='jupyterhub-idle-culler', client_id='jupyterhub')>
[I 2025-09-30 15:28:30.937 JupyterHub log:192] 200 GET /hub/api/ (jupyterhub-idle-culler@::1) 11.77ms
[D 2025-09-30 15:28:30.946 JupyterHub scopes:1013] Checking access to /hub/api/users via scope list:users
[I 2025-09-30 15:28:30.966 JupyterHub log:192] 200 GET /hub/api/users?state=[secret] (jupyterhub-idle-culler@::1) 24.33ms
[D 2025-09-30 15:39:24.685 JupyterHub spawner:3653] Applying KubeSpawner override for profile 'TEST_NBGRADER - DTA [FA23]'
[D 2025-09-30 15:39:24.685 JupyterHub spawner:3631] .. overriding KubeSpawner value namespace=n2akiti
[D 2025-09-30 15:39:24.685 JupyterHub spawner:3631] .. overriding KubeSpawner value args=['--', '/opt/k8s-support/bin/initenv-createhomedir.sh', 'jupyterhub-singleuser', '--KernelRestarter.restart_limit=0']
[D 2025-09-30 15:39:24.686 JupyterHub spawner:3631] .. overriding KubeSpawner value cmd=/opt/k8s-support/bin/tini-wrapper
[D 2025-09-30 15:39:24.686 JupyterHub spawner:3631] .. overriding KubeSpawner value cpu_guarantee=1
[D 2025-09-30 15:39:24.686 JupyterHub spawner:3631] .. overriding KubeSpawner value cpu_limit=2
[D 2025-09-30 15:39:24.686 JupyterHub spawner:3631] .. overriding KubeSpawner value image_spec=ghcr.io/ucsd-ets/rstudio-notebook:2023.4-stable
[W 2025-09-30 15:39:24.686 JupyterHub spawner:1994] KubeSpawner.image_spec is deprecated in 0.10. Use KubeSpawner.image
[D 2025-09-30 15:39:24.686 JupyterHub spawner:3631] .. overriding KubeSpawner value image_pull_policy=Always
[D 2025-09-30 15:39:24.686 JupyterHub spawner:3631] .. overriding KubeSpawner value mem_guarantee=2G
[D 2025-09-30 15:39:24.686 JupyterHub spawner:3631] .. overriding KubeSpawner value mem_limit=4G
[D 2025-09-30 15:39:24.686 JupyterHub spawner:3631] .. overriding KubeSpawner value extra_resource_guarantees={'nvidia.com/gpu': 0}
[D 2025-09-30 15:39:24.687 JupyterHub spawner:3631] .. overriding KubeSpawner value priority_class_name=normal
[D 2025-09-30 15:39:24.687 JupyterHub spawner:3631] .. overriding KubeSpawner value extra_resource_limits={'nvidia.com/gpu': 0}
[D 2025-09-30 15:39:24.687 JupyterHub spawner:3631] .. overriding KubeSpawner value extra_labels={'dsmlp/user': 'n2akiti', 'dsmlp/course': 'TEST_NBGRADER'}
[D 2025-09-30 15:39:24.687 JupyterHub spawner:3631] .. overriding KubeSpawner value environment={'JUPYTERHUB_ACTIVITY_URL': 'http://datahub-qa-jupyterhub-hub.jupyterhub.svc.cluster.local:8081/hub/api/users/n2akiti/activity', 'JUPYTERHUB_API_URL': 'http://datahub-qa-jupyterhub-hub.jupyterhub.svc.cluster.local:8081/hub/api', 'NB_USER': 'n2akiti', 'XDG_CACHE_HOME': '/home/n2akiti/.cache/', 'USER': 'n2akiti', 'LOGNAME': 'n2akiti', 'JUPYTERHUB_USER': 'n2akiti'}
[D 2025-09-30 15:39:24.687 JupyterHub spawner:3631] .. overriding KubeSpawner value init_containers=[]
[D 2025-09-30 15:39:24.687 JupyterHub spawner:3631] .. overriding KubeSpawner value uid=1374478
[D 2025-09-30 15:39:24.687 JupyterHub spawner:3631] .. overriding KubeSpawner value lifecycle_hooks={}
[I 2025-09-30 15:39:24.692 JupyterHub spawner:3153] Pod is being modified via modify_pod_hook
[I 2025-09-30 15:39:24.692 JupyterHub <string>:152] selected
[I 2025-09-30 15:39:24.692 JupyterHub spawner:2890] Attempting to create pod dsmlp-jupyter-n2akiti, with timeout 30
[I 2025-09-30 15:39:25.131 JupyterHub log:192] 302 POST /hub/spawn/n2akiti?_xsrf=[secret] -> /hub/spawn-pending/n2akiti?_xsrf=[secret] (n2akiti@172.17.86.170) 1017.16ms
[D 2025-09-30 15:39:25.199 JupyterHub scopes:1013] Checking access to /hub/spawn-pending/n2akiti via scope servers!server=n2akiti/
[I 2025-09-30 15:39:25.199 JupyterHub pages:400] n2akiti is pending spawn
[I 2025-09-30 15:39:25.202 JupyterHub log:192] 200 GET /hub/spawn-pending/n2akiti?_xsrf=[secret] (n2akiti@172.17.86.170) 18.78ms
[D 2025-09-30 15:39:25.253 JupyterHub scopes:1013] Checking access to /hub/api/users/n2akiti/server/progress via scope read:servers!server=n2akiti/
[D 2025-09-30 15:39:25.262 JupyterHub spawner:2672] progress generator: dsmlp-jupyter-n2akiti
[D 2025-09-30 15:39:25.851 JupyterHub log:192] 200 GET /hub/health (@172.17.70.234) 1.14ms
[D 2025-09-30 15:39:26.926 JupyterHub reflector:390] pods watcher timeout
[D 2025-09-30 15:39:26.926 JupyterHub reflector:304] Connecting pods watcher
[D 2025-09-30 15:39:27.028 JupyterHub reflector:390] events watcher timeout
[D 2025-09-30 15:39:27.028 JupyterHub reflector:304] Connecting events watcher
[D 2025-09-30 15:39:27.852 JupyterHub log:192] 200 GET /hub/health (@172.17.70.234) 1.12ms
[D 2025-09-30 15:39:29.474 JupyterHub spawner:3254] pod n2akiti/dsmlp-jupyter-n2akiti events before launch: 2025-09-30T15:39:25Z [Normal] Successfully assigned n2akiti/dsmlp-jupyter-n2akiti to its-dsmlp-n27.ucsd.edu
2025-09-30T15:39:26Z [Normal] Container image "ghcr.io/ucsd-ets/k8s-support:updated-passwd" already present on machine
2025-09-30T15:39:26Z [Normal] Created container: init-support
2025-09-30T15:39:26Z [Normal] Started container init-support
2025-09-30T15:39:27Z [Normal] Pulling image "ghcr.io/ucsd-ets/rstudio-notebook:2023.4-stable"
2025-09-30T15:39:28Z [Normal] Successfully pulled image "ghcr.io/ucsd-ets/rstudio-notebook:2023.4-stable" in 639ms (639ms including waiting). Image size: 6083511462 bytes.
2025-09-30T15:39:28Z [Normal] Created container: notebook
2025-09-30T15:39:28Z [Normal] Started container notebook
[D 2025-09-30 15:39:29.480 JupyterHub spawner:1693] Polling subprocess every 30s
[D 2025-09-30 15:39:29.485 JupyterHub utils:297] Waiting 30s for server at http://10.41.226.230:8888/user/n2akiti/api
[D 2025-09-30 15:39:29.852 JupyterHub log:192] 200 GET /hub/health (@172.17.70.234) 1.91ms
[D 2025-09-30 15:39:29.853 JupyterHub log:192] 200 GET /hub/health (@172.17.70.234) 2.12ms
[D 2025-09-30 15:39:30.655 JupyterHub utils:297] Waiting 1s for server at http://datahub-qa-disk-quota-service.jupyterhub.svc.cluster.local:5000/services/disk-quota-service/
[D 2025-09-30 15:39:30.655 JupyterHub proxy:925] Proxy: Fetching GET http://datahub-qa-jupyterhub-proxy-api:8001/api/routes
[D 2025-09-30 15:39:30.659 JupyterHub utils:314] Server at http://datahub-qa-disk-quota-service.jupyterhub.svc.cluster.local:5000/services/disk-quota-service/ responded with 302
[D 2025-09-30 15:39:30.660 JupyterHub utils:333] Server at http://datahub-qa-disk-quota-service.jupyterhub.svc.cluster.local:5000/services/disk-quota-service/ responded in 0.00s
[D 2025-09-30 15:39:30.660 JupyterHub app:2970] External service disk-quota-service running at http://datahub-qa-disk-quota-service.jupyterhub.svc.cluster.local:5000
[D 2025-09-30 15:39:30.661 JupyterHub utils:297] Waiting 1s for server at http://datahub-qa-manual-resetter.jupyterhub.svc.cluster.local:5001/services/manual-resetter/
[D 2025-09-30 15:39:30.662 JupyterHub proxy:392] Checking routes
[D 2025-09-30 15:39:30.674 JupyterHub utils:314] Server at http://datahub-qa-manual-resetter.jupyterhub.svc.cluster.local:5001/services/manual-resetter/ responded with 302
[D 2025-09-30 15:39:30.674 JupyterHub utils:333] Server at http://datahub-qa-manual-resetter.jupyterhub.svc.cluster.local:5001/services/manual-resetter/ responded in 0.01s
[D 2025-09-30 15:39:30.674 JupyterHub app:2970] External service manual-resetter running at http://datahub-qa-manual-resetter.jupyterhub.svc.cluster.local:5001
[I 2025-09-30 15:39:30.883 JupyterHub log:192] 200 GET /hub/api (@10.41.226.230) 1.40ms
[D 2025-09-30 15:39:30.912 JupyterHub base:366] Recording first activity for <APIToken('cb5a...', user='n2akiti', client_id='jupyterhub')>
[D 2025-09-30 15:39:30.922 JupyterHub scopes:1013] Checking access to /hub/api/users/n2akiti/activity via scope users:activity!user=n2akiti
[D 2025-09-30 15:39:30.931 JupyterHub users:1006] Activity for user n2akiti: 2025-09-30T15:39:28.933146Z
[D 2025-09-30 15:39:30.931 JupyterHub users:1024] Activity on server n2akiti/: 2025-09-30T15:39:28.933146Z
[I 2025-09-30 15:39:30.936 JupyterHub log:192] 200 POST /hub/api/users/n2akiti/activity (n2akiti@::ffff:172.17.70.237) 32.08ms
[D 2025-09-30 15:39:31.091 JupyterHub utils:333] Server at http://10.41.226.230:8888/user/n2akiti/api responded in 1.61s
[I 2025-09-30 15:39:31.092 JupyterHub base:1126] User n2akiti took 6.964 seconds to start
[I 2025-09-30 15:39:31.092 JupyterHub proxy:331] Adding user n2akiti to proxy /user/n2akiti/ => http://10.41.226.230:8888
[D 2025-09-30 15:39:31.092 JupyterHub proxy:925] Proxy: Fetching POST http://datahub-qa-jupyterhub-proxy-api:8001/api/routes/user/n2akiti
[I 2025-09-30 15:39:31.097 JupyterHub users:899] Server n2akiti is ready
[I 2025-09-30 15:39:31.099 JupyterHub log:192] 200 GET /hub/api/users/n2akiti/server/progress?_xsrf=[secret] (n2akiti@172.17.86.170) 5857.94ms
[D 2025-09-30 15:39:31.123 JupyterHub scopes:1013] Checking access to /hub/spawn-pending/n2akiti via scope servers!server=n2akiti/
[I 2025-09-30 15:39:31.124 JupyterHub log:192] 302 GET /hub/spawn-pending/n2akiti?_xsrf=[secret] -> /user/n2akiti/ (n2akiti@172.17.86.170) 15.21ms
[I 2025-09-30 15:39:31.134 JupyterHub log:192] 302 GET /user/n2akiti/ -> /hub/user/n2akiti/ (@172.17.86.170) 2.08ms
[I 2025-09-30 15:39:31.159 JupyterHub log:192] 302 GET /hub/user/n2akiti/ -> /user/n2akiti/?redirects=1 (n2akiti@172.17.86.170) 13.90ms
[I 2025-09-30 15:39:31.213 JupyterHub log:192] 302 GET /user/n2akiti/?redirects=1 -> /hub/user/n2akiti/?redirects=1 (@172.17.86.170) 2.12ms
[W 2025-09-30 15:39:31.239 JupyterHub base:1867] Redirect loop detected on /hub/user/n2akiti/?redirects=1
[D 2025-09-30 15:39:31.851 JupyterHub log:192] 200 GET /hub/health (@172.17.70.234) 1.25ms
[I 2025-09-30 15:39:33.241 JupyterHub log:192] 302 GET /hub/user/n2akiti/?redirects=1 -> /user/n2akiti/?redirects=2 (n2akiti@172.17.86.170) 2015.45ms
[I 2025-09-30 15:39:33.271 JupyterHub log:192] 302 GET /user/n2akiti/?redirects=2 -> /hub/user/n2akiti/?redirects=2 (@172.17.86.170) 2.18ms
[W 2025-09-30 15:39:33.291 JupyterHub web:1873] 500 GET /hub/user/n2akiti/?redirects=2 (172.17.86.170): Redirect loop detected. Notebook has jupyterhub version 1.4.1, but the Hub expects 5.3.0. Try installing jupyterhub==5.3.0 in the user environment if you continue to have problems.
[D 2025-09-30 15:39:33.292 JupyterHub base:1542] Using default error template for 500
[E 2025-09-30 15:39:33.323 JupyterHub log:184] {
"Connection": "close",
"X-Real-Ip": "172.17.86.170",
"X-Forwarded-For": "172.17.86.170",
"X-Forwarded-Host": "datahub.ucsd.edu",
"X-Forwarded-Port": "443",
"X-Forwarded-Proto": "https",
"Host": "datahub.ucsd.edu",
"Cache-Control": "max-age=0",
"Upgrade-Insecure-Requests": "1",
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7",
"Sec-Fetch-Site": "same-origin",
"Sec-Fetch-Mode": "navigate",
"Sec-Fetch-Dest": "document",
"Sec-Ch-Ua": "\"Chromium\";v=\"140\", \"Not=A?Brand\";v=\"24\", \"Google Chrome\";v=\"140\"",
"Sec-Ch-Ua-Mobile": "?0",
"Sec-Ch-Ua-Platform": "\"macOS\"",
"Referer": "https://datahub.ucsd.edu/hub/spawn-pending/n2akiti?_xsrf=MnwxOjB8MTA6MTc1OTI0NjY2NHw1Ol94c3JmfDg4Ok1ERTBObVZsWm1RME1EY3pOR0ptTlRrd1lUZ3lNMk5oWlRVMU1XVTJaR0k2WlRWbE1EVTBaRGhoTUdVeE5HSTROR0poTlRnMk9UWmpaRGMzTVdZM05qRT18MTUxZDczMWYyNjA1ZTViNWQ4YzY5NjVjOTcxN2JhNmY5YTE5ZGVjNmY3NzZlZDA1NzIwODY0N2E1MGY3OWQ3Nw",
"Accept-Encoding": "gzip, deflate, br, zstd",
"Accept-Language": "en-US,en;q=0.9,es;q=0.8",
"Priority": "u=0, i",
"Cookie": "jupyterhub-hub-login=[secret]; _xsrf=[secret]; service-disk-quota-service-oauth-state=[secret]; jupyterhub-session-id=[secret]; _gcl_au=[secret]; _rdt_uuid=[secret]; _uetvid=[secret]; _ga_8BP9YL1JLD=[secret]; nmstat=[secret]; _gid=[secret]; _ga_DQLWSKCKE6=[secret]; _ga_PWJGRGMV0T=[secret]; _ga_NBFHGPEBGT=[secret]; _ga=[secret]; _ga_E3FLY5PZSP=[secret]; jupyterhub_release=[secret]"
}
[E 2025-09-30 15:39:33.323 JupyterHub log:192] 500 GET /hub/user/n2akiti/?redirects=2 (n2akiti@172.17.86.170) 44.55ms
[D 2025-09-30 15:39:33.851 JupyterHub log:192] 200 GET /hub/health (@172.17.70.234) 0.92ms