The likeliest candidate is probably the final render step. Under the hood, search farms the query out to multiple backends, gathers partials from them, and then composites those partials into the final rendered page. For an actual 500 to surface to the user, that final compositing step is probably what fails; gathering and compositing are already robust against an individual backend failing to return a result.
I'm on board with other people's suggestions that asking a question like this is tripping over a site that surfaced an emoji in their site title that is choking the Unicode library that Google is relying upon.