1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-12-03 08:01:19 +03:00
Commit Graph

456 Commits

Author SHA1 Message Date
drh
0a07c107a6 Registers (aka memory cells) in the VM are now numbered starting with 1
instead of 0.  A register number of 0 means "no such register". (CVS 4669)

FossilOrigin-Name: 0b849805c3a0f562d50623f406279b400d335639
2008-01-03 18:03:08 +00:00
danielk1977
1f4aa337cd Change the OP_Insert opcode to read the key and data to insert from memory cells, not the stack. (CVS 4666)
FossilOrigin-Name: 46501f490a5f5577ea31c758df749e02c7c65f39
2008-01-03 09:51:55 +00:00
danielk1977
207872a488 Change OP_OpenRead and OP_OpenWrite so that the database number is read from the P3 operand, not the stack. (CVS 4663)
FossilOrigin-Name: 35da261daf602b1e938f05bbad1ff99213d9f4b9
2008-01-03 07:54:23 +00:00
drh
66a5167b47 Refactoring the VM. The P3 parameter is changed to P4. A P5 parameter is
added (though not currently used.)  Add routines sqlite3VdbeAddOpX() where
X is one of 0, 1, 2, 3, or 4. (CVS 4660)

FossilOrigin-Name: 027875e4d4c4bd7686dc880c6917a968049b2fec
2008-01-03 00:01:23 +00:00
danielk1977
6c8c8ce0e2 Combine the eDest and iParm arguments to sqlite3Select() into a single type - "SelectDest". (CVS 4657)
FossilOrigin-Name: 86dcdfe6d7d629618ccb3c3ff0ca09f2da2d06c7
2008-01-02 16:27:09 +00:00
danielk1977
4eab8b7b41 Fix a race condition that can occur when reloading the database schema in shared-cache mode. (CVS 4643)
FossilOrigin-Name: b37babef913fcceae7f0bd461a3105e184518d62
2007-12-27 15:12:16 +00:00
drh
77658e2f0d Make sure statement journals are initiated when doing DROP operations
(since the DROP might fail after sqlite_master changes).  Also make
sure statement journals are initiated if there are pending SELECT
statements.  Ticket #2820. (CVS 4591)

FossilOrigin-Name: bf34284ff0c60ae6e735e09bb29cd48b158e8dce
2007-12-04 16:54:52 +00:00
danielk1977
fe91033907 When parsing CREATE INDEX statements from the sqlite_master table, do not search the temp database schema for the corresponding table. Only consider the database for which the schema is being parsed. Ticket #2817. (CVS 4587)
FossilOrigin-Name: e6f02aa5ae6da0befdf98fdd5884345f3cb7f5ea
2007-12-02 11:46:34 +00:00
danielk1977
390025053e Allow collation sequence names to be quoted. Ticket #2744. (CVS 4537)
FossilOrigin-Name: 06749ac7afeea4adbdeb9315f3819d5224534c66
2007-11-12 09:50:26 +00:00
danielk1977
db2d286b59 Fix for OMIT_AUTHORIZATION builds. (CVS 4489)
FossilOrigin-Name: 260711a14d5ab2d7c9888c7c46c33a28a3da0415
2007-10-15 07:08:44 +00:00
drh
a6d0ffc359 Do not invoke the authorizer when reparsing the schema after a schema
change or when trying to figure out the result set of a view. (CVS 4488)

FossilOrigin-Name: e756bc9b74ef357c088b3044527c41e6834ba1a2
2007-10-12 20:42:28 +00:00
danielk1977
b5258c3db3 Fixes for OMIT_AUTHORIZATION builds. #2691. (CVS 4466)
FossilOrigin-Name: 755fcaf7e355042d88fed6b9b49669300b010695
2007-10-04 18:11:15 +00:00
drh
33f4e02af6 Honor the SQLITE_OPEN_ flags passed into sqlite3_open_v2(). Some
test cases added but more are needed.  Ticket #2616. (CVS 4376)

