]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Merge all recent trunk enhancements into the reuse-schema branch.
authordrh <drh@noemail.net>
Mon, 16 Sep 2019 12:35:48 +0000 (12:35 +0000)
committerdrh <drh@noemail.net>
Mon, 16 Sep 2019 12:35:48 +0000 (12:35 +0000)
FossilOrigin-Name: 27eb223690989a294c5aad7a8ab1927904b1041e36ce7a0c04800bce49ec9142

22 files changed:
1  2 
Makefile.in
Makefile.msc
main.mk
manifest
manifest.uuid
src/analyze.c
src/attach.c
src/build.c
src/main.c
src/pragma.c
src/pragma.h
src/prepare.c
src/shell.c.in
src/sqlite.h.in
src/sqliteInt.h
src/tclsqlite.c
src/trigger.c
src/vdbe.c
src/vdbeaux.c
src/vtab.c
test/tclsqlite.test
tool/mkpragmatab.tcl

diff --cc Makefile.in
Simple merge
diff --cc Makefile.msc
Simple merge
diff --cc main.mk
Simple merge
diff --cc manifest
index 3badbdad5f853dc4d36bf552025e8984ecabaf7a,3e4365572adeff77bf045665b166b01d0b15105c..066e15813ed75b965f6fbf2b23f9b917198a32ed
+++ b/manifest
@@@ -1,11 -1,11 +1,11 @@@
- C Merge\slatest\strunk\schanges\swith\sthis\sbranch.
- D 2019-08-13T15:22:10.851
 -C Fix\sa\sproblem\swith\sprocessing\sCTEs\sthat\suse\sa\sWINDOW\sclause.
 -D 2019-09-16T05:34:08.899
++C Merge\sall\srecent\strunk\senhancements\sinto\sthe\sreuse-schema\sbranch.
++D 2019-09-16T12:35:48.289
  F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
  F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
  F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
- F Makefile.in c4b55bbca70511d8757e38358dfbc06dd74abd51d61bf4939d2caea023c9b97b
- F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
- F Makefile.msc 3a35f2d39e1c60cdfa6b53e13c1d3714048a3a0937ab278aa2684a7772c113ce
 -F Makefile.in 578f123620087ea459aa08fa872810a25ca7c0aaf16331de985bfcddb5f1e747
++F Makefile.in 4f63722008696418bae434379987f9987cba2ce823579512f2dd5f0ff734c04a
+ F Makefile.linux-gcc f609543700659711fbd230eced1f01353117621dccae7b9fb70daa64236c5241
 -F Makefile.msc a463dca3c50d8a36094fe5c8c39077907f530b54edfc5388c66c85e2cfc8dc04
++F Makefile.msc bfa3ab0a9d6a81ac5156084c67b75e2c9b66fd543954673ff2135075eef07414
  F README.md 1514a365ffca3c138e00c5cc839906108a01011a6b082bad19b09781e3aa498a
  F VERSION 4c516d84c2a5f26c477ed34c09ac4136630f71c68139631f2eb591b22eea7cf1
  F aclocal.m4 a5c22d164aff7ed549d53a90fa56d56955281f50
@@@ -446,7 -447,7 +448,7 @@@ F ext/userauth/userauth.c f81aa5a3ecacf
  F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 x
  F ltmain.sh 3ff0879076df340d2e23ae905484d8c15d5fdea8
  F magic.txt 8273bf49ba3b0c8559cb2774495390c31fd61c60
- F main.mk b5dd74c752335a232b454f55387012e9326ee6002a2d0c2a2f3b6dc8b8dec642
 -F main.mk 09716d345766a55b25ed157b14786526cf67c761c61d99c53e117196fb3b391a
++F main.mk f20c19fda395ae00a77662586eec40ba90aee6b1873ae275a7c2b23ed6d63d48
  F mkso.sh fd21c06b063bb16a5d25deea1752c2da6ac3ed83
  F mptest/config01.test 3c6adcbc50b991866855f1977ff172eb6d901271
  F mptest/config02.test 4415dfe36c48785f751e16e32c20b077c28ae504
