In windows, always open files using FILE_FLAG_RANDOM_ACCESS. Ticket #2699. (CVS 4476)

FossilOrigin-Name: 5cdbc0972fe94c13dffee1f908a77f903e580449
This commit is contained in:
drh 2007-10-08 12:21:10 +00:00
parent e31de778e1
commit 496936c881
3 changed files with 13 additions and 7 deletions

View File

@ -1,5 +1,5 @@
C Fix\sa\smemory\sleak\sin\sthe\ssqlite3_realloc()\simplementation\sof\sthe\nnon-debugging\smemory\sallocator.\s(CVS\s4475)
D 2007-10-06T01:40:35
C In\swindows,\salways\sopen\sfiles\susing\sFILE_FLAG_RANDOM_ACCESS.\s\sTicket\s#2699.\s(CVS\s4476)
D 2007-10-08T12:21:11
F Makefile.in 75b729d562e9525d57d9890ec598b38e1a8b02bc
F Makefile.linux-gcc 65241babba6faf1152bf86574477baab19190499
F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
@ -118,7 +118,7 @@ F src/os_test.c 49833426101f99aee4bb5f6a44b7c4b2029fda1c
F src/os_test.h 903c93554c23d88f34f667f1979e4a1cee792af3
F src/os_unix.c 308bd8ad6977f66f608228cccaecc4cbc1a24693
F src/os_unix.h 5768d56d28240d3fe4537fac08cc85e4fb52279e
F src/os_win.c b2b6aa5f72c84f24c2afd49abfa751abab0e5b79
F src/os_win.c 713bb34665071eea35f2beab9100769135a669f5
F src/os_win.h 41a946bea10f61c158ce8645e7646b29d44f122b
F src/pager.c 0a92a08192785af79547b017cda45eb683b22552
F src/pager.h d783e7f184afdc33adff37ba58d4e029bd8793b3
@ -581,7 +581,7 @@ F www/tclsqlite.tcl 8be95ee6dba05eabcd27a9d91331c803f2ce2130
F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
F www/whentouse.tcl fc46eae081251c3c181bd79c5faef8195d7991a5
P 4424357d17f615fab922780616eac6773535923a
R 2ed601e13bd5dddd1e1e50775404fa02
P 7e9b886dabf10557bc1aa80caad411809ce5a39f
R 13066f59c06519a2ddde6fcb0c919448
U drh
Z de6ecf621e823f38d84bd35865827bb5
Z e9c7224163b51697390aea6692707332

View File

@ -1 +1 @@
7e9b886dabf10557bc1aa80caad411809ce5a39f
5cdbc0972fe94c13dffee1f908a77f903e580449

View File

@ -1112,11 +1112,17 @@ static int winOpen(
}else{
dwFlagsAndAttributes = FILE_ATTRIBUTE_NORMAL;
}
#if 0
if( flags & (SQLITE_OPEN_MAIN_DB | SQLITE_OPEN_TEMP_DB) ){
dwFlagsAndAttributes |= FILE_FLAG_RANDOM_ACCESS;
}else{
dwFlagsAndAttributes |= FILE_FLAG_SEQUENTIAL_SCAN;
}
#else
/* Reports from the internet are that performance is always
** better if FILE_FLAG_RANDOM_ACCESS is used. Ticket #2699. */
dwFlagsAndAttributes |= FILE_FLAG_RANDOM_ACCESS;
#endif
if( isNT() ){
h = CreateFileW((WCHAR*)zConverted,
dwDesiredAccess,