FossilOrigin-Name: 020a2b10d408f51d4ef3211c5f701f5378fd4625
2007-09-03 15:19:34 +00:00
drh
fb98264aab Fix for the sqlite3AbortOtherActiveVdbes() problem. (CVS 4328)
FossilOrigin-Name: e40d40a5d41c491bef852a92e5846b273b206909
2007-08-30 01:19:59 +00:00
danielk1977
26783a58e2 Use the DbMalloc() and DbRealloc() functions more consistently. (CVS 4323)
FossilOrigin-Name: c790c234c369c6b7610e67dcaaa9eee347df729c
2007-08-29 14:06:22 +00:00
danielk1977
a1644fd863 Modifications to the malloc failure tests to test transient and persistent failures. (CVS 4321)
FossilOrigin-Name: e38ef81b85feb5bff2ad8448f3438ff0ab36571e
2007-08-29 12:31:25 +00:00
drh
d0679edc7a Clean up the locking in the btree logic. (CVS 4316)
FossilOrigin-Name: 967ab229af462a8ae663090ea36b4cc10e351653
2007-08-28 22:24:34 +00:00
drh
900b31ef49 Work toward correct btree locking in a multithreaded environment. (CVS 4307)
FossilOrigin-Name: b8cc493b47e618648f645ab73eb0253739e03fcd
2007-08-28 02:27:51 +00:00
drh
f3a65f7e44 The malloc.test script now passes all tests with no errors. (CVS 4271)
FossilOrigin-Name: db818430e9ea4ef4a4af575784009d5acae785a3
2007-08-22 20:18:21 +00:00
drh
b21c8cd4f6 The sqlite3_value object now carries an sqlite3* pointer to use for
recording malloc failures.  This eliminates the need to pass sqlite3*
pointers into many internal interfaces.  Also added more mutexing. (CVS 4263)

FossilOrigin-Name: 9287276191a582c1cf7cf6b71d8399727d8e534d
2007-08-21 19:33:56 +00:00
drh
e53831d644 Begin adding mutexes. Compiles without SQLITE_OMIT_SHARED_CACHE but we
get an assertion fault on the shared cache testing. (CVS 4239)

FossilOrigin-Name: 4c1e9ffebe7c611a8b6a89153ae97ab9bca19ea3
2007-08-17 01:14:38 +00:00
danielk1977
1e5369531e More work on refactoring of malloc() interfaces. There are still many errors. (CVS 4233)
FossilOrigin-Name: 77b1671351fe94b0ebc126a63140643deae2aa64
2007-08-16 10:09: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
1c55ba094a Fix a comment typo reported on the mailing list. (CVS 4152)
FossilOrigin-Name: 25e6df9cdd7d0cbb2bdee9ce76806cfd08314212
2007-07-02 19:31:27 +00:00
drh
9a087a99e5 Relax the restriction on using bytes 0x80 through 0xbf as the first
character of an identifier.  Enhancements to ALTER TABLE tests for
tables with strange names or stange column names. (CVS 4008)

FossilOrigin-Name: 262a3e6339b31f269f8f07e43d295b90827e2779
2007-05-15 14:34:32 +00:00
drh
4e5dd85135 Fix problems in ALTER TABLE that occur when column or table names are
invalid UTF encodings. (CVS 4000)

FossilOrigin-Name: 9ff382f4584ff685a78b39f24424319709efb382
2007-05-15 03:56:49 +00:00
drh
84f31128b2 Make REINDEX robust in the face of malloc() errors. (CVS 3990)
FossilOrigin-Name: dbe417745d3d4ed875715ad7083d7345d1b6a56f
2007-05-12 15:00:14 +00:00
drh
cf1023c08d Disable tracing pragmas when not in debug mode. This eliminates an external
dependency on stdout. (CVS 3959)

FossilOrigin-Name: 5a0fe9854849bf3f04008a5dbb7a74e7d0d815ca
2007-05-08 20:59:49 +00:00
drh
ee85813c94 Fix the amalgamation generator so that all non-API functions have file scope. (CVS 3958)
FossilOrigin-Name: e9f56ead0514f3eac75807ea710c1f035b8add4f
2007-05-08 20:37:38 +00:00
drh
e5c941b83b Add more code to enforce the limits specified in limits.h. (CVS 3946)
FossilOrigin-Name: c59d436095b5258d7132a432c0cb6cd5a7990d85
2007-05-08 13:58:26 +00:00
drh
c797d4dccd Begin implementing a new system of upper bounds on the capabilities
of SQLite.  By clearly defining the upper bounds, we make those
upper bounds explicitly testable.  This check-in is just infrastructure.
The upper bounds are not yet enforced. (CVS 3941)

FossilOrigin-Name: 93b623b232a43f78d2c90bfa2389dd5b28ad7280
2007-05-08 01:08:49 +00:00
drh
ca5557f91d Change incremental vacuum to be triggered by a pragma rather than a command.
We have a lot to learn about this yet and we do not want to paint ourselves
into a corner by commiting to specific syntax too early. (CVS 3921)

FossilOrigin-Name: b13e497a326697ab42b429993a1eee7df3c0c3eb
2007-05-04 18:30:40 +00:00
drh
9c61cd77a5 Optional parameter in the INCREMENTAL VACUUM statement specifies how many
pages to vacuum from the database. (CVS 3919)

