1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-11 01:42:22 +03:00
Commit Graph

344 Commits

Author SHA1 Message Date
drh
543165ef97 Update the version number to 3.5.3. Fix some minor testing problems. (CVS 4563)
FossilOrigin-Name: f4c8f2d1918f24514f02cae9172c77f6957d32c1
2007-11-27 14:46:41 +00:00
drh
48d1178ad8 Make sure that INSERT INTO ... SELECT ... always uses an ephemeral
intermediate table if the SELECT clause refers to the destination table,
even if the SELECT clause is compound or uses the destination table
in a subquery.  This fixes a long-standing bug that can cause an
infinite loop for some SQL statements. (CVS 4552)

FossilOrigin-Name: 492b39b6a8bf4ad8792d7a7949f77827a5047fd8
2007-11-23 15:02:19 +00:00
danielk1977
5ce240a618 Remove an unreachable case from xferOptimization(). Also other minor test coverage improvements. (CVS 4383)
FossilOrigin-Name: 75af7189c0ed1b24a32cff6960af7f17326cbc17
2007-09-03 17:30:06 +00:00
drh
f53e9b5ad5 Be careful to verify the schema cookie when running the xfer optimization
on INSERT statements. (CVS 4322)

FossilOrigin-Name: d8ef7024172fffee049cfda6707220af2577e9a1
2007-08-29 13:45:58 +00:00
drh
abb6fcabcb Combine sqlite3DbOfVdbe() and sqlite3VdbeDb() into a single function. (CVS 4236)
FossilOrigin-Name: ba80ee59a72afe36817997de705ef81d876b6f35
2007-08-16 12:24:01 +00:00
drh
174357527a Half-way through a major refactoring of the memory allocation.
I have not even attempted to compile so I am certain there are
countless errors. (CVS 4231)

FossilOrigin-Name: deb7ecd65f7b83eaf0ba610eeef3b0ede61db1c3
2007-08-16 04:30:38 +00:00
drh
2e06c67c08 The REPLACE conflict resolution falls back to FAIL when on a
CHECK constraint violation.  Ticket #2525. (CVS 4178)

FossilOrigin-Name: b213614abff90c65cc7228c87f4973150e8a9679
2007-07-23 19:39:46 +00:00
danielk1977
034ca14f81 Allow virtual tables to mark columns as 'hidden'. Hidden columns do not show
up in "*" expansion, the implicit column list of an INSERT statement, or the results of a "PRAGMA table_info" statement. (CVS 4127)

FossilOrigin-Name: 7f887a6a00fdd6efc3740bd8a1731bb1abde087c
2007-06-26 10:38:54 +00:00
drh
5bb3eb9b9a Eliminate all uses of sprintf() and strcpy(). These were not being
misused.  But getting rid of them removes a library dependency.  And
it avoids warnings from the OpenBSD compiler.  Ticket #2336. (CVS 3916)

FossilOrigin-Name: ba4845b32bdf38e623c4f7246e6e327715bbba4b
2007-05-04 13:15:55 +00:00
danielk1977
0125683288 Minor changes (mainly to assert() macros) to handle malloc failure in vtab operations. (CVS 3851)
FossilOrigin-Name: 175156d1fcaadab3b955597abb27f6b9043bbb5b
2007-04-18 14:24:32 +00:00
drh
f33c9fad35 Preliminary fix for ticket #2291. This fixes the immediate problem. But
we really need to write more tests for the xfer optimization in order to
look for other related problems before closing this ticket. (CVS 3835)

FossilOrigin-Name: 34fec312fd1aeabb04e07d6aa061991775c7b8a1
2007-04-10 18:17:55 +00:00
drh
61fc595fdd Fix some warnings about unused and uninitialized variables. (CVS 3788)
FossilOrigin-Name: 18aec1ddfb08b74f0ef9cf1215eac7af71449db3
2007-04-01 23:49:51 +00:00
drh
bd36ba69b0 The XFER optimization works if the target table lacks an integer primary
key and is not empty as long as it has no indices.  It always has and
continues to work if the target table was empty. (CVS 3779)

FossilOrigin-Name: 2c62ffcb865655e8b91aaf81601548ea540c6088
2007-03-31 13:00:26 +00:00
drh
42242ded5e Fix a bug in XFER optimization introduced by check-in (3736). (CVS 3744)
FossilOrigin-Name: 3714ac173289e580a0302a5a3beac05823d92c5b
2007-03-29 13:35:35 +00:00
drh
e4d9081307 Change BtreeMoveto so that it can be biased to the right or to the center.
Use a right bias when appending and a center bias when searching.  This
gives about a 15% reduction in calls to sqlite3VdbeRecordCompare. (CVS 3741)

