]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Merge trunk changes into this branch.
authordan <dan@noemail.net>
Sat, 17 Aug 2019 15:47:32 +0000 (15:47 +0000)
committerdan <dan@noemail.net>
Sat, 17 Aug 2019 15:47:32 +0000 (15:47 +0000)
FossilOrigin-Name: db1e60800bc260cdcd604739daaba72c6b486158123fc62a3898aca4ead33cd3

1  2 
manifest
manifest.uuid
src/build.c
src/expr.c
src/select.c
src/sqliteInt.h
src/where.c
src/window.c

diff --cc manifest
index 32086b8fc1405195238decc030176ee430368ef5,428b9dbdb0fbc50900ba3590e41f86300535c6d4..55a84428cc63ee85a660eee7d45309f6736d397e
+++ b/manifest
@@@ -1,5 -1,5 +1,5 @@@
- C Add\ssupport\sfor\susing\sindexes\sfor\ssome\sORDER\sBY\sclauses\sthat\suse\snon-default\sNULL\shandling.\sStill\ssome\sproblems\son\sthis\sbranch.
- D 2019-08-16T21:07:19.697
 -C The\sSQLITE_DIRECTONLY\sflag,\swhen\sadded\sto\ssqlite3_create_function()\sprevents\nthe\sfunction\sfrom\sbeing\sused\sinside\sa\strigger\sor\sview.
 -D 2019-08-17T00:53:29.797
++C Merge\strunk\schanges\sinto\sthis\sbranch.
++D 2019-08-17T15:47:32.932
  F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
  F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
  F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@@ -464,10 -464,10 +464,10 @@@ F src/auth.c a3d5bfdba83d25abed1013a8c7
  F src/backup.c f70077d40c08b7787bfe934e4d1da8030cb0cc57d46b345fba2294b7d1be23ab
  F src/bitvec.c 17ea48eff8ba979f1f5b04cc484c7bb2be632f33
  F src/btmutex.c 8acc2f464ee76324bf13310df5692a262b801808984c1b79defb2503bbafadb6
- F src/btree.c 781e4594098dca97db672e52ed17c7f063b5b65db144c0c1bf1e9818e7be1ad4
+ F src/btree.c 5cf994516c1b74928b9d15971573a8bc8595e1afec129184099976da603402de
  F src/btree.h c11446f07ec0e9dc85af8041cb0855c52f5359c8b2a43e47e02a685282504d89
  F src/btreeInt.h 6111c15868b90669f79081039d19e7ea8674013f907710baa3c814dc3f8bfd3f
- F src/build.c 3584e598dd232b182bb657576a4b7ee0c2bd20afa59ad2fe0c4e65ed74e57b64
 -F src/build.c 7fb6ad35d162517d6bfa196f4fb2a1d7c3a362531e84c59f3a0479e0de511556
++F src/build.c 39f448776a17f202e0d205bda9e2b0bb80853503268ceb36a48ff6d0d963fd7b
  F src/callback.c 25dda5e1c2334a367b94a64077b1d06b2553369f616261ca6783c48bcb6bda73
  F src/complete.c a3634ab1e687055cd002e11b8f43eb75c17da23e
  F src/ctime.c 1b0724e66f95f33b160b1af85caaf9cceb325d22abf39bd24df4f54a73982251
@@@ -475,7 -475,7 +475,7 @@@ F src/date.c e1d8ac7102f3f283e63e13867a
  F src/dbpage.c 135eb3b5e74f9ef74bde5cec2571192c90c86984fa534c88bf4a055076fa19b7
  F src/dbstat.c c12833de69cb655751487d2c5a59607e36be1c58ba1f4bd536609909ad47b319
  F src/delete.c d08c9e01a2664afd12edcfa3a9c6578517e8ff8735f35509582693adbe0edeaf
- F src/expr.c 7cc60cb97c0ddda825cc8bd2de4d3f51f183e894316c74225729ecfa8823aa05
 -F src/expr.c 1b4f5a53a5f48ba3f718413586e0f9715cf90c684fba9038186a62728e2ebe72
