]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Merge the BTREE_FORDELETE enhancement with this branch.
authordan <dan@noemail.net>
Mon, 26 Oct 2015 20:11:24 +0000 (20:11 +0000)
committerdan <dan@noemail.net>
Mon, 26 Oct 2015 20:11:24 +0000 (20:11 +0000)
FossilOrigin-Name: 20da0849ce910ceb445954dfc5f985acf9a02695

1  2 
manifest
manifest.uuid
src/btree.c
src/btree.h
src/sqliteInt.h
src/vdbe.c
src/where.c

diff --cc manifest
index a66f2b7f813a092df6c04b1810b504262f1a805e,173858da0a0aa787549128188d1037e1a96fb6e1..289ffeb94106719f596f5116c99602ea528a0110
+++ b/manifest
@@@ -1,5 -1,5 +1,5 @@@
- C Merge\sin\sall\strunk\schanges\sprior\sto\sthe\sBTREE_FORDELETE\senhancement.
- D 2015-10-26T18:51:09.614
 -C Capture\sBTREE_FORDELETE\stest\scases\sthat\swere\smistakenly\somitted\sfrom\sthe\nprevious\smerge.
 -D 2015-10-26T18:01:36.030
++C Merge\sthe\sBTREE_FORDELETE\senhancement\swith\sthis\sbranch.
++D 2015-10-26T20:11:24.886
  F Makefile.in 2ea961bc09e441874eb3d1bf7398e04feb24f3ee
  F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
  F Makefile.msc 702d3e98f3afc6587a78481257f3c4c900efc3a4
@@@ -280,8 -280,8 +280,8 @@@ F src/auth.c b56c78ebe40a2110fd361379f7
  F src/backup.c c3a9c4209439b806c44cf30daf466955727bf46c
  F src/bitvec.c d1f21d7d91690747881f03940584f4cc548c9d3d
  F src/btmutex.c 45a968cc85afed9b5e6cf55bf1f42f8d18107f79
- F src/btree.c 6e7cafdb9f245e0670c3478136a3c0c39ff5cf7b
- F src/btree.h 9cc758f0f1e0002049d9eb0232f9783f21f25ac5
 -F src/btree.c 9d684e19f84633323de7a767da2e2b8cf51fa600
 -F src/btree.h cf936d962b3f4179948d53ea58f3580de9b2ed0c
++F src/btree.c 8022201b3008c9ff151cf56cf2c36a0db93689fd
++F src/btree.h 1957827f808875473750026cf60ca0c2b3676c98
  F src/btreeInt.h 8177c9ab90d772d6d2c6c517e05bed774b7c92c0
  F src/build.c d6162335d690396dfc5c4bd59e8b2b0c14ba6285
  F src/callback.c 7b44ce59674338ad48b0e84e7b72f935ea4f68b0
@@@ -289,8 -289,8 +289,8 @@@ F src/complete.c addcd8160b081131005d5b
  F src/ctime.c 509ef9c64d1321f42448f111da86400b1799218a
  F src/date.c fb1c99172017dcc8e237339132c91a21a0788584
  F src/dbstat.c e637e7a7ff40ef32132a418c6fdf1cfb63aa27c7
- F src/delete.c 35c939eb8bacc9dd8a6715964e5f69feb8c20e44
+ F src/delete.c c4c6fb9da78b946fcba2a6aac5b24bc5c15e752a
 -F src/expr.c d9896fda47a8f67d0ed203e1fa981444424200c6
 +F src/expr.c ea3e0c2981ffc7bd358714fa6d5132cb2cd5fc3a
  F src/fault.c 160a0c015b6c2629d3899ed2daf63d75754a32bb
  F src/fkey.c 31900763094a3736a5fc887469202eb579fef2d0
  F src/func.c ecdd69ec6a1e406f04cc73324be2ebbf6354197f
@@@ -343,7 -343,7 +343,7 @@@ F src/shell.c d25df04168d6ba5a4fa05bdbf
  F src/sqlite.h.in 839c818e16ea68703d90d17bd2bb3607191debce
  F src/sqlite3.rc 992c9f5fb8285ae285d6be28240a7e8d3a7f2bad
  F src/sqlite3ext.h 4b66e3e3435da4b4c8c83696d0349f0c503b3924
- F src/sqliteInt.h af76837cad8fb696e6527ec2745f175de7cb9093
 -F src/sqliteInt.h 835fce874a55144491d441f22c21a954bd17a1f3
++F src/sqliteInt.h b1e72ffe282c91ae30a2bf403319126dbaebd556
  F src/sqliteLimit.h 216557999cb45f2e3578ed53ebefe228d779cb46
  F src/status.c 70912d7be68e9e2dbc4010c93d344af61d4c59ba
  F src/table.c 51b46b2a62d1b3a959633d593b89bab5e2c9155e
@@@ -401,11 -401,11 +401,11 @@@ F src/update.c 40e51cd0883cb5bfd6abb7d8
  F src/utf.c fc6b889ba0779b7722634cdeaa25f1930d93820c
  F src/util.c fc612367108b74573c5fd13a85d0a23027f438bd
  F src/vacuum.c 2ddd5cad2a7b9cef7f9e431b8c7771634c6b1701
- F src/vdbe.c 10d66354fec90acb5fc908ad36da404ef9796170
 -F src/vdbe.c 3f22833a67dbee98f5b8d7acac0f5097ecc4dcb5
 -F src/vdbe.h 4bc88bd0e06f8046ee6ab7487c0015e85ad949ad
 -F src/vdbeInt.h 777dd76d513347acb1a71d94df2be00516add637
