Following several weeks of intensive research, working with one of our key users here in the UK and reviewing many thousands of lines of code, Revelation have now released the Universal Driver 4.7.2.
So why should a new point release be of such interest?
The UD 4.7.2 is a minor upgrade from UD 4.7 but it resolves a significant issue with corrupted table header counts and sizes, a potential memory leak/overrun issue when running in ‘debug output’ or logging mode, and eliminates “hanging” when shutting down the service. This should allow sites to terminate and restart the UD without requiring a server reboot.
The UD 4.7.2 has been released for both the “NT” and “NU” versions. This replaces all previous versions of the Universal Driver 4.7 and 4.7.1 and it is available at no cost to anyone who already has the Universal Driver 4.x.
The Universal Driver 4.7.2 fixes an issue where the record count and alpha values in the file header can get corrupted when several incomplete latent select / readnext process are followed by a complete latent_Select/readnext process. This corruption has the side effect to cause the LK to expand rapidly. A later complete select/readnext can repair the header and cause the UD to resize the table to normal size. From the outside it looks like the service is bogging down for no reason. In extreme cases the resize can crash the service and leave a huge file on the server. It appears that this is a long standing feature which may explain some of the issues witnessed by large sites.
The Universal Driver 4.7.2 also now enables system administrators to more gracefully close down the Universal Driver in the event of a system crash. In such a situation the UD appears to have simply hung and most people are finding it necessary to aggressively terminate the Universal Driver before restarting the system. This new version addresses this issue.
Please contact your system author (VAR) or your usual Revelation Representative to obtain your UD 4.7.2 upgrade or to discuss upgrade options if you are running an older Universal Driver (1.5 2.x or 3.x).