++F src/expr.c bef29885d12c1b7ec4353fc07f61f18d044430fc4f9c1476fd5098a5834d17bd
  F src/fault.c 460f3e55994363812d9d60844b2a6de88826e007
  F src/fkey.c 6b79f4c2447691aa9ac86e2a6a774b65f3b3dd053d4220a4893051a0de20f82e
  F src/func.c 4ee36219698d50d672a28eca4adb0fd6b92e607a1883d318315e0d2fd5044467
@@@ -518,17 -518,17 +518,17 @@@ F src/pcache.h 4f87acd914cef5016fae3030
  F src/pcache1.c 62714cbd1b7299a6e6a27a587b66b4fd3a836a84e1181e7f96f5c34a50917848
  F src/pragma.c a42d4c6040893a59b69a0c987e5ed0402730c444ee451fde9bbe6203e7f73b1d
  F src/pragma.h 4a9fabff14db4487a734dfeeb4be984ce662bfdccfae16145b9c732327735e13
- F src/prepare.c 1dcd92a57f63f7ba02ece7997c0cd36647f6ea05c05726f02d7709b18bd368ac
+ F src/prepare.c 132484635a30f873ee7eccd47f93ed1932503863b93b28423b42332d81adffaf
  F src/printf.c 9be6945837c839ba57837b4bc3af349eba630920fa5532aa518816defe42a7d4
  F src/random.c 80f5d666f23feb3e6665a6ce04c7197212a88384
- F src/resolve.c d49679d55d3cf529bbdff8734c4ac02cedfb2fc785545b89815ddb79680b9198
+ F src/resolve.c b2733d39a22f5023ab489b8535ca6854b51ff8667ca975815d004bb7388b0e41
  F src/rowset.c d977b011993aaea002cab3e0bb2ce50cf346000dff94e944d547b989f4b1fe93
- F src/select.c a8f5a4993c4ca59c68c55717f7f41e89cff6084b368f33cfd284dcf78262b9ad
- F src/shell.c.in 66cd8289adbcd159ca67872c242990ca6bed29fe80be7ebf9c6a1c068249a41e
- F src/sqlite.h.in 1fe019ae55182040e6ea10c89ddbb8d24c1b1015c423da53e55205398a65a906
 -F src/select.c 80b8b4c857db2f20d98f80b71ef3bb0d70cdd17bd6b00217dcff803e9b989bd8
++F src/select.c 51840208d63dd6ac3c12d6ff44b04a0d41979a09f9c09793b8fc909efc455ad8
+ F src/shell.c.in d2465e7747a014bd48a75c1bcf648e8e6cb46832dcc6e1293c5f285bc5542e8b
+ F src/sqlite.h.in 5445ee2844c15bf277ebb64e910b56b0e6fb9377f184a81cd9bd78f0946be8c8
  F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8
  F src/sqlite3ext.h 9ecc93b8493bd20c0c07d52e2ac0ed8bab9b549c7f7955b59869597b650dd8b5
- F src/sqliteInt.h f1ee0017108d34ecccd30301415be7861816877e3e9a01088df081fbcfbf908c
 -F src/sqliteInt.h b7d612d9c63abc8a8a7dcf7fbec5326b1770f40c81502c56f508e272154e7615
++F src/sqliteInt.h ed60d41dbb600515abdd5bbfd7f826f0238153d7d70fc3383f5e1179e131b3b8
  F src/sqliteLimit.h 1513bfb7b20378aa0041e7022d04acb73525de35b80b252f1b83fedb4de6a76b
  F src/status.c 46e7aec11f79dad50965a5ca5fa9de009f7d6bde08be2156f1538a0a296d4d0e
  F src/table.c b46ad567748f24a326d9de40e5b9659f96ffff34
