-C Add\sdocumentation\sfile\s./README-server-edition.html.
-D 2017-07-31T19:55:56.996
+C Fix\sa\sbug\son\sthis\sbranch\sinvolving\smmap\smode\sand\sreadonly\stransactions.
+D 2017-08-07T14:06:01.846
F Makefile.in d9873c9925917cca9990ee24be17eb9613a668012c85a343aef7e5536ae266e8
F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
F Makefile.msc 02b469e9dcd5b7ee63fc1fb05babc174260ee4cfa4e0ef2e48c3c6801567a016
F src/os_unix.c 98df292b72d8c15c6292be663ee917ac0316a0d9ec652e6e55e06bc4d83f84b7
F src/os_win.c 2a6c73eef01c51a048cc4ddccd57f981afbec18a
F src/os_win.h 7b073010f1451abe501be30d12f6bc599824944a
-F src/pager.c 9c2006fb3c4d4a985e79de21cb5e5be22c8ae663159cbd0bf5e708803bf53678
+F src/pager.c d03c63437f7218c1a1f28b8ca4427afc6df13610a8a488a8a0a505d0a117deeb
F src/pager.h 316dac0671fd7555af9e73d4357febd5f2d3ce6a185ffd8d77b7fc0423ac8b1a
F src/parse.y 3a1babd6645a8103898a5e7e239dcf56cdafbdc25fd8133bb4a9160f9471d42d
F src/pcache.c 62835bed959e2914edd26afadfecce29ece0e870
F src/resolve.c 4324a94573b1e29286f8121e4881db59eaedc014afeb274c8d3e07ed282e0e20
F src/rowset.c 7b7e7e479212e65b723bf40128c7b36dc5afdfac
F src/select.c c6bf96a7f9d7d68f929de84738c599a30d0a725ab0b54420e70545743cd5ee7b
-F src/server.c ef4a69ea4124c89fe73ee0889929c089290e240a3a5f27fa28beea51cb855e51
-F src/server.h adcc122084f9370c91479bd9f7bbac1ccd7f63784249de40f63dae8a9fae1bfe
+F src/server.c d69efa7284074e69d43c38d5d649ef3b20add1db31c9d8e7f01cabd95d0ee72b
+F src/server.h d7555e68ee34008ca02705e44f861938a67b85a97ffe64d9326e03bd15dcd06b
F src/shell.c bd6a37cbe8bf64ef6a6a74fdc50f067d3148149b4ce2b4d03154663e66ded55f
F src/shell.c.in b5725acacba95ccefa57b6d068f710e29ba8239c3aa704628a1902a1f729c175
F src/sqlite.h.in 753ca32f31228a250a3a22ba90b0a39d21913cdc765dce9600e54ab872243f48
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P b42c87790e2dfdc4e52c42967257decf4b44ded909403ea4ac47fe41acfd7077
-R 0649fc2cf3ba1c03f8e547dfbc16afc9
+P fbc4f4ad259cfe04b28d698ef025f179b6708ac788939976c401db2caf8f92c1
+R eae9c7f2718fecb4f38f6083d68585eb
U dan
-Z c48da8fd6893915c8bae54b12ad68f68
+Z 6ffb27438a4983c698bbeb9ee0c29536
pPager->xGet = getPageError;
#if SQLITE_MAX_MMAP_SIZE>0
}else if( USEFETCH(pPager)
+#ifdef SQLITE_SERVER_EDITION
+ && sqlite3ServerIsReadonly(pPager->pServer)==0
+#endif
#ifdef SQLITE_HAS_CODEC
&& pPager->xCodec==0
#endif
if( rc==SQLITE_OK ){
rc = sqlite3ServerLock(pPager->pServer, 1, 0, 0);
}
+ setGetterMethod(pPager);
}
#endif
if( rc==SQLITE_OK && pagerUseWal(pPager) ){
return pRet;
}
+/*
+** Return true if the handle passed as the only argument is not NULL and
+** currently has an open readonly transaction (one started with BEGIN
+** READONLY). Return false if the argument is NULL, if there is no open
+** transaction, or if the open transaction is read/write.
+*/
+int sqlite3ServerIsReadonly(Server *p){
+ return (p && p->eTrans==SERVER_TRANS_READONLY);
+}
+
#endif /* ifdef SQLITE_SERVER_EDITION */