We had similar issues; and the way to see if you are having the exact same (or similar) issue we were having, log files to look at:
At the client, look at the users' SCClient_<someone>.log
If in that log at or around the time of the user launching Software Center, does it say something like... "GetApplicationsAsync: The HTTP Request to.... has exceeded the alloted timeout of 00:01:00 ... Unable to fetch..."
On your Management Point, look at "UserService.log"
again, at or around the time of that user launching Software Center, is there a line similar to this:
System.Data.SqlClient.SqlException: Execution Timeout Expired.
which refers to this stored procedure: usp_GetApplicationPropertyValuesFiltered.
If so, there are two things to do.
- If you are on the latest version of CM (2006) OPEN A CASE with Microsoft. Do not pass go, do not hesitate. Tell them you are having this issue, when asked, zip up all the log files when asked, and send them to Microsoft on that case.
- If you can't wait for them to fix it; one workaround--which is horrid, but it might work, is to change your Database Compatibility mode. For example, when we were having this issue, we were on SQL 2017, compat 130. If we changed it to Compatibility of 110, then that particular procedure finished quickly. Of course... that's not ideal. Because now we're missing out on any enhancements which a higher compat level would grant us.
If you are still having this exact issue (with those exact errors in the two log files), then compat mode change should let you limp by. However, the real fix will be for Microsoft to either optimize that particular usp_ routine to work correctly with higher levels of sql; or change CM itself to call that particular usp_ routine with the HINT 110. (it's embedded in the code, we couldn't hack/change it).
If you decide to just 'limp by' with compat mode 110 (and that works) and not open a case with MS--make sure you document what you did, why; etc. etc. for your company; let your team and boss' know what you are doing and why.
Again... the above is only if you are seeing those exact errors in those log files. If you aren't, it's a different issue. But perhaps those log files will help you find clues to what is going on in your environment.