Feedback
Did this article resolve your question/issue?

   

Article

How to configure the Operating System TCP KEEPALIVE

Information

 
TitleHow to configure the Operating System TCP KEEPALIVE
URL Nameconfigure-OS-TCP-KEEPALIVE-000080089
Article Number000181110
EnvironmentProduct: Progress OpenEdge
Version: All supported versions
OS: All supported platforms
Question/Problem Description
How to configure the Operating System TCP KEEPALIVE
How to tune the OS network protocol TCP_KEEPALIVE function
How to improve the time that dead remote connections are cleaned up
Steps to Reproduce
Clarifying Information
Error Message
Defect/Enhancement Number
Cause
Resolution
KeepAlive detects situations where one side of the connection is no longer listening and the database WDOG process cleans up after improperly terminated processes by releasing locks, backing out any live transactions and releasing shared-memory locks, and cleaning up remote serversFor further discussion refer to Articles: 

000022557, How does the TCP KeepAlive mechanism work?   
000001679, How the Database Watchdog Works?  
000011084, What does the Progress Watchdog do  
000012795, What does error 794 mean?   

To configure the Operating System network protocol TCP_KEEPALIVE function refer to your OS Specific Documentation. The following Progress Articles provide guidelines:

000001269, FAQ on TCP Keepalive for UNIX   
              
000044970, How to configure the TCP Keepalive parameters for Linux ?   
000001153, How to Configure the Keepalive Parameters for HP-UX 10?   
000021846, How to Configure the Keepalive Parameters on HP-UX 11   
000001485, How to Configure the Keepalive Parameters on AIX   
000030211, How to configure the TCP Keep Alive Parameter on SCO Unix   
000076405, How to set TCP keepalive in Windows 2008 R2 and later   
000019780, How to set TCP/IP KeepAlive for Windows XP/NT/2000/2003   

If a Firewall is running, ensure that the KeepAlive timeout for the firewall is longer than the KeepAlive timeout for the Operating Systems where the clients and the database are running from.
 
Workaround
Notes
Last Modified Date4/5/2017 12:19 PM
Attachment 
Files
Disclaimer The origins of the information on this site may be internal or external to Progress Software Corporation (“Progress”). Progress Software Corporation makes all reasonable efforts to verify this information. However, the information provided is for your information only. Progress Software Corporation makes no explicit or implied claims to the validity of this information.

Any sample code provided on this site is not supported under any Progress support program or service. The sample code is provided on an "AS IS" basis. Progress makes no warranties, express or implied, and disclaims all implied warranties including, without limitation, the implied warranties of merchantability or of fitness for a particular purpose. The entire risk arising out of the use or performance of the sample code is borne by the user. In no event shall Progress, its employees, or anyone else involved in the creation, production, or delivery of the code be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the sample code, even if Progress has been advised of the possibility of such damages.