[
https://issues.apache.org/jira/browse/IGNITE-6835?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16245610#comment-16245610
]
Igor Sapego commented on IGNITE-6835:
-------------------------------------
[~apopov], see my comments:
1. {{SetOptions}} currently always return {{true}}, so it's unclear why does it
has a return value at all.
2. I believe we should add diagnostic record and return
{{SQL_SUCCESS_WITH_INFO}} in case we've failed to configure socket the right
way.
> ODBC driver should handle ungraceful tcp disconnects
> ----------------------------------------------------
>
> Key: IGNITE-6835
> URL: https://issues.apache.org/jira/browse/IGNITE-6835
> Project: Ignite
> Issue Type: Bug
> Security Level: Public(Viewable by anyone)
> Components: odbc
> Affects Versions: 2.1
> Reporter: Alexey Popov
> Assignee: Alexey Popov
> Labels: odbc
> Fix For: 2.4
>
>
> It is found that ungraceful TCP disconnect makes ODBC driver stuck at socket
> recv().
> Ungraceful TCP disconnect could be caused:
> 1. Network failure (or new firewall rules)
> 2. Remote party shutdown (Half Closed Connection)
> So, the proposal is:
> setup socket options:
> 1) SO_KEEPALIVE enabled
> 2) TCP_KEEPIDLE to 60 sec. It is 2 hour by default
> 3) TCP_KEEPINTVL to 5 (\?) sec. It is 1 sec at Win and 75 sec at Linux by
> default.
> 4) send/receive buffers to some greater value (8k by default)
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)