This is an odd question. I'm a Sys Admin and I've been maintaining several Tomcat instances for a few years now. We have been running our webapps in Tomcat 5, 5.5, 6, and now 7.
I have monitoring in place which watches the log files. If an OutOfMemory Exception occurs, the monitor will send out an email alert and eventually restart Tomcat. This worked well for Tomcat 5, 5.5, and 6. I stopped seeing exceptions because of heap space after upgrading to Tomcat 7. Instead of throwing the exception, Java takes 100% of the CPU while endlessly performing garbage collections. I have seen OOM permgen exceptions, and the monitor script works as normal.
Does anyone know what changed in Tomcat 7 which would cause this behavior?