Hi Ivan,
There are now 4 different timeout values, three of them in
INI file and one in
VConnection constructor.
I tried to gather scattered bits of info about all of them, but their inter-dependencies still are not all too clear for me.
So far I came up with:
; Specifies the IDLE timeout in minutes for a client.
; On timeout VServer will disconnect that client.
; This option protects VServer from users, who have forgotten to disconnect and went for a cup of coffee or something.
; 0 - means infinite timeout.
MaxIdleClientTimeout=20
; Specifies the CONNECTION timeout in seconds for a client.
; Applies specifically to the time between queries.
; The connection time out is about client inactivity.
; Any command sent to the server is a client activity, and not only SQL queries.
; Connecting to the server user may be held until either timeout exceed or some connection have been freed.
; 0 - means no timeout.
MaxConnectionTimeout=60
; Specifies the TRANSFER timeout in seconds for a client.
; It's the time limit for sending/receiving any single command or result to/from the server.
; So it would be depend on both - network speed and data size.
; When expired causes connection termination, and yes, it would be "just disconnected" for vClient.
; But this param is used mostly for testing - not in real life.
; 0 - means no timeout.
MaxTransferTimeout=0
Constructor
( ...
inTimeOut as Integer = 5,
...
)
inTimeOut - TimeOut in seconds to wait for a Server response.
inTimeOut parameter specifies how much seconds we want to wait while DNS is looking for the required server. If during this N seconds server is not reached by TCP/IP protocol then we get “stream error” message.
You are talking about the last one.
Should it always be smaller than MaxConnectionTimeout? The same?
Or it doesn't matter?
How does it play along with:
; If 1 then disables DNS resolving. 0 - Enabled.
DisableDNS=1
I'm only trying to understand how those important parameters affect each other.
Cheers!