[ 
https://issues.apache.org/jira/browse/HIVE-11915?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14903433#comment-14903433
 ] 

Hari Sankar Sivarama Subramaniyan commented on HIVE-11915:
----------------------------------------------------------

I am not entirely sure but the following is what I understood from a quick 
glance. 

It looks like what Sergey is trying to do in the bigger patch is to workaround 
the BoneCP dangling connection bug at the Hive side. i.e. flag the connection 
as broken in getDbConn() if it detects is an already closed connection. This 
way the retry mechanism kicks in(based on getConnAttemptCount) and will 
hopefully get a free connection in the next iteration. Without this invocation 
to dbConn.markPossiblyBroken(), the already broken connection may not be 
destroyed and BoneCP might wrongly still return the existing broken connection 
when connPool.getConnection() is called the second time. [~sershe], does my 
understanding make any sense.

Thanks
Hari

> BoneCP returns closed connections from the pool
> -----------------------------------------------
>
>                 Key: HIVE-11915
>                 URL: https://issues.apache.org/jira/browse/HIVE-11915
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Takahiko Saito
>            Assignee: Sergey Shelukhin
>         Attachments: HIVE-11915.WIP.patch, HIVE-11915.patch
>
>
> It's a very old bug in BoneCP and it will never be fixed... There are 
> multiple workarounds on the internet but according to responses they are all 
> unreliable. We should upgrade to HikariCP (which in turn is only supported by 
> DN 4), meanwhile try some shamanic rituals. In this JIRA we will try a 
> relatively weak drum.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to