@@@ -599,21 -599,21 +599,21 @@@ F src/vdbe.c bc43c994a18290b4022eb3751d
  F src/vdbe.h 3f2b571e702e77e6bf031f0236e554aedfae643e991f69000320f481408455cf
  F src/vdbeInt.h e95de5129124d77f01439e6635012adfaf23c0017bff47296126143cf18bd0c6
  F src/vdbeapi.c 95001d0f84ee3cda344fed98ca0d7961deb4fc836b83495630d0af1f7cc4789e
 -F src/vdbeaux.c 8eeb9799d80bc6b37f2bcb23b3519234b596c530046c2cd0261f9ef1a1ba6c37
 +F src/vdbeaux.c 68fd90976d0550bd9ab9ba03befba1f182aadce8bfca7d4b4eb33a2587c925bd
  F src/vdbeblob.c 253ed82894924c362a7fa3079551d3554cd1cdace39aa833da77d3bc67e7c1b1
  F src/vdbemem.c 920285c3b7f5c64369e02da437dab71e9e91862df9c486541c14633739f91d75
 -F src/vdbesort.c 3531ae3a431ad6b98b67bd891fb42ec9d66867157188a2b1a9e58c55da6151b2
 +F src/vdbesort.c da75f505aba230060ce6472605a4aa6494f73eeb1071e1cc2643c3d4035e671b
  F src/vdbetrace.c fa3bf238002f0bbbdfb66cc8afb0cea284ff9f148d6439bc1f6f2b4c3b7143f0
- F src/vtab.c 1fa256c6ddad7a81e2a4dc080d015d4b0a7135767717d311298e47f6fca64bb3
+ F src/vtab.c 4d833811e3784409627919899e1fd75ee08f0e5db6d9924eac9a0bfe0cb762dc
  F src/vxworks.h d2988f4e5a61a4dfe82c6524dd3d6e4f2ce3cdb9
  F src/wal.c bbd6838bd79c0a32144d482fb0b6a9d2d1a252fb3b16d5005ec30f2f80413b0d
  F src/wal.h 606292549f5a7be50b6227bd685fa76e3a4affad71bb8ac5ce4cb5c79f6a176a
  F src/walker.c d5a94907dcac990e31976be9dc769d17f6a806782593d6aec9d760ee01ec22cd
- F src/where.c c4ec116264555c512edf49ef7244113cad5028bd1ea70f3500982b7c10f9a121
 -F src/where.c 2fac51d2420f05ab6f644f1813d4f73f6214304836fd9b22345738d943faad9b
 -F src/whereInt.h 2082fc2bd1eb66cb236a1a3c4b250e33d2bad9e43a0486a2cf9e4e211c58f3eb
 -F src/wherecode.c cf885ea2d439af9827c5cbab7d4c12be5c079439b7bd12e97151ccfe088c13c0
++F src/where.c 52c433208eafdc7e1750ea4622cfffb5d14d906a0a9258e07bae4b6fee182fef
 +F src/whereInt.h 807766a6a92893dbba8a887e5b13466d2257ce07a84cf1be0aae2c41aee3bf4f
 +F src/wherecode.c 58889def15cb57375a5f4f83db6d2b28b372d87cf1b4f23e47928a4847a94ae4
  F src/whereexpr.c 5cce1fd11876086890a27c05e0cb75ca97ba64ba6984f72154039f1cfd2e69cc
- F src/window.c 4d56fc1e3dbd3a4fa0653b3f48a3ad7066d0da91d0273cff8bab13c3412ddaf5
 -F src/window.c 07e1c15081a735750218185c6b17053c87ecb764d06ab2c0a1ce568a2b4688e5
++F src/window.c 331cdac4992c7402da01c981861f3cc989bf7b4a97dd03eb122993e670f7a588
  F test/8_3_names.test ebbb5cd36741350040fd28b432ceadf495be25b2
  F test/affinity2.test a6d901b436328bd67a79b41bb0ac2663918fe3bd
  F test/affinity3.test 6a101af2fc945ce2912f6fe54dd646018551710d
@@@ -1837,7 -1836,8 +1837,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 07babb0f897fc8c9cb5b30481899c32fdd743f3f3ca508d8d957826252107dd5
- R 39b3bc3a5371ac212f22834b463e006c
 -P 31e34fa3390196cdc3178bf120224b08df5ec58fa2c77079ede6e9461a430dad fc745845d8d76adc165575e2192f4176e3c28e614c72571d56f4011560499fe1
 -R 3eb19b0b7177f98eb83ded0471cbec7c
 -T +closed fc745845d8d76adc165575e2192f4176e3c28e614c72571d56f4011560499fe1
 -U drh
 -Z 353e54297be426c470f9f50229f09a1d
