PRODUCT : Paradox Engine NUMBER : 1001 VERSION : All OS : All DATE : October 19, 1993 PAGE : 1/1 TITLE : Engine Internal Errors The are several main causes of Paradox Engine internal errors. The most common cause is that some previous Engine call failed and the user has tried to continue using the Engine, ignoring the error or not being aware of it, leading into a situation where the Engine is no longer in a valid state and must be shut down. The second most common cause is some sort of memory corruption-- either of the code, data, or stack segment. To solve these problems, make sure that every Engine call is being checked for errors. Make sure no one else is trying to use the tables at the same time, perhaps changing the tables thereby causing the original program not to work properly. Try to reduce the problem to one particular function or module that is failing to work properly. In most cases, the errors are the fault of improper programming. One place where an internal error can be generated is in the swap manager, when memory blocks are swapped out to the table, and the swap manager notices that the block to be swapped out belongs way past the end of the table file. In that case, all earlier blocks beyond the end of the table are swapped out to disk, in order. If it can't find one of these earlier blocks, it produces an internal error. To track down memory corruption problems and other possible causes of Engine internal errors, Borland has a specific technical information document available, "TI738." This file is available on Compuserve, BIX, GEnie, the Borland Bulletin Board, as well as via our TechFax system. DISCLAIMER: You have the right to use this technical information subject to the terms of the No-Nonsense License Statement that you received with the Borland product to which this information pertains.