@@@ -458,37 -459,37 +460,37 @@@ F spec.template 86a4a43b99ebb3e75e6b9a7
  F sqlite.pc.in 42b7bf0d02e08b9e77734a47798d1a55a9e0716b
  F sqlite3.1 fc7ad8990fc8409983309bb80de8c811a7506786
  F sqlite3.pc.in 48fed132e7cb71ab676105d2a4dc77127d8c1f3a
 -F src/alter.c 5c3031e45e80f79d7d54c2d32dd3c44926544d4f6a478858bfe4ee3191570190
 -F src/analyze.c a3f4ea45cdb4e9df78d4ea7beb87ec8a7a46f494173b641cd28512a40a97bff2
 -F src/attach.c 3ca19504849c2d9be10fc5899d6811f9d6e848665d1a41ffb53df0cd6e7c13ed
 +F src/alter.c deddf439893a8157b19b2b69e9537ed12aa2e4ddf5738141932f6d0330d1bb44
- F src/analyze.c 01ee7d24f0391a3756993572e9492e3d8e1dba87a44397fa2d8e660bc04ef99c
- F src/attach.c 95c3e4b1aa81c16a537cfa0c990dbcfa6e460e382b6ff888752f8e70075a4def
++F src/analyze.c 050e013f2b1d0f6f334e147c4c0f8a24f4b7dfb83c24fc62a2da7ebb50e45dfb
++F src/attach.c 6a1a045ff64c542882d1159a1df0aebaeaad86c9ed204edd979e94e8e9feefe1
  F src/auth.c a3d5bfdba83d25abed1013a8c7a5f204e2e29b0c25242a56bc02bb0c07bf1e06
  F src/backup.c f70077d40c08b7787bfe934e4d1da8030cb0cc57d46b345fba2294b7d1be23ab
  F src/bitvec.c 17ea48eff8ba979f1f5b04cc484c7bb2be632f33
  F src/btmutex.c 8acc2f464ee76324bf13310df5692a262b801808984c1b79defb2503bbafadb6
- F src/btree.c 6061323b98cc794a1e3ad6907f683f1ad2b8c48d7c7d486072b21f18efe73761
+ F src/btree.c fdc4389b271bca30138db27dc2dfb9f52c2a7baaa44845aaf31a3c54663d837f
  F src/btree.h c11446f07ec0e9dc85af8041cb0855c52f5359c8b2a43e47e02a685282504d89
  F src/btreeInt.h 6111c15868b90669f79081039d19e7ea8674013f907710baa3c814dc3f8bfd3f
- F src/build.c 7d97429277c45361bd093014721aaf1d5e8ea967505598d769f9c2b225a03896
 -F src/build.c da5d5d82eb53cb004e9120277cfe93a9c3dd294871eae3d728ebd0faee84d969
 -F src/callback.c 25dda5e1c2334a367b94a64077b1d06b2553369f616261ca6783c48bcb6bda73
++F src/build.c ab0e35602af640fb5840fcfab1bcdffb6776c4569841517d8ba8a3f4203d03fc
 +F src/callback.c 2e6db109a37219464a3a5ed6f2f330af4a0500a1a224122f4be472e454efe2cf
  F src/complete.c a3634ab1e687055cd002e11b8f43eb75c17da23e
 -F src/ctime.c 1b0724e66f95f33b160b1af85caaf9cceb325d22abf39bd24df4f54a73982251
 +F src/ctime.c 15d1010037db3577d2e90e793197c539e86860ab272d7a49e4e976425d0eba62
  F src/date.c e1d8ac7102f3f283e63e13867acb0efa33861cf34f0faf4cdbaf9fa7a1eb7041
  F src/dbpage.c 135eb3b5e74f9ef74bde5cec2571192c90c86984fa534c88bf4a055076fa19b7
  F src/dbstat.c c12833de69cb655751487d2c5a59607e36be1c58ba1f4bd536609909ad47b319
  F src/delete.c d08c9e01a2664afd12edcfa3a9c6578517e8ff8735f35509582693adbe0edeaf
