HikariCP belgesinde bulamadığım bir cevap için hepinize teşekkür ederim. Hikari bağlantıları nasıl geri dönüştürüyor?
minimumIdle 1
idleTimeout 10 minutes
maxLifeTime 20 minutes
benim uygulamanın boşta kalır
gece boyunca (kimse yapma istekleri ile), geçen bağlantı kaldıktan sonra, Hikari 10 dakika bağlantının son istekten sonra her bağlantıyı kapatmak için bekliyoruz: Verilen Aşağıdaki havuz parametrelerini ayarlamak kapalı yeni bir tane oluşturun (ve havuzda tutun) ve ardından bu boş bağlantıyı her 20 dakikada bir kapatın ve yeniden oluşturun. Doğru bir şekilde anladım mı?WARN c.z.hikari.proxy.ConnectionProxy - Connection [email protected] <POOL_NAME> marked as broken because of SQLSTATE(08003), ErrorCode(17008).
java.sql.SQLRecoverableException: Closed Connection
bağlantı muhtemelen Oracle tarafından kapatılmış ve kullanılamaz:
gerçeği uygulamama boş döneminden sonra, ben (bir sonraki istek uppon) Aşağıdaki duruma bakın olmasıdır. Yukarıdaki yapılandırmayı kullanarak bunu engellemeye çalışacağım. Bir başka nokta, neden havuzdan kapalı bir bağlantı aldığımı anlamadığım. Hikari'nin dönmeden önce bağlantının durumunu test ettiği gibi bu asla olmamalı ...
Not: Ben DB'nin sahibi değilim, bunu yapılandıramıyorum veya gereksinimlerime göre yeniden yapılandırılmasına izin veremem. Ayrıca yapılandırmasına da erişemiyorum.
Bizim kurulum, JPA 2.1 API ile 4.3.7 Hazırda, Hikari 2.1.0
Tamam, yararlı günlükler alıp alamayacağımı göreceğim. Hikari bana kapalı bir bağlantı döndüren fikriniz nedir? Son JDBC Sürücüsünü kullanarak bir Oracle 11g üzerinde olduğum için, isValid() çalışmalıdır. Hibernate kapalı bağlantıda bir sorgu yürütmeye çalıştığında bu büyük güzel SQLException görüyorum. Bu yüzden havuzdan kesin bir bağlantı kurdum. –
Oracle sürücüsünün JDBC4 isAlive() API'sini düzgün bir şekilde uyguladığından emin oldum, ancak bunun yerine bir connectionTestQuery yapılandırmayı deneyebilirsiniz. HikariCP, yapılandırılmışsa bunu kullanır. Not: Ayrıca Bahar ve/veya Hazırda Bekletme'nin oturumdaki Bağlantıları (bir şekilde) önbelleğe almadığından emin olun - muhtemelen bir ayar. – brettw
Daha fazla bilgi aldım. Uygulama başlangıcında bir bağlantı sızıntımız olduğu anlaşılıyor. Kullanıcı etkileşiminden kaynaklanan ilk talepten önce bile. Bu yüzden bunu araştırmalıyız. Daha fazla bilgi aldığımda sizi daha fazla bilgilendireceğim. Hikari veri kaynağı istatistikleri günlüğe kaydetme sayesinde. :-) –