Icon View Incident Report

Serious Serious
Reported By: Tim Young
Reported On: 7/27/2010
For: Version 2.03 Build 18
# 3265 Multi-Threading Issue with the DECIMAL/FLOAT Conversion to/from Strings in EDB

Rapidly connecting, opening a table that has a default expression for a FLOAT field of 0.00, and then disconnecting from many threads (200+), can cause an AV in the engine.


Comments Comments
This issue was found with an internal stress test that we conduct on the ElevateDB Server for connecting and disconnecting. The issue was caused by the use of a dynamic string for the decimal character used with numeric conversions to/from strings, and was introduced by the fix in incident #3228. The only solution to the problem posed by that incident was to constantly reset the decimal character in use before every numeric conversion to/from a string, but when this was done with a dynamic string, and with hundreds of threads, it was possible to encounter an AV because there was no protection around the modification of the string.


Resolution Resolution
Fixed Problem on 8/3/2010 in version 2.03 build 19


Products Affected Products Affected
ElevateDB Additional Software and Utilities
ElevateDB DAC Client-Server
ElevateDB DAC Client-Server with Source
ElevateDB DAC Standard
ElevateDB DAC Standard with Source
ElevateDB DAC Trial
ElevateDB LCL Standard with Source
ElevateDB VCL Client-Server
ElevateDB VCL Client-Server with Source
ElevateDB VCL Standard
ElevateDB VCL Standard with Source
ElevateDB VCL Trial

Image