]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
For FROM-clause subqueries that cannot be flattened, try to push relevant
authordrh <drh@noemail.net>
Tue, 2 Jun 2015 18:09:18 +0000 (18:09 +0000)
committerdrh <drh@noemail.net>
Tue, 2 Jun 2015 18:09:18 +0000 (18:09 +0000)
WHERE clause terms of the outer query down into the subquery in order to help
the subquery run faster and/or use less memory.

FossilOrigin-Name: 6df18e949d3676290785143993513ea1b917d729

1  2 
manifest
manifest.uuid
src/select.c

diff --cc manifest
index 75d59c2580011d0379542d1f6c1583dca8d370b2,ca7b8564e1c3770f96240fdec1ed23532c1b84f8..eb6aa8009cc3b5593295ed2694db1835613a4bc2
+++ b/manifest
@@@ -1,5 -1,5 +1,5 @@@
- C Add\stest\scases\sfor\stype\saffinity\srules.
- D 2015-06-02T17:25:05.494
 -C For\sFROM-clause\ssubqueries\sthat\scannot\sbe\sflattened,\stry\sto\spush\sWHERE\sclause\nterms\sof\sthe\souter\squery\sdown\sinto\sthe\ssubquery\sin\sorder\sto\shelp\sthe\ssubquery\nrun\sfaster\sand/or\suse\sless\smemory.
 -D 2015-06-01T20:28:03.248
++C For\sFROM-clause\ssubqueries\sthat\scannot\sbe\sflattened,\stry\sto\spush\srelevant\nWHERE\sclause\sterms\sof\sthe\souter\squery\sdown\sinto\sthe\ssubquery\sin\sorder\sto\shelp\nthe\ssubquery\srun\sfaster\sand/or\suse\sless\smemory.
++D 2015-06-02T18:09:18.284
  F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
  F Makefile.in 994bab32a3a69e0c35bd148b65cde49879772964
  F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@@ -250,7 -250,7 +250,7 @@@ F src/printf.c 13ce37e5574f9b0682fa86db
  F src/random.c ba2679f80ec82c4190062d756f22d0c358180696
  F src/resolve.c 84c571794e3ee5806274d95158a4c0177c6c4708
  F src/rowset.c eccf6af6d620aaa4579bd3b72c1b6395d9e9fa1e
- F src/select.c 7bb5c6334128877a30d4644fb948098a3ec41bbc
 -F src/select.c 7acdb105dccfa226ea30f3c08a847d448e216240
++F src/select.c 498342ba48543a13804a49f9620c6eba419a1159
  F src/shell.c 07dda7cd692911d2f22269953418d049f2e2c0ee
  F src/sqlite.h.in d165beeceb6b40af60f352a4d4e37e02d9af7df0
  F src/sqlite3.rc 992c9f5fb8285ae285d6be28240a7e8d3a7f2bad
@@@ -1282,7 -1281,10 +1282,8 @@@ F tool/vdbe_profile.tcl 67746953071a9f8
  F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
  F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32
  F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
- P 29ad9e917330969810ac1bc685bba4282401bdae
- R 5097b9f5eaad8b186d53b7faa7ec8244
 -P f925389eaf5bf8962a28fcaa652b75caa606efba
 -R 033219587dbe88756604bf887ec3da43
 -T *branch * subquery-opt
 -T *sym-subquery-opt *
 -T -sym-trunk *
++P 9678646d9a14ba283a83839be329599a676a537a 297fae7551a2af9e600d833801ff79fca0602ad5
++R 4cb9a66e53feaa59f815d8d8fff07191
++T +closed 297fae7551a2af9e600d833801ff79fca0602ad5
  U drh
- Z 413a5118f0977cbaebf568697e060ab8
 -Z 48ce2765ca9875a4f4c27e6792269bfa
++Z 655d5f5f5a9ad84ec56fa650e3297ec0
diff --cc manifest.uuid
index eec092373c88a76eaa138fc3606667e299bc8dcf,d83252b194bad63f9a82ca81ed95ac416f19133e..800c657dd82d0e81f2e6149a317c0217c9d0374f
@@@ -1,1 -1,1 +1,1 @@@
- 9678646d9a14ba283a83839be329599a676a537a
 -297fae7551a2af9e600d833801ff79fca0602ad5
++6df18e949d3676290785143993513ea1b917d729
diff --cc src/select.c
Simple merge