GetFlightInfo failed: Invalid or expired token
Why eddytor query fails with this error - and the two fixes.
eddytor query failing with:
GetFlightInfo failed: Invalid or expired token…almost always has one of two causes. eddytor query uses Flight SQL on a
separate endpoint and a separate credential expectation from the REST API.
Cause 1 - the Flight URL isn't set (or is wrong)
eddytor query talks Flight SQL on the server's Flight proxy (port 8082),
not the REST port. Setting only api_url leaves query pointing at the
default, so your credential is rejected. Set both:
eddytor config set-api-url http://localhost:8080
eddytor config set-flight-url http://localhost:8082
eddytor doctor # verifies the Flight endpoint specificallyOn Kubernetes the Flight port stays ClusterIP - port-forward it:
kubectl -n eddytor port-forward svc/eddytor-server 8082:8082.
Cause 2 - using a login token instead of an API key
The device-login token (eddytor login) lasts ~15 minutes and query
won't refresh it. The bootstrap API key doesn't expire. For query (and
any long-running job), use an API key:
docker compose exec eddytor-server eddytoradm create-api-key --email you@example.com
eddytor config set-key edd_live_…Good to know
Same root cause over ADBC / Flight SQL drivers: an expired
access token fails the handshake. Use an API key, or re-authenticate. See
Flight SQL.
Quick checklist
-
eddytor config show- isflight_urlset and reachable? - Using an API key, not a 15-min login token?
-
eddytor doctorpasses its Flight check?