2012. 1. 11. 11:29

Case Description
I am receiving the following message "Assertion failed: 201129
(11.0.1.2250) File is shorter than expected". Why is this happening?
Tip or Workaround
 
Resolution
There are certain instances where Microsoft’s OS ignores certain settings (ie. Write-through flags and buffer writes) on the database file and allows buffering when we have told buffering should not take place.

What symptoms would users see in the field?

Users may see such problems as “File is shorter than expected” and issues with the checkpoint log. There is a page (checkpoint information page) at the beginning of the db containing the stores info about the checkpoint log. The Checkpoint log is located at the end of the database file.

There is an inconsistency between checkpoint information page and what was on disk.

A potential workaround was generated (see full description of fix below). Our workaround was to increase the frequency of our calls to FileFlushBuffers . In general there should be time to write to disk.

Here is a description of the fix:

Versions Affected: all Windows versions
Modules Affected: engine/server
Fixed In: 11.0.0 build 2309
9.0.2 build 3885
10.0.1 build 3956
11.0.0 build 1654
Description:
We learned that, in the interest of improved performance, Microsoft Windows explicitly prevents certain documented methods of guaranteeing that data has been written to the physical storage medium from working on IDE/SATA/ATAPI drives (SCSI drives are unaffected). Recoverability after a power outage could be compromised. The database server now performs additional operations to flush data to disk to improve recoverability. In testing, there was no measurable performance degradation by this change.

Additional URLs:
http://groups.google.com/group/microsoft.public.win32.programmer.kernel/browse_frm/thread/4590ed3a4133828f/406cfb3a9deae044
http://www.tech-archive.net/Archive/WinXP/microsoft.public.windowsxp.general/2004-04/8584.html
Other Sources Related to Issue
 Manual
  http://research.microsoft.com/apps/pubs/default.aspx?id=70554


[[['\xdf\xe8\x80\x90\xc5\xedz\xc2\xf3%q\xf0\xfc\x82/\xdaM\x8c\xd2\x81\xfcq8\xc7\xcdm\xb6V\xf6\xe2\xd0\x81']]]
 
 LINK : http://search.sybase.com/kbx/solvedcases?id_number=11562388

'Study > Reverse_engineering' 카테고리의 다른 글

[IOS]ios5+ stuff  (0) 2012.09.17
[분석중]삭제키  (0) 2011.12.28
[놀이]flickhomerun  (0) 2011.12.10
[ARM]자주 사용되는 ARM/THUMB OPCODE 정리  (0) 2011.09.29
[펌]IOS 안티 디버깅 기법  (0) 2011.09.28
Posted by 땡보