if the procedure is hanging, it may mean that there are some locking issues going on with the procedure. hanging usually indicate resource contention and the fact that commenting out more code seems to work for a little while suggests this too. Check your locking/waiting views for that procedure. Good luck.