DBCP: удалить оставленное VS выселение - PullRequest
12 голосов
/ 06 июля 2011

Я не могу понять разницу между removeAbandoned и eviction .Я где-то читал, что removeAbandoned устарело, но нигде в официальном документе об этом не упоминается (http://commons.apache.org/dbcp/configuration.html).

Так что, если кто-то сможет меня просветить, это будет очень признательно:)

Спасибо!

1 Ответ

25 голосов
/ 06 июля 2011

Они означают разные вещи:

  • «выселение» происходит, когда приложение не использует соединение с базой данных (простаивает в пуле) в течение достаточно длительного периода времени, после чего оно отбрасывается
  • «потерянное соединение» относится к соединению с базой данных, которое все еще используется приложением после некоторого периода времени, обычно достаточно длительного, чтобы указывать на утечку соединения

Исключение не указывает на проблему с вашим кодом (просто приложение требует меньше соединений после пакета соединений), но отказ от соединений означает, что приложение удерживает соединение и не возвращается в пул.

...