Locked tables

I came in this morning unable to connect to the openfire server. After checking the logs it was clear that the openfire server could not connect to the mysql server because there were too many connections (currently, openfire is the only box hitting this particular mysql server). I checked the mysql process list and all 100 connections were taken. The reason appears to be that there were many locked processes… new queries were being sent from the openfire server and could not be executed because the table was locked, so they piled up. Here are a few (to conserve space I’ve ommited the process ID, user, host, database, command, and time):

State | Info

end | DELETE FROM ofPresence WHERE username=‘josh’

Locked | SELECT bytes from ofRRDs where id = ‘muc_traffic’

Locked | SELECT bytes from ofRRDs where id = ‘muc_traffic’

end | UPDATE ofID SET id=56 WHERE idType=25 AND id=55

end | UPDATE ofRRDs SET bytes = _binary’\0J\0R\0o\0b\0i\0n\0,\0 \0v\0e\0r\0s\0i\0o\0n\0 \00\0.\01\0 \0\0\0

Locked | DELETE FROM ofPresence WHERE username=‘josh’

Locked | SELECT bytes from ofRRDs where id = ‘muc_traffic’

… and so on…

Things went well until the connections filled up.

The openfire user has ALL privileges on the Openfire database.

Any ideas as to what is going on?