Icon View Incident Report

Serious Serious
Reported By: Francisco Fernandez
Reported On: 5/8/2009
For: Version 2.02 Build 12
# 2989 Row Updates that Only Update Non-Indexed Columns Can Cause Errors in Other Sessions

I get this error:

"The table VENTASCLIENTES is corrupt (Attempted to flush a index page from the cache while it is in use)",

with only several clients working at the same time and the table that fail is managed only by triggers.

This error is always in the table "VENTASCLIENTES", which is working normally in a net without problems.

This table is managed only with two triggers in table VENTASLINEAS, "InsertaVentasLineas" and "ModificaVentasLineas". In my application I only open to read this table but I don't insert or append records.


Comments Comments
The basic cause with this problem was an update to a table that didn't modify any indexed columns. The change detection in ElevateDB was not handling this condition properly, thus resulting in index pages that were still present in the buffer manager, but whose usage count was not decremented properly. Thus, when these same index pages were subsequently updated again, their usage counts were always above zero, thus preventing the buffer manager from flushing them, and resulting in the error raised by the buffer manager to indicate an abnormal condition.


Resolution Resolution
Fixed Problem on 5/9/2009 in version 2.02 build 13


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