From: drh Date: Fri, 27 Jan 2017 16:24:22 +0000 (+0000) Subject: Merge all recent enhancements from trunk. X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d81158dc323104e2c067778af749f305ee678fde;p=thirdparty%2Fsqlite.git Merge all recent enhancements from trunk. FossilOrigin-Name: fe86ff54293fbee69126aca9ca9839e3e16d7a1c --- d81158dc323104e2c067778af749f305ee678fde diff --cc manifest index 66417691ad,1c84aea007..28a24c284a --- a/manifest +++ b/manifest @@@ -1,6 -1,6 +1,6 @@@ - C Merge\sthe\spragma-as-vtab\senhancement\sfrom\strunk. - D 2016-12-16T21:15:04.542 - F Makefile.in c194b58fe00c370a48ac6ae6945e92a7781db1c8 -C Alternative\sICU\sfix\s(compare\sto\scheck-in\s[50e60cb4])\sthat\savoids\scasting\nintegers\sto\spointers. -D 2017-01-27T13:14:12.467 ++C Merge\sall\srecent\senhancements\sfrom\strunk. ++D 2017-01-27T16:24:22.795 + F Makefile.in 5f415e7867296d678fed2e6779aea10c1318b4bc F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc b8ca53350ae545e3562403d5da2a69cec79308da F README.md 8ecc12493ff9f820cdea6520a9016001cb2e59b7 @@@ -312,7 -314,7 +314,7 @@@ F ext/userauth/userauth.c 3410be31283ab F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 x F ltmain.sh 3ff0879076df340d2e23ae905484d8c15d5fdea8 F magic.txt 8273bf49ba3b0c8559cb2774495390c31fd61c60 - F main.mk 2476a37aa8a70a69efe54a004351f8ae7844f751 -F main.mk afc52937b4e5fe08678e8d5a4fe4487d44e3bc61 ++F main.mk 2f07c07d88b44cd4623e426d67b3f9d41e3ea755 F mkso.sh fd21c06b063bb16a5d25deea1752c2da6ac3ed83 F mptest/config01.test 3c6adcbc50b991866855f1977ff172eb6d901271 F mptest/config02.test 4415dfe36c48785f751e16e32c20b077c28ae504 @@@ -330,11 -332,11 +332,11 @@@ F src/attach.c 8c476f8bd5d2afe11d925f89 F src/auth.c 930b376a9c56998557367e6f7f8aaeac82a2a792 F src/backup.c faf17e60b43233c214aae6a8179d24503a61e83b F src/bitvec.c 17ea48eff8ba979f1f5b04cc484c7bb2be632f33 - F src/btmutex.c bc87dd3b062cc26edfe79918de2200ccb8d41e73 - F src/btree.c 7892be7e019565f6e5d2df6bda94befa7d91c9a0 - F src/btree.h 14931e081909f9b75009b0b5c5ead6b074204705 + F src/btmutex.c 0e9ce2d56159b89b9bc8e197e023ee11e39ff8ca -F src/btree.c 6a63fa34e6fe86e87090e41963c0f2fcf9d3e16d -F src/btree.h e6d352808956ec163a17f832193a3e198b3fb0ac ++F src/btree.c 4be2a8e4a25d4e46499465b84bf1f48c2fd3ce08 ++F src/btree.h fef389999fda3984800d55ea563e1b52debe13ab F src/btreeInt.h 10c4b77c2fb399580babbcc7cf652ac10dba796e - F src/build.c d814cb158ca2ef75c525e4c3f0d47b5666e53c95 -F src/build.c 9e799f1edd910dfa8a0bc29bd390d35d310596af ++F src/build.c 26f9e24b58a801d070a621440fb6624bace28b9f F src/callback.c 2e76147783386374bf01b227f752c81ec872d730 F src/complete.c a3634ab1e687055cd002e11b8f43eb75c17da23e F src/ctime.c 9f2296a4e5d26ebf0e0d95a0af4628f1ea694e7a @@@ -375,29 -377,29 +377,29 @@@ F src/os_setup.h 0dbaea40a7d36bf311613d F src/os_unix.c 30e2c43e4955db990e5b5a81e901f8aa74cc8820 F src/os_win.c cf90abd4e50d9f56d2c20ce8e005aff55d7bd8e9 F src/os_win.h 7b073010f1451abe501be30d12f6bc599824944a - F src/pager.c 81fe2bb847df537694ec39e28e8b3dc221c64a7d - F src/pager.h d1e944291030351f362a0a7da9b5c3e34e603e39 + F src/pager.c ff1232b3088a39806035ecfac4fffeb22717d80b + F src/pager.h f2a99646c5533ffe11afa43e9e0bea74054e4efa -F src/parse.y 29153738a7322054359320eb00b5a4cd44389f20 +F src/parse.y 5280d00e80f0fb118437ffc3ffc14c69ca0c87cd F src/pcache.c 51070ec9b8251bbf9c6ea3d35fd96a458752929e F src/pcache.h 2cedcd8407eb23017d92790b112186886e179490 F src/pcache1.c e3967219b2a92b9edcb9324a4ba75009090d3953 - F src/pragma.c 10f1418fb9105a32a9bfb001b536110ffa1344b5 - F src/pragma.h e2636093e33f5cc0feffc7ead45ce1268a5524e9 -F src/pragma.c 0e7a7c6f1c6fd8ff50c0fff65b8bb80174bc49c5 -F src/pragma.h 61aa5389118594bebb28120a6720401aee34ce1a ++F src/pragma.c 1ba3574e9afa3ad8444efe58f5b2c46aa5635e96 ++F src/pragma.h 5d3266fb4d4bbbbcd00cc81342c6357b38ad1ea4 F src/prepare.c b1140c3d0cf59bc85ace00ce363153041b424b7a - F src/printf.c f94da4935d1dd25420ac50c6745db1deb35e07c1 + F src/printf.c ff10a9b9902cd2afe5f655f3013c6307d969b1fd F src/random.c 80f5d666f23feb3e6665a6ce04c7197212a88384 - F src/resolve.c bb070cf5f23611c44ab7e4788803684e385fc3fb + F src/resolve.c f9bc0de45a30a450da47b3766de00be89bf9be79 F src/rowset.c 7b7e7e479212e65b723bf40128c7b36dc5afdfac - F src/select.c e4c687333c5fa33b1ce05c37bfbea6e09d3dbee9 - F src/shell.c 9be556ad9c7cf429d0acc48e386960d290c4df75 - F src/sqlite.h.in e8e2d108d82647f0a812fdb74accf91c1ec08ddc + F src/select.c 3856db523b942062bca8722ba03b61c324ff94d6 + F src/shell.c a84e453c213f3e0d6935a582024da4e242f85a19 + F src/sqlite.h.in 1971ab9709e010d52a02a1a6276d5a2f9b947476 F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 F src/sqlite3ext.h 8648034aa702469afb553231677306cc6492a1ae - F src/sqliteInt.h 9f4111b5743fdb9d6dea6da81485abc94abf01ac -F src/sqliteInt.h 341ce9e5b0397771fa6bd9dadb8ef4cbbd6224d0 ++F src/sqliteInt.h 10fbede4b830769f1d56f51a8f3b1222afc2de7d F src/sqliteLimit.h c0373387c287c8d0932510b5547ecde31b5da247 F src/status.c a9e66593dfb28a9e746cba7153f84d49c1ddc4b1 - F src/table.c 5226df15ab9179b9ed558d89575ea0ce37b03fc9 - F src/tclsqlite.c 205c66b9b81d97978a155caa3ef5be9c4de2b174 + F src/table.c b46ad567748f24a326d9de40e5b9659f96ffff34 + F src/tclsqlite.c 418f5e5e0840425a7e5b33f3600dccd378a57549 F src/test1.c 8a98191a1da8e100f77cdb5cc716df67d405028d F src/test2.c 3efb99ab7f1fc8d154933e02ae1378bac9637da5 F src/test3.c d03f5b5da9a2410b7a91c64b0d3306ed28ab6fee @@@ -444,25 -446,25 +446,25 @@@ F src/test_tclvar.c df9fe1213c2634687a9 F src/test_thread.c 911d15fb14e19c0c542bdc8aabf981c2f10a4858 F src/test_vfs.c f0186261a24de2671d080bcd8050732f0cb64f6e F src/test_vfstrace.c bab9594adc976cbe696ff3970728830b4c5ed698 - F src/test_windirent.c 600398db0198ca1c77ca183831bf456746b6f5c4 - F src/test_windirent.h 7edc57e2faa727026dbd5d010dd0e2e665d5aa01 + F src/test_windirent.c 17f91f5f2aa1bb7328abb49414c363b5d2a9d3ff + F src/test_windirent.h 5d67483a55442e31e1bde0f4a230e6e932ad5906 F src/test_wsd.c 41cadfd9d97fe8e3e4e44f61a4a8ccd6f7ca8fe9 F src/threads.c 4ae07fa022a3dc7c5beb373cf744a85d3c5c6c3c - F src/tokenize.c 6eb0752c4fd191f789190c3708ee5b0060fd2829 + F src/tokenize.c 5c2f516876fc27fbd7753913f032f49eb89e83b5 F src/treeview.c 4e44ade3bfe59d82005039f72e09333ce2b4162c F src/trigger.c c9f0810043b265724fdb1bdd466894f984dfc182 - F src/update.c 1da7c462110bffed442a42884cb0d528c1db46d8 + F src/update.c b356b29d04c71f33c779f2cb557cf953819bdd7a F src/utf.c 699001c79f28e48e9bcdf8a463da029ea660540c - F src/util.c e68e8ced7328f22d2cf7b4c898c394a0de34cdf1 + F src/util.c a88b0466fddf445ce752226d4698ca3faada620a F src/vacuum.c 33c174b28886b2faf26e503b5a49a1c01a9b1c16 - F src/vdbe.c accfa7875623a5efa6108c75581e6588a342a643 - F src/vdbe.h 0c74f6305fb43b9b282dacaff102272370e327d4 - F src/vdbeInt.h 42e498dbe96475dbb3fda3d85d8fd2a87eff60a2 - F src/vdbeapi.c ea4e2dc2213cc6bd7bee375a29a9b51c31b93ae0 - F src/vdbeaux.c f5edc89007f8a49e224089a4a4dddbc11bd38213 - F src/vdbeblob.c f4f98ea672b242f807c08c92c7faaa79e5091b65 - F src/vdbemem.c d3fd85b7b7ef3eb75de29c6d7e1d10d3ca78b4fd - F src/vdbesort.c bb34eed4fb52e11ac037dccea4ee3190594c7f9e -F src/vdbe.c c27cc34be1d9169c1c191238025781684bdcd4ec ++F src/vdbe.c bf7274a1adb1647c662816712d38e1c3e42f234e + F src/vdbe.h 59998ffd71d7caa8886bc78dafaf8caeccd4c13c + F src/vdbeInt.h 281cb70332dc8b593b8c7afe776f3a2ba7d4255e + F src/vdbeapi.c 7a65f10684982daecfce50f557f2632b7f20b198 + F src/vdbeaux.c 6847b02aa2db536ed15d90f1fdc2923afef93c5b + F src/vdbeblob.c 2b3d1ad915dbe5dc92c48759dc18fa8c697e78e5 + F src/vdbemem.c 3b5a9a5b375458d3e12a50ae1aaa41eeec2175fd + F src/vdbesort.c eda25cb2d1727efca6f7862fea32b8aa33c0face F src/vdbetrace.c 41963d5376f0349842b5fc4aaaaacd7d9cdc0834 F src/vtab.c c4bbe0f870f52036553f8098aee0703997f0577a F src/vxworks.h d2988f4e5a61a4dfe82c6524dd3d6e4f2ce3cdb9 @@@ -1459,9 -1469,8 +1469,9 @@@ F tool/checkSpacing.c 810e51703529a204f F tool/dbhash.c a06228aa21ebc4e6ea8daa486601d938499238a5 F tool/extract.c 054069d81b095fbdc189a6f5d4466e40380505e2 F tool/fast_vacuum.c 5ba0d6f5963a0a63bdc42840f678bad75b2ebce1 +F tool/faststat1.c 67637f03dced49951f1021bfdc95aa9ffadbe871 F tool/fragck.tcl 5265a95126abcf6ab357f7efa544787e5963f439 - F tool/fuzzershell.c d5c870a07452caa5c70a8e49d6c64e403558686d + F tool/fuzzershell.c dbf6c26eef936ec78cb0707570de3a4308b2507e F tool/genfkey.README cf68fddd4643bbe3ff8e31b8b6d8b0a1b85e20f4 F tool/genfkey.test 4196a8928b78f51d54ef58e99e99401ab2f0a7e5 F tool/getlock.c f4c39b651370156cae979501a7b156bdba50e7ce @@@ -1476,7 -1485,7 +1486,7 @@@ F tool/mkmsvcmin.tcl 2f12f7fa8858bbe61c F tool/mkopcodec.tcl d1b6362bd3aa80d5520d4d6f3765badf01f6c43c F tool/mkopcodeh.tcl a01d2c1d8a6205b03fc635adf3735b4c523befd3 F tool/mkopts.tcl 66ac10d240cc6e86abd37dc908d50382f84ff46e - F tool/mkpragmatab.tcl c4e9c6b70e54e5720a81eeccfb4d739a566be217 -F tool/mkpragmatab.tcl ebb4bfcd2f8010e0a3934b6118db4b5f2f5edf5c ++F tool/mkpragmatab.tcl 72cd1298ca53952a6064fea99e6e5dabd6154d24 F tool/mkspeedsql.tcl a1a334d288f7adfe6e996f2e712becf076745c97 F tool/mksqlite3c-noext.tcl fef88397668ae83166735c41af99d79f56afaabb F tool/mksqlite3c.tcl 06b2e6a0f21cc0a5d70fbbd136b3e0a96470645e @@@ -1538,7 -1547,7 +1548,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 396ab8f87ea85a01f7cb73aa83d6572057ae97fc 94689e3bdac2eabbcf1a51d741c2604ed4bd8a40 - R 432a18e22c55218bc78ee74a118ecff2 -P 58f02e6eae8fc9e2577fe435b0282fb46af3960d -R 4a4a07080dc840a599a4cd01566373f4 ++P 89250777b253f90f133d41f5387671429a562c07 d9752c8f7c55426fd7d2b877c5cc3784f93b5349 ++R 30a68bd8b72d82648631d5eeafe1ef2c U drh - Z f97d4f7f1678bf38b62a5e878154818e -Z 816a99767333ba2de388be8cc7b0ed87 ++Z 25bc6a3c364f4045dc512e569eb94b52 diff --cc manifest.uuid index 4b69579d77,92d5c8ac0b..6f20933be8 --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - 89250777b253f90f133d41f5387671429a562c07 -d9752c8f7c55426fd7d2b877c5cc3784f93b5349 ++fe86ff54293fbee69126aca9ca9839e3e16d7a1c diff --cc src/pragma.c index 0971989bce,5251d0cd26..6bcbe6fc05 --- a/src/pragma.c +++ b/src/pragma.c @@@ -2075,9 -1955,18 +2077,18 @@@ void sqlite3Pragma } /* End of the PRAGMA switch */ + /* The following block is a no-op unless SQLITE_DEBUG is defined. Its only + ** purpose is to execute assert() statements to verify that if the + ** PragFlg_NoColumns1 flag is set and the caller specified an argument + ** to the PRAGMA, the implementation has not added any OP_ResultRow + ** instructions to the VM. */ + if( (pPragma->mPragFlg & PragFlg_NoColumns1) && zRight ){ + sqlite3VdbeVerifyNoResultRow(v); + } + pragma_out: sqlite3DbFree(db, zLeft); - sqlite3DbFree(db, zRight); + sqlite3IdListDelete(db, pValues); } #ifndef SQLITE_OMIT_VIRTUALTABLE /***************************************************************************** diff --cc tool/mkpragmatab.tcl index 3428a946a8,c22f72d491..b221f0a201 --- a/tool/mkpragmatab.tcl +++ b/tool/mkpragmatab.tcl @@@ -277,14 -282,8 +282,14 @@@ set pragma_def FLAG: NeedSchema IF: !defined(SQLITE_OMIT_INTEGRITY_CHECK) + NAME: est_count + FLAG: NeedSchema + + NAME: btree_sample + FLAG: NeedSchema + NAME: encoding - FLAG: Result0 + FLAG: Result0 NoColumns1 IF: !defined(SQLITE_OMIT_UTF16) NAME: schema_version