tomcat7 – jdbc datasource – это, скорее всего, создаст утечку памяти

Я получаю следующие сообщения в файле журнала catalina.out, когда tomcat выключается. Я использую Tomcat 7.x и источник данных Tomcat JDBC.

Mar 26, 2013 1:17:52 PM org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc SEVERE: The web application [/my_webapp] registered the JDBC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered. Mar 26, 2013 1:17:52 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads SEVERE: The web application [/my_webapp] appears to have started a thread named [MySQL Statement Cancellation Timer] but has failed to stop it. This is very likely to create a memory leak. 

Первый утверждает, что DataSource был принудительно незарегистрирован, так что это нормально. Однако это странно, потому что я настроил метод destroy так:

       

Не знаю, почему я получу второй. Один о «Таймер отмены заявления MySQL».

Любая помощь приветствуется

РЕДАКТИРОВАТЬ 1: Я испробовал исправление, предложенное @Zelldon, и он избавился от первой ошибки. Однако проблема, связанная с MySQL Statement Cancellation Timer прежнему сохраняется

Попробуйте поместить sql Connector / Driver в tomcat / lib, а не в войну. Поскольку каждый раз, когда вы развертываете войну, соединитель / драйвер будет создаваться иногда, сборщик мусора не может удалить их, что закончится утечкой памяти. Поэтому попробуйте переместить разъем в папку tomcat / lib.

Пожалуйста, прочитайте следующие ответы:

Почему драйвер JDBC должен быть помещен в папку TOMCAT_HOME / lib?

Как настроить Tomcat для подключения к MySQL

Это может быть связано с этой ошибкой в ​​соединителе jdbc MySQL: http://bugs.mysql.com/bug.php?id=65909 .

Вы можете дождаться, когда команда MySQL исправит его, или вы попытаетесь использовать соединитель JDBC для Drizzle, который отлично работает с MySQL (вам нужно только изменить параметр в url-соединении), и в моих тестах этого типа нет ошибки.

Давайте будем гением компьютера.