We have a maintenance plan that does a db check, rebuilds the indexes and updates statistics on a nightly basis on a roughly 30 Gb database. On average, it takes about 50 minutes to run.
Once in a while however, it will run indefinitely, which will in turn cause the sqlserver process to consume higher thatn usual CPU (~22% vs. 8-10%). This causes the system to become responsive. When we check the Activity Log the Maintenance Job shows its status as 'Running'. The only way to get the box back to normal is by force quitting the job. There are no errors in the SQL Log coinciding with the Job or any indication why the Plan got hung up. It seems like some kind of CPU leak although I have never heard of such a thing.