FossilOrigin-Name: ed713f9ccb5d0f306a79ab9931e43db2327fb435
2007-05-04 16:14:38 +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
dddbcdcc68 Add largely untested code for the incremental vacuum function. (CVS 3876)
FossilOrigin-Name: f6a6d2b8872c05089810b1e095f39011f3035408
2007-04-26 14:42:34 +00:00
danielk1977
417d724069 Fix an assertion failure caused by (3851). (CVS 3852)
FossilOrigin-Name: 24683f1d29c5d312d6cabe2dde52d7c0424f629a
2007-04-18 14:47:23 +00:00
danielk1977
a04a34ff1a Ensure sqlite3_finalize() can be called from within the xDisconnect() method of virtual tables. (CVS 3845)
FossilOrigin-Name: 8d6c3bfc4dfdd380a2915d778e256d3e49d22d72
2007-04-16 15:06:25 +00:00
drh
7c4ac0c555 Improvements to coverage testing. (CVS 3810)
FossilOrigin-Name: 38af156da83a8469080ddb75a9a286be33ff6bef
2007-04-05 11:25:58 +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
cf64372910 More strict aliasing fixes. The single source file library now runs
successfully with -fstrict-alias. (CVS 3725)

FossilOrigin-Name: c8a8a189a82500aab501e9949f5b197c0b80b3a9
2007-03-27 13:36:37 +00:00
drh
4f0c587819 Modify sources to that they can be combined into a single sqlite3.c source
file.  Eliminate all type-pruned pointer warnings. (CVS 3722)

FossilOrigin-Name: 0b832e218ec12b0eb559e407d80aba6709e2ea85
2007-03-26 22:05:01 +00:00
danielk1977
59a33f98d6 Modifications to crash-test infrastructure. (CVS 3695)
FossilOrigin-Name: c4be8d9949fc7b5e1bed757423c5195f38069048
2007-03-17 10:26:59 +00:00
danielk1977
d45a0315cb Do not crash when a corrupt database contains two indices with the same name. (CVS 3684)
FossilOrigin-Name: 48b2a40008a09881ed9da3548095495a3d4a6647
2007-03-13 16:32:25 +00:00
drh
a34001c9a3 Minor tweaks to collating sequences. We'll hold of making major changes
until 3.4.0, since we'll likely end up with some minor technical
imcompatibilities. (CVS 3626)

FossilOrigin-Name: 9740aa95a3f848fc663c88263a911fbc76ada243
2007-02-02 12:44:37 +00:00
drh
61dfc31d80 Query optimizer enhancement: In "FROM a,b,c left join d" allow the C table
to be reordered with A and B.  This used to be the case but the capability
was removed by (3203) and (3052) in response to ticket #1652.  This change
restores the capability. (CVS 3529)

FossilOrigin-Name: 7393c81b8cb9d4344ae744de9eabcb3af64f1db8
2006-12-16 16:25:15 +00:00
drh
fdd48a76a6 Add support for IF EXISTS on CREATE/DROP TRIGGER/VIEW. Ticket #1899. (CVS 3406)
FossilOrigin-Name: e4fe736cfbbdc081581911a01690576034877b72
2006-09-11 23:45:48 +00:00
drh
417ec6381f Change the table_info pragma to show the text of the default value expression,
not the result of evaluating the default value expression.
Ticket #1919. (CVS 3353)

FossilOrigin-Name: b4d53974c30d195c061cc7605a707d7d30c52740
2006-08-14 14:23:41 +00:00
danielk1977
20b1eaffd8 Disallow writing to, creating or dropping virtual tables from within xSync() callbacks. (CVS 3339)
FossilOrigin-Name: e705d232324c71738b8b25713a134617dd1fc525
2006-07-26 16:22:14 +00:00
drh
76fe8032c1 By default, new databases are now created in the legacy file format - the
format that ignores DESC on indices.  If you want descending indices, you
must either recompile with -DSQLITE_DEFAULT_FILE_FORMAT=4 or issue
"PRAGMA legacy_file_format=OFF" prior to creating the first table in the
database. (CVS 3330)

FossilOrigin-Name: 65b60f05ce49ff127bf5044f96db36caf1fa0106
2006-07-11 14:17:51 +00:00
danielk1977
5ee9d6977f Add tests to make sure altering or adding an index to a virtual table is prohibited. (CVS 3280)
FossilOrigin-Name: 6c3e8852ffbaf5ab52ffdf7ed3767fa1d4fd5882
2006-06-21 12:36:25 +00:00