Gentlemen,
I'm sending several thousand HL7 messages into an Ensemble development namespace running on a VM server. The first 1,850 messages take a minute or so to send to Ensemble. However, once the 1,850th message is sent, each subsequent message is sent to Ensemble at exactly five second intervals (I've repeated this test three times).
These subsequent messages (as well as all previous messages) are ACK'd by Ensemble, but instead of being ACK'd immediately (as the preceeding 1,849 messages were) the ACK is coming exactly five seconds after the message was sent to Ensemble as the following extract from the sending system's log shows:
2011-11-21 14:22:34.347 Waiting for ACK or NAK.
2011-11-21 14:22:39.347 Data received: MSH|^~\&|EnsembleHL7|ISC|REG|HH|201111211422||ACK^A08|13468462|P|2.3.MSA|AA|13468462...
2011-11-21 14:22:39.363 Message based ACK received: MSH|^~\&|EnsembleHL7|ISC|REG|HH|201111211422||ACK^A08|13468462|P|2.3.MSA|AA|13468462...
Since the sending system won't send a message until it's been ACK'd by Ensemble, this explains the five second delay between sending messages.
I believe that the problem has something to do with the Read Timeout parameter as that's the only parameter that I can see that has the value of five seconds. The manual is a little thin on Read Timeout.
Question: can anyone describe exactly when the Read Timeout parameter is used? Other observations or comments are also welcome.
Thanks!
Jim
Read Timeout:
Number of seconds to wait for each successive incoming TCP read operation, following receipt of initial data from the remote TCP port. The default is 5 seconds. The range is 0–600 seconds (a maximum of 10 minutes).