[All]
Potential Data Loss with Transportable Backups
Abstract: Potential Data Loss with Transportable Backups
Problem:
After a backup and restore, data in FLOAT columns lose significance.
Solution:
The information in this article applies to:
* InterBase 4.x
* InterBase 5.x
The following is from Dave S. talk on GBAK Internals:
------------------------------------------------------------------------
Note: There is a theoretical data loss possibility with transportable backups. It is possible that a
machine's architecture could represent a floating-point number with more bits than are available
in XDR format. Such a number would lose significance going though a backup/restore cycle. This
would show up with code such as
WHERE float_number = 1.234567890
Failing BEFORE the backup, and succeeding AFTER the backup. Such coding (comparison for
equality) is very poor practice for floating point numbers in general, with the preferred approach being:
WHERE (float_number - 1.2345670) BETWEEN -0.0000001 AND 0.0000001;