From: dan Date: Mon, 7 Aug 2017 14:15:18 +0000 (+0000) Subject: Update this branch with latest trunk changes. X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=cfcd9d34b98fdb6641ca98340bf20e95c2c37038;p=thirdparty%2Fsqlite.git Update this branch with latest trunk changes. FossilOrigin-Name: 17bc7ded07fe2f1f47857bba646eb297e53f69fb1bafd68556d60700ce008750 --- cfcd9d34b98fdb6641ca98340bf20e95c2c37038 diff --cc manifest index 163a29b0a8,a26480da8d..3d607895a4 --- a/manifest +++ b/manifest @@@ -1,5 -1,5 +1,5 @@@ - C Fix\sa\sbug\son\sthis\sbranch\sinvolving\smmap\smode\sand\sreadonly\stransactions. - D 2017-08-07T14:06:01.846 -C Fix\sa\ssegfault\sin\sswarmvtab\sthat\scould\soccur\sif\sthere\swas\san\serror\sin\sthe\sSQL\nstatement\spassed\sto\sthe\sconstructor.\sAdd\sother\stest\scases. -D 2017-08-05T16:15:33.260 ++C Update\sthis\sbranch\swith\slatest\strunk\schanges. ++D 2017-08-07T14:15:18.697 F Makefile.in d9873c9925917cca9990ee24be17eb9613a668012c85a343aef7e5536ae266e8 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc 02b469e9dcd5b7ee63fc1fb05babc174260ee4cfa4e0ef2e48c3c6801567a016 @@@ -396,13 -395,13 +396,13 @@@ F src/auth.c 79f96c6f33bf0e5da8d1c282ce F src/backup.c faf17e60b43233c214aae6a8179d24503a61e83b F src/bitvec.c 17ea48eff8ba979f1f5b04cc484c7bb2be632f33 F src/btmutex.c 0e9ce2d56159b89b9bc8e197e023ee11e39ff8ca - F src/btree.c d0111c10f4e8917fc9a8b0c3b7b98e1f200122682107cceb840bcbdd96da2b90 -F src/btree.c 1a17ba1a765d80c3ca39ce33ff55f92e1f51eb84bbbdab5377f11d36b1515fa1 -F src/btree.h 3edc5329bc59534d2d15b4f069a9f54b779a7e51289e98fa481ae3c0e526a5ca ++F src/btree.c f96286765cdeff388816e1cc1a20628735d5f453040cc949eb7ccadf58799e65 +F src/btree.h d1f64c5683e9ade8afa968b49abeb108acd430fc33f2cae2a62a2cfc601087d8 F src/btreeInt.h 97700795edf8a43245720414798b7b29d8e465aef46bf301ffacd431910c0da1 - F src/build.c 4da6fe799d91e185ff22954e7de705027d5057fd6bf3c87f827460f70a17e045 -F src/build.c 33b0f6055bd990ed052b96e71368acefcd98daa21ccf21f91aa90e8b769c2219 ++F src/build.c 037f793bd67123110c6aa0f9373554a83b3dbd1c6684de3898441fff2e90c444 F src/callback.c 930648a084a3adc741c6471adfbdc50ba47ba3542421cb80a26f259f467de65e F src/complete.c a3634ab1e687055cd002e11b8f43eb75c17da23e - F src/ctime.c 928954802b1397d9fb1378c7eb702c94b4735bbab1d5793e21b6a77734f56a1b + F src/ctime.c ff1be3eed7bdd75aaca61ca8dc848f7c9f850ef2fb9cb56f2734e922a098f9c0 F src/date.c 48f743d88bbe88f848532d333cca84f26e52a4f217e86f86be7fc1b919c33d74 F src/dbstat.c 7a4ba8518b6369ef3600c49cf9c918ad979acba610b2aebef1b656d649b96720 F src/delete.c 939bd15e6b54b82b951e1c0ffc2ff2b4ab579196780a1f6d394e47bd6f799b6c @@@ -437,37 -436,35 +437,37 @@@ F src/os.c add02933b1dce7a39a005b00a2f5 F src/os.h 8e976e59eb4ca1c0fca6d35ee803e38951cb0343 F src/os_common.h b2f4707a603e36811d9b1a13278bffd757857b85 F src/os_setup.h 0dbaea40a7d36bf311613d31342e0b99e2536586 - F src/os_unix.c 98df292b72d8c15c6292be663ee917ac0316a0d9ec652e6e55e06bc4d83f84b7 -F src/os_unix.c 0681c6ef336fcb6a111f45b60a5faea38992ed6c4ae9fbd57a6f8e247724fa68 ++F src/os_unix.c a29561040e06cfbc20fc61c329a4e2934dfe9df995dc3453a0b6658a26aab5d9 F src/os_win.c 2a6c73eef01c51a048cc4ddccd57f981afbec18a F src/os_win.h 7b073010f1451abe501be30d12f6bc599824944a - F src/pager.c d03c63437f7218c1a1f28b8ca4427afc6df13610a8a488a8a0a505d0a117deeb -F src/pager.c 1e63b0299cf123cf38c48413ec03190f56c1e7d0ccc6573c467d8ac240b898e9 -F src/pager.h f2a99646c5533ffe11afa43e9e0bea74054e4efa -F src/parse.y 52ef3cecd0934e9da4a45b585883a03243ad615d338ad94f44501a05891dcdfa ++F src/pager.c c6efa846f4c1fa5e7935cf58bf5a197a6ead5e3548c19bbed94eaa0a18e31957 +F src/pager.h 316dac0671fd7555af9e73d4357febd5f2d3ce6a185ffd8d77b7fc0423ac8b1a - F src/parse.y 3a1babd6645a8103898a5e7e239dcf56cdafbdc25fd8133bb4a9160f9471d42d ++F src/parse.y 58a2de13e855aece3d7709440e6e86849f4cde97f5227c6a25e6bba2fc5e2976 F src/pcache.c 62835bed959e2914edd26afadfecce29ece0e870 F src/pcache.h 521bb9610d38ef17a3cc9b5ddafd4546c2ea67fa3d0e464823d73c2a28d50e11 - F src/pcache1.c 1195a21fe28e223e024f900b2011e80df53793f0356a24caace4188b098540dc + F src/pcache1.c 0b793738b5dddaf0a645784835c6b5557b1ecfaee339af9c26810c6ecdb273aa -F src/pragma.c cd6aeda3587be6c5c08f9b2d45eae6068666a03c9d077c8c43cdb85fb0aa70f2 -F src/pragma.h bb83728944b42f6d409c77f5838a8edbdb0fe83046c5496ffc9602b40340a324 +F src/pragma.c 7c61991e6b3bff958c23fe74b047142f6174c6cb67563e8cf5efee57266b9716 +F src/pragma.h a59d572cbc35d210a610264a20403e209165d581bc087ceb3a75b8dc3c2553f7 - F src/prepare.c 1eaeccc1f9dd5b2806408e530c0f05a1972272b66d827d0a7fdc2b192b357ead + F src/prepare.c 3cbb99757d7295997674972f9dd2331c5c544368854ca08954c9beb1e9b6145a F src/printf.c 8757834f1b54dae512fb25eb1acc8e94a0d15dd2290b58f2563f65973265adb2 F src/random.c 80f5d666f23feb3e6665a6ce04c7197212a88384 F src/resolve.c 4324a94573b1e29286f8121e4881db59eaedc014afeb274c8d3e07ed282e0e20 F src/rowset.c 7b7e7e479212e65b723bf40128c7b36dc5afdfac - F src/select.c c6bf96a7f9d7d68f929de84738c599a30d0a725ab0b54420e70545743cd5ee7b + F src/select.c 3fd19c98c5223d411b883502d1ac928ddb762a1ea8f031d910210316545fc67c +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 src/sqlite.h.in 72f1775c7a134f9e358eedafe1ebc703c28b0d705d976464ddbf6a9219448952 ++F src/sqlite.h.in 0ebbd0299e4bd03841c0e24ea86c74a42082b20533b86b0f360424a3b3c145a5 F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 F src/sqlite3ext.h 0f9f72b86a3792314f5db7a1dfbc2c82376bcd8d0919ceb80637bca126ec3c68 - F src/sqliteInt.h c401277293e8f2a99a1735eae6b21e4c0fd0f2527ad072dcf55b4c443cbfa11b -F src/sqliteInt.h 07e4d3c8021aea80e3bbafab4dd52833cfcfa4f000210af0d15c7fdaed2f09fc ++F src/sqliteInt.h eed0fc43763c4fa0608c2b3cd5f80fa5d36163faeb0f80ba29e219a2cf0ecec6 F src/sqliteLimit.h 1513bfb7b20378aa0041e7022d04acb73525de35b80b252f1b83fedb4de6a76b F src/status.c a9e66593dfb28a9e746cba7153f84d49c1ddc4b1 F src/table.c b46ad567748f24a326d9de40e5b9659f96ffff34 - F src/tclsqlite.c 2c29b0b76e91edfd1b43bf135c32c8674710089197327682b6b7e6af88062c3d - F src/test1.c cfb78b728b37ae3a2b14fe1b3a6c766e0da41370eda112594e698c94011b622e + F src/tclsqlite.c 487951d81f9704800fd9f0ffdaa2f935a83ccb6be3575c2c4ef83e4789b4c828 + F src/test1.c 8513b17ca4a7a9ba28748535d178b6e472ec7394ae0eea53907f2d3bcdbab2df -F src/test2.c 3efb99ab7f1fc8d154933e02ae1378bac9637da5 +F src/test2.c 824e16d2ff3b57dc3680a5635d049cc889492f95910368ec1ffe2ad44ca45a7f F src/test3.c b8434949dfb8aff8dfa082c8b592109e77844c2135ed3c492113839b6956255b F src/test4.c 18ec393bb4d0ad1de729f0b94da7267270f3d8e6 F src/test5.c 328aae2c010c57a9829d255dc099d6899311672d @@@ -481,10 -478,10 +481,10 @@@ F src/test_backup.c bf5da90c9926df0a4b9 F src/test_bestindex.c d23f80d334c59662af69191854c76b8d3d0c8c96 F src/test_blob.c ae4a0620b478548afb67963095a7417cd06a4ec0a56adb453542203bfdcb31ce F src/test_btree.c 8b2dc8b8848cf3a4db93f11578f075e82252a274 -F src/test_config.c abf6fc1fe9d041b699578c42e3db81f8831c4f5b804f1927958102ee8f2b773e +F src/test_config.c 545983ba722b03d032a4d4d44e5fc26fa0558bea743c94e1f278e004a2ee5a9c F src/test_delete.c e2fe07646dff6300b48d49b2fee2fe192ed389e834dd635e3b3bac0ce0bf9f8f F src/test_demovfs.c a0c3bdd45ed044115c2c9f7779e56eafff18741e - F src/test_devsym.c 4e58dec2602d8e139ca08659f62a62450587cb58 + F src/test_devsym.c 1960abbb234b97e9b920f07e99503fc04b443f62bbc3c6ff2c2cea2133e3b8a2 F src/test_fs.c 35a2f7dd8a915900873386331386d9ba1ae1b5026d74fd20c2807bc76221f291 F src/test_func.c a4fdab3363b436c1b12660e9362ce3f3782b7b5e F src/test_hexio.c 1d4469ca61ab202a1fcec6543f584d2407205e8d @@@ -523,19 -520,19 +523,19 @@@ F src/update.c c443935c652af9365e033f75 F src/utf.c 810fbfebe12359f10bc2a011520a6e10879ab2a163bcb26c74768eab82ea62a5 F src/util.c fc081ec6f63448dcd80d3dfad35baecfa104823254a815b081a4d9fe76e1db23 F src/vacuum.c 90839322fd5f00df9617eb21b68beda9b6e2a2937576b0d65985e4aeb1c53739 - F src/vdbe.c 708d45a5de83e7033e36a2d6bb0c4acba659878750fbbd42d858abb7c266afe0 -F src/vdbe.c 821b3edde2d17ec60da0617db1018a88f38634c359d22f3c8f7be10336c82636 ++F src/vdbe.c d410ca56e272b8e5734f68bce1281942dc7dd5843d7cb3e450e074f35c49a35d F src/vdbe.h d50cadf12bcf9fb99117ef392ce1ea283aa429270481426b6e8b0280c101fd97 F src/vdbeInt.h ff2b7db0968d20e6184aee256d2e535d565f5a172e3588a78adb166a41fc4911 - F src/vdbeapi.c 0823531191f9d5588a245ed5b39306798681814e9e8099d54a3213a13a28fbe7 - F src/vdbeaux.c 715f5d9eb8ec7b0d3f7e6e8cc4fe7db2ae75bf66d4e0ecb82a81635ab7fa8664 - F src/vdbeblob.c 359891617358deefc85bef7bcf787fa6b77facb9 - F src/vdbemem.c 9ca2854976f35db40341977e688a08204c96427505f5b90215dc7970f6ea42c4 - F src/vdbesort.c f512c68d0bf7e0105316a5594c4329358c8ee9cae3b25138df041d97516c0372 + F src/vdbeapi.c 05d6b14ab73952db0d73f6452d6960216997bd966a710266b2fe051f25326abc -F src/vdbeaux.c 1bef372f59f9e1dba5ead70cc5c24bf978bab0b9fdc2f69692afaa3a2d4dd8f3 ++F src/vdbeaux.c 4d9e0e86eb30b1ee777dd4061dd1947e8d2c0a4e7f213c2b3b382478612c3a14 + F src/vdbeblob.c db3cf91060f6f4b2f1358a4200e844697990752177784c7c95da00b7ac9f1c7b + F src/vdbemem.c b7fac20534c79b7554dab2e8a180c585a8bc1b9c85149d1b2d9746cf314d06ed + F src/vdbesort.c fea2bea25f5e9ccd91e0760d7359f0365f9fba1aaeac7216c71cad78765f58e3 F src/vdbetrace.c 41963d5376f0349842b5fc4aaaaacd7d9cdc0834 - F src/vtab.c 35b9bdc2b41de32a417141d12097bcc4e29a77ed7cdb8f836d1d2305d946b61b + F src/vtab.c a305582d3a6c7090982ac1610b8e5724fa954d8b28899fa6c633cb4de9c2f8ee F src/vxworks.h d2988f4e5a61a4dfe82c6524dd3d6e4f2ce3cdb9 -F src/wal.c 40c543f0a2195d1b0dc88ef12142bea690009344 -F src/wal.h 06b2a0b599cc0f53ea97f497cf8c6b758c999f71 +F src/wal.c 1b208938ba3c33cc419f6240d914f68a147e9abb336c578d4c153dd1579d40f8 +F src/wal.h 739d92494eb18b6d8f3e353e66c10eb8f94534bafd336ece9f3f60235317ea08 F src/walker.c a7ca64ce08a83a20d32186fbe06bca9234e348cfcf07959ee322fdc3e8a6173a F src/where.c cbe8ddffbcec7ce86f7a800fe8fd10aee412c76c87e0dd3732a1682e68d74cd9 F src/whereInt.h 93bb90b77d39901eda31b44d8e90da1351193ccfe96876f89b58a93a33b84c3d @@@ -1090,7 -1088,7 +1091,7 @@@ F test/parser1.test 391b9bf9a229547a129 F test/pcache.test c8acbedd3b6fd0f9a7ca887a83b11d24a007972b F test/pcache2.test af7f3deb1a819f77a6d0d81534e97d1cf62cd442 F test/percentile.test 4243af26b8f3f4555abe166f723715a1f74c77ff - F test/permutations.test f00794b9821270e45b91ca5c2a82d36480992c49aa0ff32b0aa6d2f6db2a4d82 -F test/permutations.test 3b94f8fd431d39fac4952eb5dc38e1bb2b4518e1ac967d66f5abc815c104aeb6 ++F test/permutations.test 4d6645be4965438d14297bbf8290aa97fd13cd5bf9fab718bfec6dc8e29da1cb F test/pragma.test f274259d6393b6681eb433beb8dd39a26ec06a4431052a4880b43b84912a3f58 F test/pragma2.test e5d5c176360c321344249354c0c16aec46214c9f F test/pragma3.test 14c12bc5352b1e100e0b6b44f371053a81ccf8ed @@@ -1255,7 -1251,7 +1260,7 @@@ F test/temptable.test d2c9b87a54147161b F test/temptable2.test cd396beb41117a5302fff61767c35fa4270a0d5e F test/temptable3.test d11a0974e52b347e45ee54ef1923c91ed91e4637 F test/temptrigger.test 38f0ca479b1822d3117069e014daabcaacefffcc - F test/tester.tcl d74fefbba7cdd4ad2846c73ed0e02734809d8f824bf25f44a8dbe43dd8a74283 -F test/tester.tcl eb7ec55fe074a909423c1de701f7c545417b8aa96787b8c3e7a79203f2cebec8 ++F test/tester.tcl 3ce22268f2674baecb284e55277782fbfddaab5fd914aedab3a3ee476a9e6cc1 F test/thread001.test 9f22fd3525a307ff42a326b6bc7b0465be1745a5 F test/thread002.test e630504f8a06c00bf8bbe68528774dd96aeb2e58 F test/thread003.test ee4c9efc3b86a6a2767516a37bd64251272560a7 @@@ -1578,16 -1575,16 +1584,16 @@@ F tool/logest.c 11346aa019e2e77a00902aa F tool/max-limits.c cbb635fbb37ae4d05f240bfb5b5270bb63c54439 F tool/mkautoconfamal.sh e855df211ecbcc7131dee817110ff386cfb112f7 F tool/mkctimec.tcl dd183b73ae1c28249669741c250525f0407e579a70482371668fd5f130d9feb3 -F tool/mkkeywordhash.c 2e852ac0dfdc5af18886dc1ce7e9676d11714ae3df0a282dc7d90b3a0fe2033c +F tool/mkkeywordhash.c 969c50301da61d73c4c6d0661c1d1abc6c25ba35f1212832d0b12965f90505ab F tool/mkmsvcmin.tcl cbd93f1cfa3a0a9ae56fc958510aa3fc3ac65e29cb111716199e3d0e66eefaa4 F tool/mkopcodec.tcl d1b6362bd3aa80d5520d4d6f3765badf01f6c43c - F tool/mkopcodeh.tcl bb04ab6e5e2000c91e0c69a597e7e36e002320d123e2e1944cb2819181b72ee9 + F tool/mkopcodeh.tcl 4ee2a30ccbd900dc4d5cdb61bdab87cd2166cd2affcc78c9cc0b8d22a65b2eee F tool/mkopts.tcl 66ac10d240cc6e86abd37dc908d50382f84ff46e -F tool/mkpragmatab.tcl 2144bc8550a6471a029db262a132d2df4b9e0db61b90398bf64f5b7b3f8d92cd +F tool/mkpragmatab.tcl c249dee507fc499d43072b14eb8b0373204dca952e770b9b9924c211bca0169a F tool/mkshellc.tcl 69c38ecd7b74b2b0799a35ce20e1e3998e504d8c99c100ca4b98ae9d8f6279bc F tool/mkspeedsql.tcl a1a334d288f7adfe6e996f2e712becf076745c97 F tool/mksqlite3c-noext.tcl fef88397668ae83166735c41af99d79f56afaabb - F tool/mksqlite3c.tcl 4b17864d0ae7664b2a82ac852afbe52e7d1db65c996b72941e149704b5e3cc15 -F tool/mksqlite3c.tcl a4b36eaa002ed00a0ab2c93d999a14f1acae98ff09a85382e5abc05a91edb82b ++F tool/mksqlite3c.tcl fa43eaee009197d453946c464a490f86e15efd6be5272450329a2b7fcfb94b4c F tool/mksqlite3h.tcl 51bd5e7e840a920388a5966c9f2ccc618f434c57bd68c1bab4085b2553e1e237 F tool/mksqlite3internalh.tcl eb994013e833359137eb53a55acdad0b5ae1049b F tool/mkvsix.tcl b9e0777a213c23156b6542842c238479e496ebf5 @@@ -1647,7 -1643,7 +1653,7 @@@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a9 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 - P fbc4f4ad259cfe04b28d698ef025f179b6708ac788939976c401db2caf8f92c1 - R eae9c7f2718fecb4f38f6083d68585eb -P 422cd9f39403feeacd70133c7a147e23572c75d617ac564344f016ae6611162c -R dfa04873a550ce06576a091a701d0729 ++P 355c594e821bb5ad782faf0e8d512305f4e1d7fd60949887a8270beed67d03e3 6ce8b7ca62fcf97875395fc1a989179309e0abb48d4465658ef0d871434ea057 ++R 2b114982ec8b419f300a2be7c462ca9f U dan - Z 6ffb27438a4983c698bbeb9ee0c29536 -Z f26bc896b278db4548da6d42aa588fb6 ++Z 75a2bd58b06ef3ce9c0ebe3bde26998f diff --cc manifest.uuid index 9241ba91be,257235744f..b44d9269ab --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - 355c594e821bb5ad782faf0e8d512305f4e1d7fd60949887a8270beed67d03e3 -6ce8b7ca62fcf97875395fc1a989179309e0abb48d4465658ef0d871434ea057 ++17bc7ded07fe2f1f47857bba646eb297e53f69fb1bafd68556d60700ce008750 diff --cc src/os_unix.c index a2bcb2f75d,157be3c3ac..95eb9a9935 --- a/src/os_unix.c +++ b/src/os_unix.c @@@ -3777,32 -3793,21 +3793,47 @@@ static int unixGetTempname(int nBuf, ch static int unixFileControl(sqlite3_file *id, int op, void *pArg){ unixFile *pFile = (unixFile*)id; switch( op ){ + case SQLITE_FCNTL_SERVER_MODE: { + int rc = SQLITE_OK; + int eServer = 0; + if( pFile->ctrlFlags | UNIXFILE_EXCL ){ + char *zJrnl = sqlite3_mprintf("%s-journal", pFile->zPath); + if( zJrnl==0 ){ + rc = SQLITE_NOMEM; + }else{ + struct stat buf; /* Used to hold return values of stat() */ + if( osStat(zJrnl, &buf) ){ + rc = SQLITE_IOERR_FSTAT; + }else{ + eServer = ((buf.st_mode & S_IFDIR) ? 1 : 0); + } + } + sqlite3_free(zJrnl); + } + *((int*)pArg) = eServer; + return rc; + } + case SQLITE_FCNTL_FILEID: { + i64 *aId = (i64*)pArg; + aId[0] = (i64)(pFile->pInode->fileId.dev); + aId[1] = (i64)(pFile->pInode->fileId.ino); + return SQLITE_OK; + } + #if defined(__linux__) && defined(SQLITE_ENABLE_BATCH_ATOMIC_WRITE) + case SQLITE_FCNTL_BEGIN_ATOMIC_WRITE: { + int rc = osIoctl(pFile->h, F2FS_IOC_START_ATOMIC_WRITE); + return rc ? SQLITE_IOERR_BEGIN_ATOMIC : SQLITE_OK; + } + case SQLITE_FCNTL_COMMIT_ATOMIC_WRITE: { + int rc = osIoctl(pFile->h, F2FS_IOC_COMMIT_ATOMIC_WRITE); + return rc ? SQLITE_IOERR_COMMIT_ATOMIC : SQLITE_OK; + } + case SQLITE_FCNTL_ROLLBACK_ATOMIC_WRITE: { + int rc = osIoctl(pFile->h, F2FS_IOC_ABORT_VOLATILE_WRITE); + return rc ? SQLITE_IOERR_ROLLBACK_ATOMIC : SQLITE_OK; + } + #endif /* __linux__ && SQLITE_ENABLE_BATCH_ATOMIC_WRITE */ + case SQLITE_FCNTL_LOCKSTATE: { *(int*)pArg = pFile->eFileLock; return SQLITE_OK; diff --cc src/sqlite.h.in index 9e985c259c,ad97b9a0de..ed01ad51c5 --- a/src/sqlite.h.in +++ b/src/sqlite.h.in @@@ -1044,8 -1087,9 +1088,11 @@@ struct sqlite3_io_methods #define SQLITE_FCNTL_JOURNAL_POINTER 28 #define SQLITE_FCNTL_WIN32_GET_HANDLE 29 #define SQLITE_FCNTL_PDB 30 - #define SQLITE_FCNTL_FILEID 31 - #define SQLITE_FCNTL_SERVER_MODE 32 + #define SQLITE_FCNTL_BEGIN_ATOMIC_WRITE 31 + #define SQLITE_FCNTL_COMMIT_ATOMIC_WRITE 32 + #define SQLITE_FCNTL_ROLLBACK_ATOMIC_WRITE 33 ++#define SQLITE_FCNTL_FILEID 34 ++#define SQLITE_FCNTL_SERVER_MODE 35 /* deprecated names */ #define SQLITE_GET_LOCKPROXYFILE SQLITE_FCNTL_GET_LOCKPROXYFILE