[solved] Push operations cause very high CPU usage in 'gitea serv' process

I’ve setup Gitea on a Debian Buster system. I built Gitea from source using Go 1.14, and I’m running it as a native service (no Docker). it is not using the internal SSH server, but the normal ‘authorized_keys’ method of launching ‘gitea serv’ processes. It’s using a PostgreSQL 11 database (standard version from Debian Buster).

All of my repositories are small: less than 100MB each, fewer than 200 objects in most of them. In spite of that, when I ‘git push’ over SSH, the ‘gitea serv’ process spends anywhere from 2-10 minutes consuming an entire CPU core, sometimes two, before the push operation is finally completed. I’ve run all of the repository maintenance operations in the admin dashboard, so the repositories should be ‘clean’.

The only thread/issue I can find on this in the past was related to log rotation, but it was fixed, and I’m not using ‘file’ logs anyway, I’m using console logging so that systemd can capture log output in its journal. I don’t see any problems reported in the journal though.

Does anyone have any ideas for things I could check to find out what the process is doing?

As weird as it sounds, it appears this was cured by correcting an error in the DNS resolver configuration on the server where Gitea is running.