- F src/expr.c 85239130e25f54279b1dfb3641984a335ce5a38709af29f9b62b555ed1459d07
+ F src/expr.c 10d90c4676047a75276446779d18fb3f7d3a1f9debc8b322e3772d2bd51f52ff
  F src/fault.c 460f3e55994363812d9d60844b2a6de88826e007
 -F src/fkey.c 6b79f4c2447691aa9ac86e2a6a774b65f3b3dd053d4220a4893051a0de20f82e
 +F src/fkey.c 2c14c9431a2de2c0d9444d0cc27e4360f4829455f689decfff01cac383fe0894
  F src/func.c 4ee36219698d50d672a28eca4adb0fd6b92e607a1883d318315e0d2fd5044467
  F src/global.c d7a7a45a78ffe01302d61c271ed50474ef1b9d2d23bf17a46a58c8a1926424ee
  F src/hash.c 8d7dda241d0ebdafb6ffdeda3149a412d7df75102cecfc1021c98d6219823b19
  F src/hash.h 9d56a9079d523b648774c1784b74b89bd93fac7b365210157482e4319a468f38
  F src/hwtime.h 747c1bbe9df21a92e9c50f3bbec1de841dc5e5da
  F src/in-operator.md 10cd8f4bcd225a32518407c2fb2484089112fd71
- F src/insert.c c2194dd2886337b870226fcb31c13e7df8c4b5e0ea85140e510a6f1daf1ad65b
+ F src/insert.c 40557ebd69f4115e7a273f9304a8ab637a47ce44f3c6923396928f023967b5e8
  F src/legacy.c d7874bc885906868cd51e6c2156698f2754f02d9eee1bae2d687323c3ca8e5aa
- F src/loadext.c 22afc33c3a61b4fd80a60a54f1882688371e6bc64685df2696b008fce65a999c
- F src/main.c 4b96a652a86ba72e011c8487f87251b25bdaeb15aac2655a583eefecb08750ea
+ F src/loadext.c a045bb3425a9a633cc0f78e93d9beda6866f4c0f15bfdee735aba7c6b39f5cc4
 -F src/main.c 3851950717170ade4f6d718c18c6c7400ef5994c2a654679af2cff2ffd0fb2b9
++F src/main.c dcdd6acc2ec4a790aedf741cb684c43f632c41bbbc34a41129f5cde43437433c
  F src/malloc.c 0f9da2a66b230a5785af94b9672126845099b57b70a32c987d04ac28c69da990
  F src/mem0.c 6a55ebe57c46ca1a7d98da93aaa07f99f1059645
  F src/mem1.c c12a42539b1ba105e3707d0e628ad70e611040d8f5e38cf942cee30c867083de
@@@ -517,24 -518,24 +519,24 @@@ F src/parse.y 6f284f7488ad9db9ae2762161
  F src/pcache.c 385ff064bca69789d199a98e2169445dc16e4291fa807babd61d4890c3b34177
  F src/pcache.h 4f87acd914cef5016fae3030343540d75f5b85a1877eed1a2a19b9f284248586
  F src/pcache1.c 62714cbd1b7299a6e6a27a587b66b4fd3a836a84e1181e7f96f5c34a50917848
- F src/pragma.c 7f5272822ecdc6bb830b0192a06d37618a938ef499e480b5aa79b07c59c1f492
- F src/pragma.h 089d20e01c735fcb9707f5947961008e4f0764b03f4a383ba1eacaa5b891fa6e
- F src/prepare.c ca7d06cec9ac6534542f0ea9cf73fdfc22c05c4f54e882e09ac1fca83ea2e7df
 -F src/pragma.c b47bc7db02ab13d04c680aee424466b4e34f4ef5aa7b2e464876ec005806f98f
 -F src/pragma.h 40962d65b645bb3f08c1f4c456effd01c6e7f073f68ea25177e0c95e181cff75
 -F src/prepare.c 132484635a30f873ee7eccd47f93ed1932503863b93b28423b42332d81adffaf
++F src/pragma.c f76a8ddaf4aa0e2dab3c080ad5c9fc4599c3431fe8f2ca36d6a129441e739d1a
++F src/pragma.h 583d641cfd146d31c91d7ba2770d6b8413c3ff0dc4f4a56645216c983a119c08
++F src/prepare.c 43e4601125f076d6c30b33c47dfcb3cffcdc1f26f02c4339b6f27c63016c88cd
  F src/printf.c 9be6945837c839ba57837b4bc3af349eba630920fa5532aa518816defe42a7d4
  F src/random.c 80f5d666f23feb3e6665a6ce04c7197212a88384
- F src/resolve.c d49679d55d3cf529bbdff8734c4ac02cedfb2fc785545b89815ddb79680b9198
+ F src/resolve.c 9891cf5fd155bb199f8b1ff5d1429b9f70484487f4c455bba94348d4cb6f829f
  F src/rowset.c d977b011993aaea002cab3e0bb2ce50cf346000dff94e944d547b989f4b1fe93
- F src/select.c 11087458ec2af5c4b377559ea0462c2ab842e02badd35b21a8d67257c4e0b117
- F src/shell.c.in 42051fc4e6f6c90b5789491fa14af0b9354e7db90aad813595f29302e5d09a53
- F src/sqlite.h.in 20fa8617527bb29315a6342db84c6ddcd58e0fda63a111152296ea9c77b9a9db
+ F src/select.c e2c870548541d33d090a066e89ab2e7943299006e2827c1abfae39561041fc0b
 -F src/shell.c.in 68698630c21c5489fb3dc961a3ab3840e726c3c01e475dab96055788a7b6e5e6
 -F src/sqlite.h.in 155fea14c0747f8842c4e592e04734f47ad8218d0f33c511849b15d410a7fb5c
++F src/shell.c.in f3f258a9972d5315ec4a69b8410bd8dbebd72942a7f3b79550e6825b9a995e61
++F src/sqlite.h.in bd7a60793790a9ea7be03c5402bf2fe8c6a1156f5ab43cdec9a7e01fcb1ac402
  F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8
- F src/sqlite3ext.h 9ecc93b8493bd20c0c07d52e2ac0ed8bab9b549c7f7955b59869597b650dd8b5
- F src/sqliteInt.h 47f291495f5fca52bd933dc1e3c70b513160e2b06b738db76fe4392a056054f3
+ F src/sqlite3ext.h cef696ce3293242c67b2339763608427bf72ee66f1f3a05389ac2a7b46001c31
 -F src/sqliteInt.h 4a478f7fa0937d7c3141393d8c30c49e242e5e696e6976e19281e4d933a8ab95
++F src/sqliteInt.h 0a25886fc8339edbc2eb82ba5a20a889d432e5a9d8a56729d8cac8bdb774d19e
  F src/sqliteLimit.h 1513bfb7b20378aa0041e7022d04acb73525de35b80b252f1b83fedb4de6a76b
 -F src/status.c 46e7aec11f79dad50965a5ca5fa9de009f7d6bde08be2156f1538a0a296d4d0e
 +F src/status.c d9f7d66ae8bee9ffbe4cf7ae72a8d3d429a269336dee1e705ecb3dbea27fa5e2
  F src/table.c b46ad567748f24a326d9de40e5b9659f96ffff34
- F src/tclsqlite.c 5947f3797410e213cde1d61f61fbfda706ee4ee2e1db6e0b2376e3206dabc71d
- F src/test1.c 87059457fb90b73a74044b379fe2cb0aefbb53c010c646ecaff23179a423638c
 -F src/tclsqlite.c 50c93be3e1c03b4e6cf6756e5197afcfe7f5cd0497d83a7ac317cde09e19b290
++F src/tclsqlite.c 02d9f47e1797c7aa4174fe90dc5380fb99057303e0b6443fa1b103e9de65cf35
+ F src/test1.c 07d774ae3fcd3aed48248483d550cef55cfb417bddab54f4c616b3ac8faa8e32
  F src/test2.c 3efb99ab7f1fc8d154933e02ae1378bac9637da5
  F src/test3.c 61798bb0d38b915067a8c8e03f5a534b431181f802659a6616f9b4ff7d872644
  F src/test4.c 405834f6a93ec395cc4c9bb8ecebf7c3d8079e7ca16ae65e82d01afd229694bb
@@@ -589,24 -589,24 +591,24 @@@ F src/test_windirent.h 90dfbe95442c9762
  F src/test_window.c cdae419fdcea5bad6dcd9368c685abdad6deb59e9fc8b84b153de513d394ba3f
  F src/test_wsd.c 41cadfd9d97fe8e3e4e44f61a4a8ccd6f7ca8fe9
  F src/threads.c 4ae07fa022a3dc7c5beb373cf744a85d3c5c6c3c
 -F src/tokenize.c d3615f0cbe4db5949503bf5916f3cd4fa5de855d5b4ef560f3b6dd5629423a1e
 +F src/tokenize.c 3e08eadda7a23a58dd45976c68c600ca2b61a6015c2e61849b1e0cb62f9a9169
- F src/treeview.c 06e65db6ffa14dd583f90403192190dfe3855c0e3acfcbac0e82109a46e2b16c
- F src/trigger.c fbe9b54f60b3d163eff7f4c4958c03069686ed04dc2994c286b216176a965bb6
- F src/update.c 3cb9150d2cf661d938e2f1b1749945f3faa767f88febdb739ab1793bbf895ff2
- F src/upsert.c 0dd81b40206841814d46942a7337786932475f085716042d0cb2fc7791bf8ca4
+ F src/treeview.c dd92b189d8c0623d6cf59cf2e136e4c3b2389ded133eaa15ca51d4714866ebb4
 -F src/trigger.c 845ccc08f60716c58aa28fe6470385c18ef8c4e1d88c93dcf449bc13d464eb2e
++F src/trigger.c 63761fc1306cf27eb1c875410d23452224ece3aafd14a0b73d6f53776050d06a
+ F src/update.c 7f05fad5e145248a00048aeb0bac78b8fdb4ed17216e14a6eb24c55596e87ee7
+ F src/upsert.c 710c91bb13e3c3fed5b6fe17cb13e09560bdd003ad8b8c51e6b16c80cfc48b10
  F src/utf.c 2f0fac345c7660d5c5bd3df9e9d8d33d4c27f366bcfb09e07443064d751a0507
  F src/util.c fffdfa627be74d69ef425f92db124e7148af449bb8a3286e79577c42bca84061
 -F src/vacuum.c 82dcec9e7b1afa980288718ad11bc499651c722d7b9f32933c4d694d91cb6ebf
 -F src/vdbe.c 145e417fda9377a809d9c754d4098de9a9620aec1bc3e4d2d4ca8f8d525dace3
 -F src/vdbe.h 3f2b571e702e77e6bf031f0236e554aedfae643e991f69000320f481408455cf
 +F src/vacuum.c 5b9b4771ffb47aaef038c4ad5f1acd76dfbc9e0a4f101c1ba7f7ac9c2ba96374
- F src/vdbe.c a19626224f62ec48da96dc41a3f9feda243ad5956c0067a93c7ea9210fb1a314
++F src/vdbe.c 968f911f87ab6a03e2ad1738f98e717db180036257e7ce0d1921e357cba5545f
 +F src/vdbe.h 2cfde8249aac55d7f508752e27919e17a30add7bf7444dc221ae5a65d2bafe9d
  F src/vdbeInt.h e95de5129124d77f01439e6635012adfaf23c0017bff47296126143cf18bd0c6
  F src/vdbeapi.c 95001d0f84ee3cda344fed98ca0d7961deb4fc836b83495630d0af1f7cc4789e
- F src/vdbeaux.c 2edbf3ca7ea6398301b9655bd2fc6bdb69a55414301098eaba149a3fe43abc47
 -F src/vdbeaux.c 7ccf418141df1c7f87b0d69510523ae522abbe47c769d1b2c15120e88fac3eb9
 -F src/vdbeblob.c 253ed82894924c362a7fa3079551d3554cd1cdace39aa833da77d3bc67e7c1b1
++F src/vdbeaux.c 38f1e2dcb4571ddc9e75459345ab8f229ad62e0bdc0a1f7545112e6e7f443bbd
 +F src/vdbeblob.c 40028e015fe557a945c99edb6cbf844ea96d853c3e8ac4eb5c1e49bff59f154e
  F src/vdbemem.c 920285c3b7f5c64369e02da437dab71e9e91862df9c486541c14633739f91d75
- F src/vdbesort.c 3531ae3a431ad6b98b67bd891fb42ec9d66867157188a2b1a9e58c55da6151b2
+ F src/vdbesort.c da75f505aba230060ce6472605a4aa6494f73eeb1071e1cc2643c3d4035e671b
  F src/vdbetrace.c fa3bf238002f0bbbdfb66cc8afb0cea284ff9f148d6439bc1f6f2b4c3b7143f0
- F src/vtab.c 9dd05ccba00bb8ce28c5fb86821c7ced3c1fe32b5312f9afde9910c7671346a4
 -F src/vtab.c 5a0b7193d586991b3db30e343d6b59959906bfe8658a6a0a85709b20ca50bb49
++F src/vtab.c 043b188f5f3472935c08686b3f006ca07b26fbacb6eb371f8cd4b06602ab094e
  F src/vxworks.h d2988f4e5a61a4dfe82c6524dd3d6e4f2ce3cdb9
  F src/wal.c bbd6838bd79c0a32144d482fb0b6a9d2d1a252fb3b16d5005ec30f2f80413b0d
  F src/wal.h 606292549f5a7be50b6227bd685fa76e3a4affad71bb8ac5ce4cb5c79f6a176a
@@@ -1397,7 -1391,7 +1400,7 @@@ F test/tabfunc01.test 20e98ffe55f35d8d3
  F test/table.test eb3463b7add9f16a5bb836badf118cf391b809d09fdccd1f79684600d07ec132
  F test/tableapi.test ecbcc29c4ab62c1912c3717c48ea5c5e59f7d64e4a91034e6148bd2b82f177f4
  F test/tableopts.test dba698ba97251017b7c80d738c198d39ab747930
- F test/tclsqlite.test 7ea484c9fb74d47d48c62b18a97b287c418b0c3aeacc639133b04a7e426d58af
 -F test/tclsqlite.test f9acb83122be0a7c4997ab7f17742507874dced95144c20217c2428553f110bb
++F test/tclsqlite.test 47dded95a07b8916da62902724ce3a59d60331ed5ba2bfe42d1189ce0413c0f3
  F test/tempdb.test 4cdaa23ddd8acb4d79cbb1b68ccdfd09b0537aaba909ca69a876157c2a2cbd08
  F test/tempdb2.test 353864e96fd3ae2f70773d0ffbf8b1fe48589b02c2ec05013b540879410c3440
  F test/tempfault.test 0c0d349c9a99bf5f374655742577f8712c647900
@@@ -1779,7 -1776,7 +1786,7 @@@ F tool/mkmsvcmin.tcl cad0c7b54d7dd92bc8
  F tool/mkopcodec.tcl d1b6362bd3aa80d5520d4d6f3765badf01f6c43c
  F tool/mkopcodeh.tcl 352a4319c0ad869eb26442bf7c3b015aa15594c21f1cce5a6420dbe999367c21
  F tool/mkopts.tcl 680f785fdb09729fd9ac50632413da4eadbdf9071535e3f26d03795828ab07fa
- F tool/mkpragmatab.tcl 15241b904c222876bedbbad42ba2fa529bd2cc20e6fbdf51cbed3a5837465069
 -F tool/mkpragmatab.tcl f115d63ada8171f9da28dc8e34e043a1a159692d46b89f66b6e681140bc4683d
++F tool/mkpragmatab.tcl ee69ec15f46275c873083e7e643adda86b3368cf587dab6b69eb7aa324d8242d
  F tool/mkshellc.tcl 70a9978e363b0f3280ca9ce1c46d72563ff479c1930a12a7375e3881b7325712
  F tool/mksourceid.c d458f9004c837bee87a6382228ac20d3eae3c49ea3b0a5aace936f8b60748d3b
  F tool/mkspeedsql.tcl a1a334d288f7adfe6e996f2e712becf076745c97
@@@ -1846,7 -1843,7 +1853,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 e30c7414fe483fcb68aeedd364dc5a3da62b01a80808a917016a9f148f1f3130 8c44b02f1479cec61554800702a3c1d806e4ee64b41ba2af17320f62794a02fe
- R 4e1916fb0cea7cd10e2fe4a7fca0c441
 -P 01d71b947a7422081d5c7d6ac2c91b9c936dc41926ab58c92f4a088a64e8c051
 -R c92814bccf2f0531ff265b831a716091
--U dan
- Z 9ccdede6ff16576fa964eaec773d7dc9
 -Z cfe2dcdda6abe970278e2187a7ab525e
++P 5b4689d89cd27b238586ddee638b856145a9731ff70ffcb1659613528b792167 ca564d4b5b19fe56842a04f31bb61352e6ae9d72a7e7634eb27ebcf5f670545a
++R 1c093b6224ac218a49aceeb65fb90195
++U drh
++Z 90e6dfcc263ede0d7162600d2446fabb
diff --cc manifest.uuid
index d79520010ccca424bdf2fac351d54f804f7f2ca4,177b32dc78a4e7a8cf0a6be322cf442b82ee6383..9519e15ff863c76a77704d62539b571c1403f826
@@@ -1,1 -1,1 +1,1 @@@
- 5b4689d89cd27b238586ddee638b856145a9731ff70ffcb1659613528b792167
 -ca564d4b5b19fe56842a04f31bb61352e6ae9d72a7e7634eb27ebcf5f670545a
++27eb223690989a294c5aad7a8ab1927904b1041e36ce7a0c04800bce49ec9142
diff --cc src/analyze.c
Simple merge
diff --cc src/attach.c
index 7a396740818b7a1a12dec623672a00e07d8b7a8d,1dcb407edd0c49593dd285ca0c3d9883bda5c596..c40bcaa58e245e48455c21d7485bc4250cd85620
@@@ -323,7 -324,18 +324,19 @@@ static void detachFunc
      goto detach_error;
    }
  
+   /* If any TEMP triggers reference the schema being detached, move those
+   ** triggers to reference the TEMP schema itself. */
+   assert( db->aDb[1].pSchema );
+   pEntry = sqliteHashFirst(&db->aDb[1].pSchema->trigHash);
+   while( pEntry ){
+     Trigger *pTrig = (Trigger*)sqliteHashData(pEntry);
+     if( pTrig->pTabSchema==pDb->pSchema ){
+       pTrig->pTabSchema = pTrig->pSchema;
+     }
+     pEntry = sqliteHashNext(pEntry);
+   }
 +  sqlite3SchemaDisconnect(db, i, 0);
    sqlite3BtreeClose(pDb->pBt);
    pDb->pBt = 0;
    pDb->pSchema = 0;
diff --cc src/build.c
index d583da0be0988090b9b86c7c3d64144dbbe3b648,106b995d31ad4abfd000c7d0e9d61f35117058f9..4f487de6afd6ce7e406aa1e204d7b239786e09a0
@@@ -3257,9 -3222,12 +3278,12 @@@ void sqlite3CreateIndex
    if( IN_DECLARE_VTAB && idxType!=SQLITE_IDXTYPE_PRIMARYKEY ){
      goto exit_create_index;
    }
 -  if( SQLITE_OK!=sqlite3ReadSchema(pParse) ){
 +  if( !IsSharedSchema(db) && SQLITE_OK!=sqlite3ReadSchema(pParse) ){
      goto exit_create_index;
    }
+   if( sqlite3HasExplicitNulls(pParse, pList) ){
+     goto exit_create_index;
+   }
  
    /*
    ** Find the table that is to be indexed.  Return early if not found.
diff --cc src/main.c
Simple merge
diff --cc src/pragma.c
Simple merge
diff --cc src/pragma.h
Simple merge
diff --cc src/prepare.c
index 37315f622724d0c97041459ac255ee4d9ef73ac1,70c162658ad2b0b0f054bf195ba63e2046c0bcbe..4623cc57e7dbae36fd842f518ad78704e26be204
@@@ -142,15 -115,10 +142,15 @@@ int sqlite3InitCallback(void *pInit, in
        if( db->init.orphanTrigger ){
          assert( iDb==1 );
        }else{
-         pData->rc = rc;
+         if( rc > pData->rc ) pData->rc = rc;
          if( rc==SQLITE_NOMEM ){
            sqlite3OomFault(db);
 -        }else if( rc!=SQLITE_INTERRUPT && (rc&0xFF)!=SQLITE_LOCKED ){
 +        }else if( rc!=SQLITE_INTERRUPT 
 +#ifdef SQLITE_ENABLE_SHARED_SCHEMA
 +               && (rc&0xFF)!=SQLITE_LOCKED 
 +               && (rc&0xFF)!=SQLITE_IOERR
 +#endif
 +        ){
            corruptSchema(pData, argv[1], sqlite3_errmsg(db));
          }
        }
diff --cc src/shell.c.in
Simple merge
diff --cc src/sqlite.h.in
Simple merge
diff --cc src/sqliteInt.h
Simple merge
diff --cc src/tclsqlite.c
Simple merge
diff --cc src/trigger.c
index 881427310a093554c46caeb54a3713b477d4e31b,83685a0aae83cdc5d762c564044444657245c7bb..17c86c0a9d29764a6d48964e1dc07904f277d28d
@@@ -641,12 -620,10 +644,11 @@@ void sqlite3DropTriggerPtr(Parse *pPars
  
    iDb = sqlite3SchemaToIndex(pParse->db, pTrigger->pSchema);
    assert( iDb>=0 && iDb<db->nDb );
 +  sqlite3SchemaWritable(pParse, iDb);
    pTable = tableOfTrigger(pTrigger);
-   assert( pTable );
-   assert( pTable->pSchema==pTrigger->pSchema || iDb==1 );
+   assert( (pTable && pTable->pSchema==pTrigger->pSchema) || iDb==1 );
  #ifndef SQLITE_OMIT_AUTHORIZATION
-   {
+   if( pTable ){
      int code = SQLITE_DROP_TRIGGER;
      const char *zDb = db->aDb[iDb].zDbSName;
      const char *zTab = SCHEMA_TABLE(iDb);
diff --cc src/vdbe.c
Simple merge
diff --cc src/vdbeaux.c
Simple merge
diff --cc src/vtab.c
Simple merge
Simple merge
Simple merge