++P 81069d7196857e909c94195d67388f71bc9f832eafd9156d8c5cdddb63513b4a de767376987f7668b0770c4920f1532e341b5a27f797d69c0f5e92b87d036170
++R f0ae3249555e7bff0d2d8fdff62897ad
 +U dan
- Z d691c31e642275ddd26770c7946ed411
++Z 9638aef683da83fd6b6a17e587485fa1
diff --cc manifest.uuid
index ef8a25f596e547f6743d3b16b0731959134bcbc7,d5baa3c05c5760abcadf243798eaa22c9f376d42..7034da3e9fbb44865f28c7de8aa7baf79856573f
@@@ -1,1 -1,1 +1,1 @@@
- 81069d7196857e909c94195d67388f71bc9f832eafd9156d8c5cdddb63513b4a
 -de767376987f7668b0770c4920f1532e341b5a27f797d69c0f5e92b87d036170
++db1e60800bc260cdcd604739daaba72c6b486158123fc62a3898aca4ead33cd3
diff --cc src/build.c
index 71c04299b6fef41cd59420a6d569bdf0b6b5344e,1c8ef33c9cbdcf8162a7e6c05e3b1d5e4f9cc8ac..3f9ab0b975ee5f422aa8976afd02f24a7c134e79
@@@ -3368,7 -3368,7 +3368,7 @@@ void sqlite3CreateIndex
                sqlite3ExprAlloc(db, TK_ID, &prevCol, 0));
      if( pList==0 ) goto exit_create_index;
      assert( pList->nExpr==1 );
-     sqlite3ExprListSetSortOrder(pList, sortOrder, 0);
 -    sqlite3ExprListSetSortOrder(pList, sortOrder);
++    sqlite3ExprListSetSortOrder(pList, sortOrder, SQLITE_SO_UNDEFINED);
    }else{
      sqlite3ExprListCheckLength(pParse, pList, "index");
      if( pParse->nErr ) goto exit_create_index;
diff --cc src/expr.c
Simple merge
diff --cc src/select.c
index db2667e2abb575beb4d20a471e09cc8b3592432d,bd8fee87ed7caaac405f1b73a3aefdf4f4167b54..75541455ab28cb956ff2fd32e53b79fe4edf6980
@@@ -4405,7 -4405,7 +4405,7 @@@ static u8 minMaxQuery(sqlite3 *db, Exp
    ExprList *pEList = pFunc->x.pList;    /* Arguments to agg function */
    const char *zFunc;                    /* Name of aggregate function pFunc */
    ExprList *pOrderBy;
--  u8 sortOrder;
++  u8 sortFlags;
  
    assert( *ppMinMax==0 );
    assert( pFunc->op==TK_AGG_FUNCTION );
    zFunc = pFunc->u.zToken;
    if( sqlite3StrICmp(zFunc, "min")==0 ){
      eRet = WHERE_ORDERBY_MIN;
--    sortOrder = SQLITE_SO_ASC;
++    sortFlags = KEYINFO_ORDER_BIGNULL;
    }else if( sqlite3StrICmp(zFunc, "max")==0 ){
      eRet = WHERE_ORDERBY_MAX;
--    sortOrder = SQLITE_SO_DESC;
++    sortFlags = KEYINFO_ORDER_DESC;
    }else{
      return eRet;
    }
    *ppMinMax = pOrderBy = sqlite3ExprListDup(db, pEList, 0);
    assert( pOrderBy!=0 || db->mallocFailed );
-   if( pOrderBy ) pOrderBy->a[0].sortFlags = sortOrder;
 -  if( pOrderBy ) pOrderBy->a[0].sortOrder = sortOrder;
++  if( pOrderBy ) pOrderBy->a[0].sortFlags = sortFlags;
    return eRet;
  }
  
diff --cc src/sqliteInt.h
Simple merge
diff --cc src/where.c
Simple merge
diff --cc src/window.c
Simple merge