FossilOrigin-Name: ad4a6b1a91bcefd8a4c75e8dc99c1153c72c31a3
2007-03-29 05:51:49 +00:00
drh
7fc2f41bef Patch so the the code compiles with -DSQLITE_OMIT_CHECK=1. (CVS 3737)
FossilOrigin-Name: 72cea358da4bd38af322f18f2a753171f7decaf8
2007-03-29 00:08:24 +00:00
drh
95bad4c751 Improvements to the XFER Optimization of the INSERT statement. (CVS 3736)
FossilOrigin-Name: 53fff7d1f2f829010a2641c7738538b3155da4b2
2007-03-28 18:04:10 +00:00
drh
91c58e23b2 Get the -DSQLITE_OMIT_XFER_OPT option working. Run speed tests on a full
regression.  Add the script for generating sqlite3.c. (CVS 3723)

FossilOrigin-Name: 42c038518c4ba0ef827a5717d450f95165b3c729
2007-03-27 12:04:04 +00:00
drh
fb658dedce Additional test cases added. Improvements to the INSERT transfer
optimization. (CVS 3662)

FossilOrigin-Name: 2bf5475bde763f73f7f4dd9cac7d13a631a7d2aa
2007-02-24 15:18:49 +00:00
drh
dd73521bc2 Additional tests and some improvements to the INSERT transfer
optimization.  More testing is needed. (CVS 3661)

FossilOrigin-Name: 830985814345f71ba2def3c206e36aabe9e1ee7c
2007-02-24 13:53:05 +00:00
drh
8103b7d2b7 Make sure the INSERT xfer optimization does not trigger if the CHECK
constraints on the two tables are not identical.  Ticket #2252. (CVS 3660)

FossilOrigin-Name: 6fc18275230563437f2985eac3795e4dfe8eb9de
2007-02-24 13:23:51 +00:00
drh
9d9cf22971 Add a new algorithm for handling INSERT which reduces fragmentation on
a VACUUM.  Ticket #2075.  More testing needed. (CVS 3643)

FossilOrigin-Name: 9f56a878cbbc715262b3a48ee696148dbd7bf1d2
2007-02-13 15:01:11 +00:00
drh
16ed8a64f6 Bug fix: Get INSERT INTO ... SELECT working when the target is a virtual
table. (CVS 3374)

FossilOrigin-Name: 7912485705c96e365a942932bb12d5b9113c9885
2006-08-29 18:46:14 +00:00
drh
147d0ccc15 Add support for INSERT INTO ... DEFAULT VALUES. Tickets #299, #1940. (CVS 3368)
FossilOrigin-Name: bc84cb54b0df09738fd90e48820dc3cdfa7828c2
2006-08-25 23:42:53 +00:00
danielk1977
b3d24bf8ee Add tests to ensure an INSERT/UPDATE/DELETE immediately after virtual table construction does not fail. (CVS 3270)
FossilOrigin-Name: 144d0eb13aed4507e93edec781b1819a068f4a70
2006-06-19 03:05:10 +00:00
danielk1977
f9e7dda7ef Add code to invoke the virtual table transaction interface. Untested at this point. (CVS 3261)
FossilOrigin-Name: 6125140228e09cad2029a48e92aa0123d3daecfb
2006-06-16 16:08:53 +00:00
danielk1977
1f6eec547c Arrange for sqlite3_last_insert_rowid() to work with virtual tables. (CVS 3259)
FossilOrigin-Name: afa39a46320e9996a5478ea6e19eb4c2014327ac
2006-06-16 06:17:47 +00:00
danielk1977
c7d5410126 Simple tests and fixes for writing to virtual tables. (CVS 3252)
FossilOrigin-Name: 88fa510e4c684513bbb59031d034fdb5c51a6a15
2006-06-15 07:29:00 +00:00
drh
4cbdda9e27 Added code to INSERT, DELETE and UPDATE virtual tables. The new code is
mostly untested. (CVS 3248)

FossilOrigin-Name: 32c97b884b104d120db3c0a87f5eab28f36851f8
2006-06-14 19:00:20 +00:00
drh
b9bb7c187e Progress toward CREATE VIRTUAL TABLE. Still not even close to working... (CVS 3211)
FossilOrigin-Name: 898ec36b4102aaa03979f8f5c510936e57e2ae48
2006-06-11 23:41:55 +00:00
drh
aa01c7e2cd Fix CHECK constraints to use alternative conflict resolution. Ticket #1717. (CVS 3137)
FossilOrigin-Name: c0d20fa97f94313e6b7ee5b4baa236ef5b664d76
2006-03-15 16:26:10 +00:00
drh
43617e9ab9 Code changes resulting from Coverity analysis.
http://scan.coverity.com/  Found 1 potential segfault in sqlite3_mprintf().
Also 2 failures to fclose() following a malloc() failure.  And lots of
cases where unnecessary conditionals could be removed from the code. (CVS 3126)

FossilOrigin-Name: e510e6dd9d6261f33b853af3b32d155b9d6b63b3
2006-03-06 20:55:46 +00:00
drh
74161705f1 Remove unused parameters on internal APIs. Suppress warnings from
CodeWarrior. (CVS 3110)

