BUG: Databases Are Being Corrupted (265450)



The information in this article applies to:

  • Microsoft Windows CE Operating System, Versions 2.12
  • Microsoft Windows CE Operating System, Versions 2.11
  • Microsoft Windows CE Operating System, Versions 2.0
  • Microsoft Windows CE Operating System, Versions 1.0

This article was previously published under Q265450

SYMPTOMS

File-write operations may result in data that is corrupted in the memory. This problem is observed by database developers.

CAUSE

When you use a half-page size (2K) you can create a situation where there is free space, but it is so fragmented that no block is large enough to write to. In this situation, file system does not try to compact itself because its free space count is large. Data blocks are written into the cache and committed into system memory when the next block of data comes in. Because the file system does not compact in this situation and the system does not have a block free to commit the cache block, the cache manager drops the block, which results in a data corruption.

RESOLUTION

It is safe to use full-page-size blocks, because they will trigger compaction.

STATUS

Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.

Modification Type:MajorLast Reviewed:4/14/2004
Keywords:kbBug KB265450