Version 7 has mostly eliminated our ability to get ourselves in trouble with this, but it still comes up from time to time.
If you find that pages timeout when loading group viewer pages, or you get cryptic error messages referencing MultipleActiveResultSets=true, you may have groups which are of a type that inherit from another group type, which in turn inherits from the first group type. That's an infinite loop, and it does bad things in programming.
There's no automatic fix for this, as you just need to fix the group type definitions and the group types they inherit from. But the trick is to find which groups and grouptypes are causing the issues.
To accomplish this, there are two different SQL queries you can run in Admin Tools -> Power Tools -> SQL Command
WITH FindRoot AS