FossilOrigin-Name: 4b22e4b847f8d5c29830baea541194ef3a0c4811
2006-02-24 02:53:49 +00:00
danielk1977
955de52c9c Add the column_origin_name() etc. APIs. (CVS 3069)
FossilOrigin-Name: 82f502cdc1fead3bf7e3190d5c9db3aee6919ed4
2006-02-10 02:27:42 +00:00
danielk1977
f011300000 Rename some variables to avoid hiding others. Also add "static" to two function signatures that were missing it. (CVS 3024)
FossilOrigin-Name: d86f18a4277ebffb644ba2e574e0b697c8bbf8e4
2006-01-24 12:09:17 +00:00
drh
02afc86171 More compiler warnings fixed - or in some cases comments are added to explain
that the compiler is wrong. (CVS 2984)

FossilOrigin-Name: 507653a98cbd096f836a977408e373640c7cdb8f
2006-01-20 18:10:57 +00:00
danielk1977
9e12800dec Use a global variable protected by a mutex instead of thread-specific-data to record malloc() failures. (CVS 2972)
FossilOrigin-Name: ac090f2ab3b5a792c2fdf897e10060f263e0d408
2006-01-18 16:51:35 +00:00
drh
6f7adc8a80 Automatically deallocate thread-specific data when it is no longer
being used.  Ticket #1601.  Also implemented the suggestion of
ticket #1603. Memory management is now off by default at compile-time.
The sqlite3_enable_memory_management() API has been removed. (CVS 2919)

FossilOrigin-Name: 5d9c6aa964305c3f36741ff0058da5b5f3ce0d24
2006-01-11 21:41:20 +00:00
danielk1977
b3bf556ef6 Store collation sequence names instead of pointers in sharable schema data structures. (CVS 2904)
FossilOrigin-Name: 0f0213be4d064b3d24e31ff93ec16f6862003d26
2006-01-10 17:58:23 +00:00
danielk1977
e501b89ada Rename DbSchema to "Schema" and SqliteTsd to "ThreadData". (CVS 2893)
FossilOrigin-Name: 82b81f69c78cb3f54634d9aea4f6a838474dc5e5
2006-01-09 06:29:47 +00:00
drh
15007a99e4 Get LIMIT and OFFSET working again for negative limits and offsets.
Ticket #1586. (CVS 2889)

FossilOrigin-Name: b2ac0be07ec76ab23b7e5b800c0bc62d0bc97f4b
2006-01-08 18:10:17 +00:00
danielk1977
c00da10565 In shared-cache mode, lock all required tables before beginning to execute the body of the statement program. (CVS 2881)
FossilOrigin-Name: 23b587b05b89727248805e6d9e5141e018cf2152
2006-01-07 13:21:04 +00:00
danielk1977
da18423620 Add the shared schema/pager modifications. Very few tests so far. (CVS 2859)
FossilOrigin-Name: deeda0dc06c1595aedd8d06a0c4e88a8abf78cf7
2006-01-05 11:34:32 +00:00
danielk1977
94eb6a14cb Add the sqlite3_update_hook() API. (CVS 2820)
FossilOrigin-Name: 36229018817eebfbfca7a66d2285e4faf7b39845
2005-12-15 15:22:08 +00:00
danielk1977
261919cc16 Some elements of the new malloc() failure handling. Not all cases work properly yet. Also, library is not threadsafe if malloc() fails right now. (CVS 2800)
FossilOrigin-Name: e1606658f1b4530e3001db4779b5669c8d13c853
2005-12-06 12:52:59 +00:00
drh
3eda040be9 Fix incorrect type conversions when copying from a table into itself.
Ticket #1536. (CVS 2773)

FossilOrigin-Name: a2e55a3828d74d78b0b76f956a537a0d906f3191
2005-11-24 13:15:32 +00:00
drh
8a51256c0c Create separate affinities for INTEGER and REAL. (CVS 2766)
FossilOrigin-Name: ce06c123d0c5663dbaf263c2e0aaf5d9cdeb2ccd
2005-11-14 22:29:05 +00:00
drh
0cd2d4c9a1 Add the ignore_check_constraints pragma. VACUUM works even on a database
that contains table entries that violate check constraints. (CVS 2757)

FossilOrigin-Name: be83bfee0211396a0038ffb125897199bea9a73f
2005-11-03 02:15:02 +00:00
drh
6275b88b9e CHECK constraints that evaluate to NULL pass. (CVS 2755)
FossilOrigin-Name: 55b314a22c69fbe129b024e953f3230b67eaaa87
2005-11-03 01:22:30 +00:00
drh
ffe07b2dc1 First cut at supporting CHECK constraints. Everything appears to work,
but much more testing is needed as well as documentation. (CVS 2754)

FossilOrigin-Name: 2313d912baeca0fd516d524f16708953de483729
2005-11-03 00:41:17 +00:00