Always send the SQLITE_FCNTL_MMAP_LIMIT pragma to the VFS, even if the limit

is zero and even if the VFS does not support xFetch().

FossilOrigin-Name: 01ffdabbad30f1c157f2b33b1e85ee4d6c4632dd
This commit is contained in:
drh 2013-04-02 00:15:23 +00:00
parent 3861f546e3
commit 98d2038fc2
3 changed files with 9 additions and 11 deletions

View File

@ -1,5 +1,5 @@
C Remove\sa\sdebugging\sprintf()\saccidently\sleft\sin\sthe\sprevious\scheck-in.
D 2013-04-01T22:42:48.981
C Always\ssend\sthe\sSQLITE_FCNTL_MMAP_LIMIT\spragma\sto\sthe\sVFS,\seven\sif\sthe\slimit\nis\szero\sand\seven\sif\sthe\sVFS\sdoes\snot\ssupport\sxFetch().
D 2013-04-02T00:15:23.044
F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
F Makefile.in df3e48659d80e1b7765785d8d66c86b320f72cc7
F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@ -162,7 +162,7 @@ F src/os.h ae08bcc5f6ec6b339f4a2adf3931bb88cc14c3e4
F src/os_common.h 92815ed65f805560b66166e3583470ff94478f04
F src/os_unix.c d136eca0cff2f8a5ac2f45867d5e5153d60e377c
F src/os_win.c a2f41c9dfb9b065285ba94d4a40a31ca2e2b6ea3
F src/pager.c 072512d05dacd61b1f147736825bd32fdc890ba4
F src/pager.c 95e7a64bfdd244603d595b455f4e9ef6cf124b54
F src/pager.h 5cb78b8e1adfd5451e600be7719f5a99d87ac3b1
F src/parse.y 5d5e12772845805fdfeb889163516b84fbb9ae95
F src/pcache.c f8043b433a57aba85384a531e3937a804432a346
@ -1040,7 +1040,7 @@ F tool/vdbe-compress.tcl f12c884766bd14277f4fcedcae07078011717381
F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381
F tool/win/sqlite.vsix 97894c2790eda7b5bce3cc79cb2a8ec2fde9b3ac
P 78141d0a16dd1d56b575fccd149de7fa789cb06c
R fed26fbe7b97d6a5db36e7e764991fa9
P 8198cdd8ac5dcc1c677fffa869ac965186b96abf
R a603a97de401ee9321fd272228a03ad0
U drh
Z c0440f45f7713ec5c0ea751d4cf10d7e
Z 4afc43008f65fbdcf2b0b7902c3ce20b

View File

@ -1 +1 @@
8198cdd8ac5dcc1c677fffa869ac965186b96abf
01ffdabbad30f1c157f2b33b1e85ee4d6c4632dd

View File

@ -3360,10 +3360,8 @@ static void pagerFixMaplimit(Pager *pPager){
sqlite3_file *fd = pPager->fd;
if( isOpen(fd) ){
pPager->bUseFetch = (fd->pMethods->iVersion>=3) && pPager->mxMmap>0;
if( pPager->bUseFetch ){
sqlite3OsFileControlHint(pPager->fd, SQLITE_FCNTL_MMAP_LIMIT,
(void*)&pPager->mxMmap);
}
sqlite3OsFileControlHint(pPager->fd, SQLITE_FCNTL_MMAP_LIMIT,
(void*)&pPager->mxMmap);
}
}