Time out the *** call instead of hanging every login

FixSecurityService
Shipped
August 3, 2026 at 10:27 AM UTC
Author
Kamo
Commit
8dbe378

A bare `new RestTemplate()` has no connect or read timeout. When the *** service became unreachable today, every login thread blocked on this call indefinitely rather than failing, and the pod went on reporting Running and 1/1 Ready while authentication was completely dead. The diagnostic shape was the worst part: the logs showed "[Capcha] Calling verify endpoint" and then nothing at all — no result, no exception, no stack — because the thread was simply parked. Meanwhile the scheduled-task executor filled to 500 queued tasks and started rejecting work, which looked like the cause and was only a symptom. 3s connect, 5s read. The existing catch already returns false and the caller already rejects the login, so the behaviour on a *** outage becomes a fast, logged, honest failure instead of a hang.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing