]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Merge trunk change [895bd20b29] into this branch.
authordan <dan@noemail.net>
Thu, 5 Mar 2020 18:59:59 +0000 (18:59 +0000)
committerdan <dan@noemail.net>
Thu, 5 Mar 2020 18:59:59 +0000 (18:59 +0000)
FossilOrigin-Name: 507f972e91ffdc8d80a6ce594139ea4c7afad38791a08032637340fbf49842bc

1  2 
manifest
manifest.uuid
src/pragma.c
src/prepare.c
src/sqliteInt.h

diff --cc manifest
index 902963ee2484d905ed4ba4b6e483b00438f1b8d9,2f7d0852ef9979660fcc453a9fe4802b5571c139..433b08b996769cc8f2271d9c9e072bfd7cfeb782
+++ b/manifest
@@@ -1,5 -1,5 +1,5 @@@
- C Merge\strunk\senhancements\sinto\sthe\sreuse-schema\sbranch.
- D 2020-03-05T16:30:00.000
 -C Report\san\serror\sif\sthe\smain,\sor\sany\sother,\sdatabase\sencoding\sis\smodified\sby\san\sexternal\sprocess\s(perhaps\susing\sthe\sbackup\sAPI)\safter\sthe\sdb\shas\sbeen\sopened.
 -D 2020-03-05T18:04:09.456
++C Merge\strunk\schange\s[895bd20b29]\sinto\sthis\sbranch.
++D 2020-03-05T19:00:00.000
  F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
  F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
  F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@@ -525,23 -524,23 +525,23 @@@ F src/parse.y 61ae75b1764c86f56fdfe384d
  F src/pcache.c 385ff064bca69789d199a98e2169445dc16e4291fa807babd61d4890c3b34177
  F src/pcache.h 4f87acd914cef5016fae3030343540d75f5b85a1877eed1a2a19b9f284248586
  F src/pcache1.c 6596e10baf3d8f84cc1585d226cf1ab26564a5f5caf85a15757a281ff977d51a
- F src/pragma.c 0bda432ffd9141a96174e836901d2e93ac2d816801a2890f54120eba00e2bc5f
 -F src/pragma.c 5fd004b89c77319008ddff6d65dcc83ccca9584d3048f4f66b108b5906a20dba
 -F src/pragma.h 9473160d220416456b40f27323bb4b316d4e4e08ffbf8bf88c5f7045d49c38e5
 -F src/prepare.c 8d4d6c8aa6afefc48027c54b41cdf134b4d6bc2fc4badbe483ad7fd9e1728a28
++F src/pragma.c 059139100831d7fafb8070a0edf7e025ace31dbce1fb1455ffc57b6ff7d8cc93
 +F src/pragma.h 4aaad4b1d9ff8b99cf7af658d5215f5004d06174f7d06bac60a2c61820d2786b
- F src/prepare.c 6d25dd99f4173059362ae9fbeae824f7b353231b49362a848d55111a6ee9226b
++F src/prepare.c 45824c5f6dbacb9cb2c966a1d6eebdd94170da9b8700a265abd6a5e49cbd73dd
  F src/printf.c 9be6945837c839ba57837b4bc3af349eba630920fa5532aa518816defe42a7d4
  F src/random.c 80f5d666f23feb3e6665a6ce04c7197212a88384
  F src/resolve.c 38e3a5636f5bdc92e3683e4cafbba6418c0aa15e0d89ca5b28bd0b621dbb80bf
  F src/rowset.c d977b011993aaea002cab3e0bb2ce50cf346000dff94e944d547b989f4b1fe93
  F src/select.c c94eec317c8ba929bc228392eb3cac8124f2d0fbe3fc1bddecb44dfc7057bc78
 -F src/shell.c.in 3897f3f7302914da1f6df3a2a09ac4aafa14a571d7d18c51500cfb2ff04f05eb
 -F src/sqlite.h.in 802957feeb249ede54f8dfe99b72aa19e70a0b7737969c46e625dc2f9f2d42b0
 +F src/shell.c.in 42c8c25bd8aa03827cf042d0263a8f9a532e35548857d39246bdcdbf125ccc0c
 +F src/sqlite.h.in 4d7bb5bebb0a925f587fd3f6d45a4742baab40195d04a7014b2e88a05571cd1d
  F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8
  F src/sqlite3ext.h 9c5269260409eb3275324ccace6a13a96f4ad330c708415f70ca6097901ff4ee
- F src/sqliteInt.h 4fb4427f1d9bc2e172f7f1c5184bf505d8525e10355713c40a97e2e3f5dade39
 -F src/sqliteInt.h 37511a5bd13dab6c61242b8d6525c7efdea7a90a7fd00e5ca8e809fa292efe7c
++F src/sqliteInt.h f45995114ccf7172fdca508babcc5eca038a0955923079dafd6801422cce6846
  F src/sqliteLimit.h 95cb8479ca459496d9c1c6a9f76b38aee12203a56ce1092fe13e50ae2454c032
 -F src/status.c 9ff2210207c6c3b4d9631a8241a7d45ab1b26a0e9c84cb07a9b5ce2de9a3b278
 +F src/status.c f6e2b6c37873620ce2cb597f5606a1c9adca4c0db1ff3a08a37231e920d21985
  F src/table.c b46ad567748f24a326d9de40e5b9659f96ffff34
 -F src/tclsqlite.c d0aa320416efe88c4dbb0156ed6c494f2f9958871a940e46984ee57b3e7fcc50
 +F src/tclsqlite.c e2326854624e356ca2edf2c95309f62d78c53eeb9143824be319112d0baa9c44
  F src/test1.c 5e8b8cc54e8c88906ea8a084387aa79bad245e539f4cee73149e5c0527e1db16
  F src/test2.c 3efb99ab7f1fc8d154933e02ae1378bac9637da5
  F src/test3.c 61798bb0d38b915067a8c8e03f5a534b431181f802659a6616f9b4ff7d872644
@@@ -1870,7 -1860,7 +1870,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 3f5650aae69498fce8c3f2b9c9e67e52f676776ea6d8a2f0f153fdeb8857231c 4a5851893c3d71cc823b6ab5df5e58a852cd322fff26290f1ea05b63d67f564a
- R c4c4579c247f6f535883ebc818021ea9
- U drh
- Z 8419a801b2a911e56d3f400232178223
 -P 4a5851893c3d71cc823b6ab5df5e58a852cd322fff26290f1ea05b63d67f564a
 -R 74e2a598b7c2d32d296c9fb5e4ea1cd7
++P 9d068e1ef04e84c025d2f696919dd5d1fe385abacbbd3ea31da58c74ae2812bf 895bd20b29e223496e1585483c6ce3335ae9050f2e5de4d6b69d0e40df396862
++R 0980ec7caa2895676811d42db83a3597
+ U dan
 -Z 79597c4800c4e22dc765415fcd19e860
++Z 0829c39fe4da338cfec0073347e36a2f
diff --cc manifest.uuid
index 09abd66c23e58ebb1d05331357981c55980f97e6,e558f20ced017f41b5cd01eb8ecfbc1fdda315a6..ab43f0deb9a5bc834d9348a2aaccccc9642426de
@@@ -1,1 -1,1 +1,1 @@@
- 9d068e1ef04e84c025d2f696919dd5d1fe385abacbbd3ea31da58c74ae2812bf
 -895bd20b29e223496e1585483c6ce3335ae9050f2e5de4d6b69d0e40df396862
++507f972e91ffdc8d80a6ce594139ea4c7afad38791a08032637340fbf49842bc
diff --cc src/pragma.c
Simple merge
diff --cc src/prepare.c
index 92fbd07317516c63d1182e5370f0f78c7b8ef4da,228d14876e48cc2fb6b1b6f3497c472fb163e2a5..9b0e7f88f750b6dca293531c75953e22bb352034
@@@ -275,8 -207,8 +276,9 @@@ int sqlite3InitOne(sqlite3 *db, int iDb
    initData.pzErrMsg = pzErrMsg;
    initData.mInitFlags = mFlags;
    initData.nInitRow = 0;
 +  initData.cksum = 0;
    sqlite3InitCallback(&initData, 5, (char **)azArg, 0);
+   db->mDbFlags &= mask;
    if( initData.rc ){
      rc = initData.rc;
      goto error_out;
@@@ -500,16 -398,11 +500,15 @@@ void sqlite3UnlockReusableSchema(sqlite
  ** error occurs, write an error message into *pzErrMsg.
  **
  ** After a database is initialized, the DB_SchemaLoaded bit is set
- ** bit is set in the flags field of the Db structure. If the database
- ** file was of zero-length, then the DB_Empty flag is also set.
+ ** bit is set in the flags field of the Db structure. 
  */
  int sqlite3Init(sqlite3 *db, char **pzErrMsg){
 -  int i, rc;
 +  int rc = SQLITE_OK;
 +  int bReleaseSchema;
 +  int i;
    int commit_internal = !(db->mDbFlags&DBFLAG_SchemaChange);
 +
 +  bReleaseSchema = sqlite3LockReusableSchema(db);
    
    assert( sqlite3_mutex_held(db->mutex) );
    assert( sqlite3BtreeHoldsMutex(db->aDb[0].pBt) );
diff --cc src/sqliteInt.h
index 9078f88221b2c0204ea62547bc8d18d642e2badb,c338dabca196b04a0c0c3975fb03a0a5483ddedf..de5a8a9977e3c77f37641bdf7bf9a06dbbf5f238
@@@ -1645,10 -1630,8 +1644,11 @@@ struct sqlite3 
  #define DBFLAG_VacuumInto     0x0008  /* Currently running VACUUM INTO */
  #define DBFLAG_SchemaKnownOk  0x0010  /* Schema is known to be valid */
  #define DBFLAG_InternalFunc   0x0020  /* Allow use of internal functions */
+ #define DBFLAG_EncodingFixed  0x0040  /* No longer possible to change enc. */
  
- #define DBFLAG_SchemaInuse    0x0020  /* Do not release sharable schemas */
- #define DBFLAG_FreeSchema     0x0040  /* Free extra shared schemas on release */
++#define DBFLAG_SchemaInuse    0x0080  /* Do not release sharable schemas */
++#define DBFLAG_FreeSchema     0x0100  /* Free extra shared schemas on release */
 +
  /*
  ** Bits of the sqlite3.dbOptFlags field that are used by the
  ** sqlite3_test_control(SQLITE_TESTCTRL_OPTIMIZATIONS,...) interface to