dan
1bea559a94
Ensure foreign key related processing takes place when rows are deleted from the database by REPLACE conflict handling.
...
FossilOrigin-Name: 3f40c142c8526c1572020bd4d945c03a72019135
2009-09-24 11:31:21 +00:00
dan
94d7f50a0f
Remove unused parameter from sqlite3CodeRowTrigger(). Fix header comments for this function and CodeRowTriggerDirect().
...
FossilOrigin-Name: 0443f7c9112ca91aa45c78a3d6287e5fcf5c3b73
2009-09-24 09:05:49 +00:00
drh
ff738bce0d
Make sure a transaction is available for rollback whenever a REDUCE conflict
...
resolution occurs and there is the possibility to ABORT.
Ticket [4a03edc4c8c]
FossilOrigin-Name: f0c56fa90dc95aff6fe6764b5ab75a90199247b0
2009-09-24 00:09:58 +00:00
dan
75cbd984f7
Fix compilation with OMIT_TRIGGER defined. Ticket [1ff6d29030e9757d052af0f394e56bea96b8b59b|1ff6d29030].
...
FossilOrigin-Name: fb6ceed388f6d75bdc2ac2f43e5c98da74e2a448
2009-09-21 16:06:03 +00:00
dan
1da40a381f
Check in implementation of foreign key constraints.
...
FossilOrigin-Name: d5d399811876391642937edeb9e8434dd9e356f5
2009-09-19 17:00:31 +00:00
dan
e0af83aca6
Combine the OP_Statement and OP_Transaction opcodes.
...
FossilOrigin-Name: aec9dbd8d21c55c3945287a3dfa55d3ed168f977
2009-09-08 19:15:01 +00:00
dan
2283d46cd6
If recursive-triggers are enabled, fire DELETE triggers if database rows are removed as a result of OR REPLACE conflict resolution.
...
FossilOrigin-Name: 85cb0c94a63eda5f059ebe40887c7af9b4869893
2009-09-08 15:55:15 +00:00
drh
345ba7db59
Additional simplifications in support of structural testing.
...
FossilOrigin-Name: 4ab8c841f818326b0b04b95e3edd828c77f109d9
2009-09-08 13:40:16 +00:00
dan
65a7cd1631
More fixes and comment updates.
...
FossilOrigin-Name: 38a9327bad1a01e3d7a47fad44ece2f6c7e88643
2009-09-01 12:16:01 +00:00
dan
2832ad4221
More fixes for test cases.
...
FossilOrigin-Name: 85d9f23be1e8673dbda42e43b9b23332ada9225f
2009-08-31 15:27:27 +00:00
dan
76d462ee78
Fixes for new triggers scheme.
...
FossilOrigin-Name: 9eb91efda5241609ff18ff15ef5eaa0e86788eab
2009-08-30 11:42:51 +00:00
dan
165921a742
Changes to support recursive triggers.
...
FossilOrigin-Name: 9b9c19211593d5ff7b39254a29c284560a8bcedb
2009-08-28 18:53:45 +00:00
dan
69f8bb9c72
If a binary operator in a WHERE clause that should be performed with no affinity conversions applied to its operands (see http://www.sqlite.org/datatype3.html ) is optimized by index lookup, do not apply any conversions to the key value before looking it up in the index. Fix for 93fb9f89d6.
...
FossilOrigin-Name: e72186f2d68d28c2e0c32894f9adb28c155b5f63
2009-08-13 19:21:16 +00:00
danielk1977
595a523a10
Allow virtual tables to be used in shared-cache mode. (CVS 6928)
...
FossilOrigin-Name: 5d9e767a05e381235e064061043e30cc03a11a07
2009-07-24 17:58:53 +00:00
drh
0b9f50d8aa
Enhance autoincrement so that it works with triggers that also do
...
autoincrement inserts, even multiple inserts into the same table.
Ticket #3928 (CVS 6807)
FossilOrigin-Name: 1330993de8eae7baeec24100216158063c9bdc19
2009-06-23 20:28:53 +00:00
drh
20411ea700
Enhance the sqlite3VdbeGetOp() routine so that it always returns a pointer
...
to VdbeOp, even following an OOM fault. This simplifies error handling in
callers. Cleanup to the column cache logic and the expr.c source module. (CVS 6691)
FossilOrigin-Name: ede06dacdf7acab23cd9666a0a0d092a637bcb78
2009-05-29 19:00:12 +00:00
danielk1977
de630353d8
Speed up INSERT operations that add data to UNIQUE or PRIMARY KEY indexes by rationalizing duplicate seek operations. (CVS 6599)
...
FossilOrigin-Name: cac4f3d812f0a02ca5c1fa78d366f694403929a8
2009-05-04 11:42:29 +00:00
drh
1b7ecbb4ce
More changes to insert.c to facilitate full coverage testing. (CVS 6596)
...
FossilOrigin-Name: 46c4ec968bc22843c65744ab4a01ec7ac605567b
2009-05-03 01:00:59 +00:00
drh
098d1684d7
Simplifications to the uniqueness constraint failure error message
...
generation code. (CVS 6595)
FossilOrigin-Name: 8f3cac7682a0c992f95f7453aaf9a29b1fe35d6f
2009-05-02 15:46:46 +00:00
drh
3f6e781d6a
When checking indices for xfer compatibility, compare collating sequences
...
by string, not by pointer. (CVS 6590)
FossilOrigin-Name: 7d2b80c7addc2d03d49647da9c6df9113f01349d
2009-05-02 00:28:19 +00:00
drh
d51397a614
Fix an error message that is generated if the number of columns do not
...
match on an INSERT into a virtual table with hidden columns. (CVS 6588)
FossilOrigin-Name: 795b453c9a03c32d9d4cdf62823d2b9dd667cc44
2009-05-01 15:17:48 +00:00
drh
7fe45908cc
Fix processing of BEFORE triggers on INSERT statements with RHS SELECTs
...
that insert a NULL into the INTEGER PRIMARY KEY. Ticket #3832 . (CVS 6583)
FossilOrigin-Name: 4a1f6a3a9ac8b476c86edac83b555adeef0be4e6
2009-05-01 02:08:04 +00:00
drh
bbb5e4e073
Remove an always-true test from delete.c. Move the sqlite3OpenTable()
...
routine from delete.c to insert.c since it is not used in delete.c. (CVS 6571)
FossilOrigin-Name: 71756dc870910665ef5fdbc7343bc3eedbe3ce65
2009-04-30 00:11:09 +00:00
danielk1977
2f886d1d53
Instead of linking temporary triggers on non-temporary tables into the Table.pTrigger list, search the temp schema for them on demand. Fix for #3688 . (CVS 6329)
...
FossilOrigin-Name: 3befe1ef7e6ebddedfa69579553a1b85b411ee98
2009-02-28 10:47:41 +00:00
danielk1977
d336e222f4
Instead of using SetNumColumns, specify the number of columns in a table or index using the P4 argument. (CVS 6310)
...
FossilOrigin-Name: e43ed649630cbc49a6f2a25a26a4a6b5fce84c48
2009-02-20 10:58:41 +00:00
drh
5053a79b6c
Add the OP_HaltIfNull opcode and use it to simplify prepared statements
...
for INSERTs and UPDATEs of tables with NOT NULL columns. (CVS 6308)
FossilOrigin-Name: feccad8d0d05925ce67856d40ffe1bc7054168a0
2009-02-20 03:02:23 +00:00
danielk1977
6ab3a2ec8a
Changes to reduce the heap space consumed by triggers, views and tables in the in-memory representation of the schema. Also to reduce the space used by prepared statements slightly. (CVS 6305)
...
FossilOrigin-Name: d9f6ffbc5ea090ba0daac571fc9a6c68b9c864e4
2009-02-19 14:39:25 +00:00
drh
1bd10f8a00
Additional work at eliminating silly compiler warnings. (CVS 6010)
...
FossilOrigin-Name: ea01d43788a75e39c7f03c22681d1a338d52cf0e
2008-12-10 21:19:56 +00:00
drh
ea6788322e
Never use strlen(). Use our own internal sqlite3Strlen30() which is
...
guaranteed to never overflow an integer. Additional explicit casts to
avoid nuisance warning messages. (CVS 6007)
FossilOrigin-Name: c872d554930ecf221ac2be5f886d5d67bb35288c
2008-12-10 19:26:22 +00:00
drh
dc5ea5c785
Remove or rename local variables that shadow other variables or parameters. (CVS 6005)
...
FossilOrigin-Name: e7e9fa4fa1b7fc0668f4e3a51873ee5d11893f42
2008-12-10 17:19:59 +00:00
danielk1977
62c14b3487
Changes to avoid "unused parameter" compiler warnings. (CVS 5921)
...
FossilOrigin-Name: 88134322c36b41304aaeef99c39b4ef5b495ca3b
2008-11-19 09:05:26 +00:00
danielk1977
00e136135e
Modifications to avoid unsigned/signed comparisons in various files. (CVS 5914)
...
FossilOrigin-Name: 8009220c36635dd9b6efea7dc13281ca9625c40a
2008-11-17 19:18:54 +00:00
drh
dfe88ece74
Change the name of the Cursor object to VdbeCursor. (CVS 5857)
...
FossilOrigin-Name: fdb98fd8c1706085ebeef8e48ac6737839bed5e5
2008-11-03 20:55:06 +00:00
danielk1977
10fb749b37
Change the way sqlite3VdbeSetColName() is called so as to remove a few lines of code. This also fixes #3470 . (CVS 5853)
...
FossilOrigin-Name: bfce91429b1dad6e0ca36929e41a7adfb30f8522
2008-10-31 10:53:22 +00:00
drh
7d10d5a6e1
Refactor the name resolution procedures in the code generator. (CVS 5569)
...
FossilOrigin-Name: daf730d1defa78fb8b80a78f9108ac35a13e09f6
2008-08-20 16:35:10 +00:00
drh
633e6d57d9
Implement the "lookaside" memory allocation cache. Use of this cache makes
...
the speed1.test script run about 15% faster. Added new interfaces to
control the cache. (CVS 5488)
FossilOrigin-Name: e48f9697e9fea339e150ddc32940760027dd07d9
2008-07-28 19:34:53 +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
shane
1fc4129df7
Added macros to convert between 32-bit ints and 64-bit ptrs to avoid compiler warnings. (CVS 5378)
...
FossilOrigin-Name: 6cdb6841ff4683e424ef394733da9c24f5602570
2008-07-08 22:28:48 +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
danielk1977
bb50e7ad76
Fix for explicitly inserting a NULL value into the rowid column of a virtual table. (CVS 5343)
...
FossilOrigin-Name: a7f3b431669f7392a6acba8cd8f3fa5297a916b5
2008-07-04 10:56:07 +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
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
c9ded4c62e
When initializing the sqlite_sequence entry for an AUTOINCREMENT table,
...
make sure the value is an reasonable integer even if the initial insert
failed. Ticket #3148 . (CVS 5175)
FossilOrigin-Name: 7e6847852d4517b1d14bebb8f0ae4d938b0b6f6d
2008-05-29 03:20:59 +00:00
drh
4f3dd1502e
Make sure that transactions are started on all virtual tables that
...
changes in a single statement, not just the first. Ticket #3083 .
Need to add test cases. (CVS 5063)
FossilOrigin-Name: 133b7ee50ea6012739ebe0e334374c5d9b1fcc7f
2008-04-28 18:46:43 +00:00
drh
7209c697a1
Remove all references to sqlite3_intptr_t. (CVS 5051)
...
FossilOrigin-Name: 6a94d19747a05df2694d3720f76de3dab3836578
2008-04-27 18:40:11 +00:00
drh
5c070538f1
Additional reductions in the use of memset(). (CVS 4988)
...
FossilOrigin-Name: 38746c54385e3cb456cda660ea50769b5424db30
2008-04-11 15:36:03 +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