Icon View Incident Report

Serious Serious
Reported By: Vladimir Vedeneev
Reported On: 3/14/2003
For: Version 3.21 Build 1
# 1328 Trying to Create a Table in an Invalid Directory Causes Subsequent AVs

Here is some interesting things about TDBISAMTable. I tried to create table in nonexistent folder, smth like this:

with T do begin
DatabaseName := 'MisngDir';
TableName := 'NewTable';
end; // full source see below

It raises strange exception - #11010 - table doesn't exist. Then, if I try to create this table another time in this session, it would raise another exception - #13060 - table already exists!

But the most interesting and sad thing is that when application is terminated it raises RTE 216 (Access Violation).

And after that, if I works with other "good" tables, App raises EAccessViolations.

Comments Comments
The problem occurred when any error occurred during the table creation at the operating system level. Basically DBISAM was freeing the reference to an internal table object but not removing the reference from the internal list of table objects.

Resolution Resolution
Fixed Problem on 3/14/2003 in version 3.22 build 1