++F src/vdbe.c 1cdfa13e37dba217916112fffc639dee83406192
 +F src/vdbe.h efb7a8c1459e31f3ea4377824c6a7e4cb5068637
 +F src/vdbeInt.h 33403622c6a8feaaac5f0f3f17f5d1bf6df42286
  F src/vdbeapi.c 020681b943e77766b32ae1cddf86d7831b7374ca
 -F src/vdbeaux.c 906bc74ea90707b57a23e4264727fff7b48d0cb5
 +F src/vdbeaux.c 717bc2ae9cc0b58ef398fff44bd9164bfd96772a
  F src/vdbeblob.c 565fabd302f5fca3bdf3d56cac330483616a39b6
  F src/vdbemem.c fdd1578e47bea61390d472de53c565781d81e045
  F src/vdbesort.c 8b23930a1289526f6d2a3a9f2e965bcc963e4a68
@@@ -415,9 -415,9 +415,9 @@@ F src/vxworks.h c18586c8edc1bddbc15c004
  F src/wal.c 18b0ed49830cf04fe2d68224b41838a73ac6cd24
  F src/wal.h df01efe09c5cb8c8e391ff1715cca294f89668a4
  F src/walker.c 2e14d17f592d176b6dc879c33fbdec4fbccaa2ba
- F src/where.c 51cca249502ee71fb77b425687dac611277925b2
 -F src/where.c 0a3badc48bb89b1d80ead96081e4a9aa85e65e95
++F src/where.c 6aceb72cc58dc06922a9e1604d559c8ca4c3e728
  F src/whereInt.h 7892bb54cf9ca0ae5c7e6094491b94c9286dc647
 -F src/wherecode.c b924b78acd9e623fb69bfa2cb65cd7d542166dd3
 +F src/wherecode.c 9aa2043685ec3eb73e87fa6f50aa4ec092f197dd
  F src/whereexpr.c e63244ca06c503e5f3c5b7f3c9aea0db826089ed
  F test/8_3_names.test ebbb5cd36741350040fd28b432ceadf495be25b2
  F test/affinity2.test a6d901b436328bd67a79b41bb0ac2663918fe3bd
@@@ -1392,7 -1392,8 +1393,7 @@@ F tool/vdbe_profile.tcl 246d0da094856d7
  F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
  F tool/warnings.sh 48bd54594752d5be3337f12c72f28d2080cb630b
  F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
- P 26fa091d68e89a0b6af61ba706d23a9f37e8025a 138783b553602a055b3efdeac5947cf5ccd76b5d
- R 4b723e99df9abf57da690efface1cef0
 -P 871b1c78bcbea1cb03d482f2f424c4e012633695 7849662ef94fa48fe53177db5623f46b3cb401e8
 -R 410be704ee6d7da9328468f968a33ccc
 -T +closed 7849662ef94fa48fe53177db5623f46b3cb401e8
--U drh
- Z 936e93924f01554045ee6552abb7ef82
 -Z 490c42bd7c47e077e17c4d7082be3a75
++P 53d5a4add6b60722ad77daf98b6b8983b081e16a de6972515f65c5cf5da7cfdf876a05718299e9b8
++R eb548650b5c16f458e4886ea4649dc57
++U dan
++Z 682420f21bcc754cb8ec9b887c5ab3d8
diff --cc manifest.uuid
index 13182502f3345d5de2fe5427073da8c1ec069e8a,e61d0eb32af9d217ac86eb2ba0c669d5cdfbcb4c..02251806a88eb5a4a7a66f44637fa55e1c0d2afd
@@@ -1,1 -1,1 +1,1 @@@
- 53d5a4add6b60722ad77daf98b6b8983b081e16a
 -de6972515f65c5cf5da7cfdf876a05718299e9b8
++20da0849ce910ceb445954dfc5f985acf9a02695
diff --cc src/btree.c
Simple merge
diff --cc src/btree.h
Simple merge
diff --cc src/sqliteInt.h
Simple merge
diff --cc src/vdbe.c
Simple merge
diff --cc src/where.c
index 365a376aa0626f839cb1d86e5ff4da39cc279bbc,96c8a2f3e89675ff12fae3cc84f2d3fcf9690671..1c87706ea2df4a087863621b7f66d8b1bcfcf920
@@@ -4314,9 -4319,6 +4318,14 @@@ WhereInfo *sqlite3WhereBegin
                              SQLITE_INT_TO_PTR(n), P4_INT32);
          assert( n<=pTab->nCol );
        }
-       if( pLoop->u.btree.pIndex!=0 ) sqlite3VdbeChangeP5(v, OPFLAG_SEEKEQ);
 +#ifdef SQLITE_ENABLE_CURSOR_HINTS
++      if( pLoop->u.btree.pIndex!=0 ){
++        sqlite3VdbeChangeP5(v, OPFLAG_SEEKEQ|bFordelete);
++      }else
 +#endif
++      {
++        sqlite3VdbeChangeP5(v, bFordelete);
++      }
  #ifdef SQLITE_ENABLE_COLUMN_USED_MASK
        sqlite3VdbeAddOp4Dup8(v, OP_ColumnsUsed, pTabItem->iCursor, 0, 0,
                              (const u8*)&pTabItem->colUsed, P4_INT64);