shane
3514b6f759
flattenSubquery() needed if either SQLITE_OMIT_SUBQUERY or SQLITE_OMIT_VIEW not defined. (CVS 5445)
...
FossilOrigin-Name: 1ffe7a995733fe91534a3ed81d2640fd7e6ebaa6
2008-07-22 05:00:55 +00:00
drh
edaedab238
Update column naming rules. Ticket #3221 . Rules for column naming
...
are still subject to change (except for the AS rule which we promise to
keep the same) but are more consistent now. And the rules are tested
using a new test script. (CVS 5416)
FossilOrigin-Name: 61f6e19755b85bcb065f85fc425c2172badea308
2008-07-15 20:56:17 +00:00
drh
85e9e22b33
Increased test coverage. (CVS 5414)
...
FossilOrigin-Name: 7cf91e08c08ce515c24c738c7d079f5b81eebee6
2008-07-15 00:27:34 +00:00
drh
a34605859d
Detect and handles the case where a row is modified or deleted while it
...
is being read during SELECT processing. (CVS 5399)
FossilOrigin-Name: c80a5d09935c60a2a50bc262c172a94073355f0d
2008-07-11 21:02:53 +00:00
danielk1977
80b3c54851
Fix a crash in flattenSubquery(). (CVS 5388)
...
FossilOrigin-Name: 9c8b97ef593c17740640a01a7338164d7fbe070e
2008-07-10 17:59:12 +00:00
drh
93a960a0a8
Remove unused code. Test coverage enhancements. Modify the algorithm used
...
to select column names for VIEWs of joins so that the constructed column
names omits the underlying table names. (CVS 5386)
FossilOrigin-Name: 636cd723296a8b1709011fdd99b236ffddf3f1b0
2008-07-10 00:32:42 +00:00
drh
e49b146f30
Additional test coverage in select.c and expr.c. (CVS 5381)
...
FossilOrigin-Name: c6cf08477cc4d622a05ad6706cb9418cf7eea432
2008-07-09 01:39:44 +00:00
drh
a9671a22b3
Remove obsolete code from select.c, including the "affinity" parameter
...
to the sqlite3Select() module. (CVS 5380)
FossilOrigin-Name: cbd3c1585b7a8f8042aa1448fe1be87de056c41a
2008-07-08 23:40:20 +00:00
drh
f089aa459e
Completely rework the sqlite3SetString() primitive so that it honors the
...
SQLITE_LIMIT_LENGTH and avoids the use of strlen(). (CVS 5374)
FossilOrigin-Name: 8ed04b1e26a55306e4baf3e93fb084514134d603
2008-07-08 19:34:06 +00:00
drh
0880a74633
Improved testing of the min/max optimization. (CVS 5373)
...
FossilOrigin-Name: fa07c360b708324c47c8e9931f1e2b1b24e4faf8
2008-07-08 18:05:26 +00:00
danielk1977
49fc1f60b0
Prevent the flattening optimization from transforming a to a query with an illegal ORDER BY clause. (CVS 5372)
...
FossilOrigin-Name: 6c2adade34fdbe344cf73f6bac951e0c37dd003b
2008-07-08 17:43:56 +00:00
danielk1977
1f9caa41a0
Fix a memory leak that can occur following a malloc failure. (CVS 5339)
...
FossilOrigin-Name: cec4eba1a105396c5fd5d2b664456f6d6be3f215
2008-07-02 16:10:45 +00:00
danielk1977
524cc21ed6
Call the authorizer callback the same number of times whether or not the query flattening occurs. (CVS 5338)
...
FossilOrigin-Name: 8b88b64bb37df4e38cbfe31a14c219688b26e2af
2008-07-02 13:13:51 +00:00
danielk1977
4914cf92e3
Fix errors in in.test. Also add a few tests to selectB.test. (CVS 5337)
...
FossilOrigin-Name: 8f9d1abb315a3d4aa3a580fd5cf3ae572cc330f4
2008-07-01 18:26:49 +00:00
danielk1977
5e7ad50858
Fix another memory leak related to UNION ALL and sub-selects. (CVS 5336)
...
FossilOrigin-Name: 56109b9a1f600ab3f16769aba0d47dcf782bbc95
2008-07-01 17:39:27 +00:00
danielk1977
eca7e01a71
Fix a memory leak to do with the recent UNION ALL sub-select optimization. (CVS 5333)
...
FossilOrigin-Name: 6ee71f4ddb4fa934f58c87dad2d30560af2e55d7
2008-07-01 16:05:25 +00:00
danielk1977
4b86ef1d87
Fix a problem with LIMIT and OFFSET clauses on the parent query when optimizing a UNION ALL sub-select. (CVS 5332)
...
FossilOrigin-Name: a79786a961dba8f4ffaddbe55e6467c14b12f7d6
2008-07-01 14:39:35 +00:00
danielk1977
f23329a221
Optimize sub-selects and views that use UNION ALL. This optimization isn't very well tested yet. (CVS 5331)
...
FossilOrigin-Name: 3ef468e7046b2091b5b6880fe19261ef1ee2887b
2008-07-01 14:09:13 +00:00
danielk1977
daf79acb68
Call the query flattener while processing the parent query. Previously, it was called while processing the sub-queries. (CVS 5330)
...
FossilOrigin-Name: 6fcb3bffe26ae1c21c72ce9019f1db1c118094a4
2008-06-30 18:12:28 +00:00
drh
6fccc35a91
Remove unused variable. Fix a compiler warning. (CVS 5319)
...
FossilOrigin-Name: 0b01ec5cf7725a02d4c12167df125cef578f6219
2008-06-27 00:52:45 +00:00
drh
66ba23ce86
Tweaks to the IN expression code generator. Fix an an unrelated bug
...
in the compound SELECT code generator. (CVS 5318)
FossilOrigin-Name: a4005782690f022e982df4873779a029b28b9306
2008-06-27 00:47:28 +00:00
danielk1977
0cdc022e88
Fix handling of "x IN (...)" and "x NOT IN (...)" expressions when the set contains an SQL NULL value. (CVS 5314)
...
FossilOrigin-Name: d45a97be71fa61ab4a692bd807ab762130f7f5b9
2008-06-26 18:04:03 +00:00
drh
0acb7e4849
The compound-select merge optimization passes quick.test with no errors. (CVS 5299)
...
FossilOrigin-Name: 8bbfa97837a74ef0514e0c92ea2a6576f02cc361
2008-06-25 00:12:41 +00:00
drh
f6e369a119
Fix a problem in sqlite3ExprIsInteger() causing failures on select1-4.9.2.
...
Other bug fixes in compound-merge. The compound-merge is still disabled
in this check-in using "#if 0" due to additional bugs. (CVS 5295)
FossilOrigin-Name: 95037e6dbf4ed0ffd38790f3270dcaa4c1ae64ed
2008-06-24 12:46:30 +00:00
drh
92b01d53c2
The compound-select merge optimization is mostly working with this check-in.
...
But there are still a few problems and so the optimization is disabled by
and "#if 0". This check-in is to synchronize with the other changes happening
in parallel. (CVS 5291)
FossilOrigin-Name: e2ba324cbcac0ba35bbde50048677e085abb092b
2008-06-24 00:32:35 +00:00
drh
b21e7c70f7
Fix a bug in the KEYINFO handling within select.c. Change the OP_Move
...
opcode to take a count and to move multiple registers. Initial code for
the compound-select merge optimization is added but is incomplete
and is commented out. (CVS 5272)
FossilOrigin-Name: 663a590e3086145a57af7569d8f798b6b6a8b76c
2008-06-22 12:37:57 +00:00
drh
16ee60fff9
Add new Compare and Jump codes to the virtual machine. Use them in the
...
implementation of aggregate queries. (CVS 5257)
FossilOrigin-Name: 083113652ff8f69b18cf1611710fdbbe5fbd9fef
2008-06-20 18:13:25 +00:00
drh
e00ee6eb37
Change the SRT_Subroutine mode into SRT_Coroutine. Use co-routines in
...
the INSERT processing logic. (CVS 5255)
FossilOrigin-Name: 6b9d92fc3f265ef75c9182e537812490bb818950
2008-06-20 15:24:01 +00:00
drh
2eb95377ef
Remove the subroutine return stack from the VDBE. Return addresses
...
for subroutines are now stored in registers. (CVS 5191)
FossilOrigin-Name: ef1956eebcaf5aca51af8c3b406b1fd4b1f391a7
2008-06-06 15:04:36 +00:00
drh
e265b08458
Fix harmless compiler warnings. (CVS 5073)
...
FossilOrigin-Name: 227a6f67c21c87a7cf98f84b9d57a6dc9da93ebb
2008-05-01 17:03:49 +00:00
drh
dafc0ce818
Additional work on ticket #3015 . The previous fix (check-in (4919)) did
...
not appear to work in all cases and it disabled indexing in some places
where it should not have. New test cases added to help insure that the
current fix is better. (CVS 5026)
FossilOrigin-Name: 0d2e258e1a3276e55903ba2ded987f8d8a18cacd
2008-04-17 19:14:02 +00:00
drh
191b54cb5d
Fix a code generator bug caused by the new CSE optimization. Add test cases
...
to prevent a recurrence. (CVS 5011)
FossilOrigin-Name: d04246a46399e839e70b1bd57e209f80143f0d5b
2008-04-15 12:14:21 +00:00
drh
08c88eb0d3
First cut at optimizing single-row updates to use a one-pass algorithm. (CVS 4973)
...
FossilOrigin-Name: fba97f7874d723111e873d1470fc1a95e64f922d
2008-04-10 13:33:18 +00:00
drh
da250ea599
Fix the CSE mechanism so that it takes into account column affinity
...
changes that might be imposed by comparison operators. (CVS 4949)
FossilOrigin-Name: 91cc646e2b0c1d62a1989405cc9384a2c22d98d0
2008-04-01 05:07:14 +00:00
drh
e55cbd7228
Avoid duplicate OP_Column opcodes by remembering prior results.
...
This is similar to CSE, but only applies to columns. (CVS 4943)
FossilOrigin-Name: c29ee0fed23dcdbd9dde6b1e42b603100ea2389c
2008-03-31 23:48:03 +00:00
danielk1977
a686bfcfa5
In setQuotedToken(), only make a malloced copy if the argument contains one or more " characters. (CVS 4941)
...
FossilOrigin-Name: b266924b8975b69bdb9ab45cf462e41436f89cc2
2008-03-31 17:41:18 +00:00
danielk1977
9882d99993
Allow creation of ephemeral pseudo-tables - pseudo-tables that copy a pointer to a row when inserted instead of copying the row data. (CVS 4924)
...
FossilOrigin-Name: 1a58a87023f7780aee813ac64dda1a80021002a7
2008-03-27 17:59:01 +00:00
drh
995ae279b3
Comment change on the previous check-in. No changes to code. (CVS 4918)
...
FossilOrigin-Name: 72ae456239eb9f75b744f6733c4441b380bd1be1
2008-03-26 12:50:14 +00:00
drh
ad27e76110
Make sure an imbalance in the number of columns on a compound SELECT is
...
detected and reported as an error before it can cause an assertion fault
or array-bounds overflow in the code generator.
Oops: part of the fix for ticket #3015 got included with this
check-in by mistake. (CVS 4917)
FossilOrigin-Name: 50de87dc808820a70d3a99277f532e418a2f97e2
2008-03-26 12:46:23 +00:00
drh
e14006d0de
Modify the {quote: IdxDelete} opcode so that it takes an array of registers rather
...
than a record formed using {quote: MakeRecord.} This avoids a needless packing
and unpacking of the record to be deleted. (CVS 4916)
FossilOrigin-Name: ee381b43563e1b0637ee74389d076dff77deddf9
2008-03-25 17:23:32 +00:00
danielk1977
cd3e8f7ce9
Use a vdbe memory cell to allocate the space required for vdbe cursors. (CVS 4912)
...
FossilOrigin-Name: 047153648155654b0cd70b811935209d2e21776c
2008-03-25 09:47:35 +00:00
drh
3f913576e5
Add the SQLITE_OMIT_DECLTYPE compile-time option. Remove more code when
...
SQLITE_ENABLE_COLUMN_METADATA is not defined. (CVS 4906)
FossilOrigin-Name: 8ef26646cff9be75c584a9abfcfffcfdb49b3969
2008-03-22 01:07:17 +00:00
drh
bb4957f858
Initial implementation of per-connection limits and the sqlite3_limit() API.
...
The sqllimits1.test script crashes. SQLITE_LIMIT_PAGE_COUNT and
SQLITE_LIMIT_VDBE_OP are currently ignored. (CVS 4897)
FossilOrigin-Name: 60c77882b2de9f6a45f8bd87c9c6a0cc613f8373
2008-03-20 14:03:29 +00:00
mlcreech
3a00f907a9
Various renames & cleanups to limit exported symbols on amalgamation build (CVS 4819)
...
FossilOrigin-Name: 9c6694bb61a8ecdbfb2d05e5e05a8cc97b792240
2008-03-04 17:45:01 +00:00
drh
c52e355de1
Do not apply the query flattening optimization when the outer query is an
...
aggregate and the inner query contains an ORDER BY clause. Ticket #2943 . (CVS 4791)
FossilOrigin-Name: 6d33cbd99cb0db680767ceb31ec6345e90a805bc
2008-02-15 14:33:03 +00:00
danielk1977
a7a8e14bf2
Where possible, avoid freeing buffers allocated for vdbe memory cells in case they can be reused. (CVS 4783)
...
FossilOrigin-Name: 990237e27e417aff3dbf05784b716c21f3761a3a
2008-02-13 18:25:27 +00:00
drh
1ece7325bb
Do not release registers used to hold the results of a compound select
...
after just the first select has run. Ticket #2927 . For now, we will
never release the registers used to hold the result set, since the same
register set will be used for each select. This is not an unacceptable
register leak and it is the safest approach. (CVS 4778)
FossilOrigin-Name: e9fcb793998be07eaea01404407087b71c29853d
2008-02-06 23:52:36 +00:00
drh
ca4241140c
Error messages says "no such view" instead of "no such table" when
...
trying to DROP a VIEW that does not exist. (CVS 4750)
FossilOrigin-Name: 50815a82e0ec9a5c1399f5fe6ef416434b55a821
2008-01-25 15:04:48 +00:00
danielk1977
cdf3020ca3
Fix a segfault that may follow a malloc failure during compilation of an INSTEAD OF trigger. (CVS 4749)
...
FossilOrigin-Name: c6635a71dbb2a06d56a0cfce7f0383325e12dc01
2008-01-24 14:27:44 +00:00
danielk1977
ac559264e3
Fix another segfault that can occur following a malloc failure in the SQL compiler. (CVS 4748)
...
FossilOrigin-Name: 9d98a3f0dded4ee7ed53872f48ee8592ff077f92
2008-01-23 17:13:40 +00:00