Posted by Mattias Sandström on October 6, 2009
Working with the latest version of Tangix TesterPRO Client, we are adding functions to retry communication with the server should a problem occur. Previous versions simply gave up after 45 seconds and bailed out by firing an Exception that was caught by the final error handler producing a log-file and an error message for the user. The Exception was fired if any error was reported by WinHTTP blocking communication with the server, even if the problem could have been simply remedied by the user. During the years, some simple errors started to be filtered and handled with up to three retries before firing the Exception. These errors were the ones considered non-fatal and due to the nature of the Internet (for example loss of communication, DNS resolvers not responding fast enough or problems with proxies). Time passing, more and more errors were identified and added to the list of non-fatal errors and soon this list grew too much so a new approach was needed.
Starting with version 6.0.8 of the Tangix TesterPRO Client, the timeout period has been lowered in WinHTTP from 45 seconds to 15 seconds but WinHTTP is instead retrying three times before generating an error. The reasoning behind this is that the three retries will exercise the connection better than a single try that times out after 45 seconds. Furthermore, no Exception is triggered by a connectivity related error reported by WinHTTP and instead a dialogue box is presented to the user with the option to retry the connection after checking Internet connectivity. If after three attempts still no connection can be made, the option to abort the connection attempt is presented and this will trigger an Exception.
It is our hope that this change will handle most of the connection issues we are seeing and we are looking forward to finalize this release and distribute it.
-- Mattias Sandström
Copyright © 2005-2012 Tangix Design & Development. All rights reserved