Icon View Incident Report

Serious Serious
Reported By: Terry Swiers
Reported On: 6/11/2010
For: Version 2.03 Build 14
# 3226 Using COMPUTED Columns Causes AV with Remote Sessions

I have a form that has a few tables and queries that throw a double free when the form is freed AND I'm using a
client/server connection. The form free does not throw the double free error when I'm using a local data path.

It's apparently an issue with computed fields. With a client/server connection to a database, create a table object and retrieve a computed field value using FieldByName (mine is a float field that calcuates one float field minus another float field), then free the table object.

var
F1 : Double;
Table : TEDBTable;
begin
Table := TEDBTable.Create(nil);
{set database and session here}
F1 := Table.FieldByName('available').AsFloat;
Table.Free;   >>> invalid pointer operation will occur here.
end;



Comments Comments
The problem was caused by the fix for incident #3207. The way that the expression evaluator was modified to fix the recursive function call issues ended up breaking computed columns with remote sessions.


Resolution Resolution
Fixed Problem on 6/14/2010 in version 2.03 build 15


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