drh
2fa1868fb6
Add a new api sqlite3_randomness() for providing access to SQLite's
...
internal PRNG. Add sqlite3_test_control() verbs for controlling the PRNG. (CVS 4882)
FossilOrigin-Name: 15110ea02768bfe977a57eccd6b941a36ebd6b32
2008-03-19 14:15:34 +00:00
mlcreech
a9e852b667
Handle non-autoconf build correctly with new changes (CVS 4832)
...
FossilOrigin-Name: e2a9f5f1054f077e4773dd3d2c8f2ce5be118a01
2008-03-06 09:58:50 +00:00
mlcreech
12d4082f26
Use intptr_t definition to silence warnings about ptr-int casts (CVS 4824)
...
FossilOrigin-Name: 54839a84e6ce080ea8a0f6ce32acaa053d20f311
2008-03-06 07:35:21 +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
85e5f0d477
Remove an instance of sprintf() from the VM implementation. SQLite should
...
not use sprintf() from the C library - it has its own implementation. (CVS 4800)
FossilOrigin-Name: 68f5ddddf0d1b5c8ed97dda0a32362a55637b5f2
2008-02-19 18:28:13 +00:00
drh
eee4c8ca11
Add the memory fault simulator to mem5.c. Enable soft heap limit on mem5.c.
...
Limit the size of hash tables and the vdbefifo when using mem5.c. (CVS 4795)
FossilOrigin-Name: 63da5d97542e4f54c33329833477c8d96ce05dd0
2008-02-18 22:24:57 +00:00
drh
52391cb406
Fix a bug in EXPLAIN growing out of the new Mem implementation. (CVS 4790)
...
FossilOrigin-Name: 4df62a55d6fc92c3d0a416c9c03d86d76478feb6
2008-02-14 23:44:13 +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
7e8b848a60
Make sqlite3SafetyOn() and sqlite3SafetyOff() macros which disappear when
...
compiling without -DSQLITE_DEBUG=1. (CVS 4744)
FossilOrigin-Name: 5375ad6b4b652f388469b0ce4e8e78b3f49169bd
2008-01-23 03:03:05 +00:00
drh
c4dd3fd280
Changes to lemon to generate additional comments in the output file and
...
to remove unreachable code. Additional test cases for improved test
coverage. (CVS 4736)
FossilOrigin-Name: 2a0bc1e186532a0bfe36ca18fda74a5e7a199227
2008-01-22 01:48:05 +00:00
drh
91fd4d46ad
Miscellaneous code simplifications and cleanup and test coverage
...
enhancements. (CVS 4730)
FossilOrigin-Name: af129b6d158cc90ce9752dd6383c1de47f7b3e43
2008-01-19 20:11:25 +00:00
drh
9cbf3425fb
Registerification of the VDBE is complete. The operand stack has been
...
removed from the code. All instructions operate out of registers only. (CVS 4718)
FossilOrigin-Name: 706b41b70bd1e2030e6fa44358c38a26c5cf0985
2008-01-17 16:22:13 +00:00
drh
1db639cef3
Registerification of the WHERE clause logic. (CVS 4716)
...
FossilOrigin-Name: b3a141b2b0c09bf3c7704deeade290d71b7c9b77
2008-01-17 02:36:28 +00:00
drh
8cc7432280
Fix for a couple of minor memory leaks. (CVS 4712)
...
FossilOrigin-Name: a13d3e953f1a3e451e8708a8ef064aa1d72cb4e9
2008-01-15 02:22:24 +00:00
drh
949f9cd565
The sqlite3_trace() callback now prints a message as each trigger fires
...
within a statement. (CVS 4709)
FossilOrigin-Name: 110c000d86bd4a0b4b946c62d11a435426b02d16
2008-01-12 21:35:57 +00:00
drh
2d401ab8f9
More work toward converting the VM into a register-based machine. (CVS 4704)
...
FossilOrigin-Name: 8cbd46517f407b3b1ce187b623db10f00aa415ea
2008-01-10 23:50:11 +00:00
drh
98757157ee
All essential opcodes can now operate out of registers and completely
...
avoid the stack. Many still optionally use the stack to support legacy
code generation, but the stack is not required. The next step is to
update all code generation to avoid using the stack. (CVS 4700)
FossilOrigin-Name: e3cf1c1c114bcda8fe577beb5ee55b4a651b96db
2008-01-09 23:04:12 +00:00
drh
3557335658
Registerify the comparison opcodes. (CVS 4697)
...
FossilOrigin-Name: 8862ce9ceefba4f5d1ffbd51d824c05f42a58c22
2008-01-08 23:54:25 +00:00
drh
aa9b8963b5
Progress toward registerification of the constraint checking logic for
...
INSERT and UPDATE. (CVS 4693)
FossilOrigin-Name: b9bf509e39f5ac38c2149d2a648f68e5df5ae9e3
2008-01-08 02:57:55 +00:00
danielk1977
dba0137e1e
Fix a memory leak introduced with #4687 . (CVS 4688)
...
FossilOrigin-Name: 2b98b0fca82e285ae6b38384587aafa27985fa34
2008-01-05 18:44:29 +00:00
drh
8558cde1ab
Register-ify the OP_AddImm and all casting opcodes. Omit the
...
OP_MemIncr opcode. (CVS 4683)
FossilOrigin-Name: 3e8a07dd3cc9921ad39e379576abb0b485a42202
2008-01-05 05:20:10 +00:00
drh
4c583128bd
Implement the out2-prerelease opcode design pattern. (CVS 4681)
...
FossilOrigin-Name: fe057a88d0038ac349ea41883b979ceba6ae410a
2008-01-04 22:01:03 +00:00
drh
d298151587
Allow the P2 operand to be negative on opcodes that are not jumps. (CVS 4680)
...
FossilOrigin-Name: 717bcd11a222fe100e25c5b2eb6de8b6b9930de1
2008-01-04 19:33:49 +00:00
drh
3a40f696d4
Replace the NOPUSH_MASKs with a bit-vector mechanism that can contain
...
several different properties about each opcode. (CVS 4677)
FossilOrigin-Name: 042dcb9621934d0318a7c6e9cd08b20a569db367
2008-01-04 16:50:09 +00:00
danielk1977
890947e253
Fix typo in comment. Ticket #2870 . (CVS 4672)
...
FossilOrigin-Name: e97e4578671d85b634072b8931cf55516bbd4ca8
2008-01-03 18:56:25 +00:00
danielk1977
6dbee8185c
Modify VFilter and VRename to use registers instead of the vdbe stack for inputs. (CVS 4670)
...
FossilOrigin-Name: 253ed40aa36247fc846cc41c8612cd29899d9f8f
2008-01-03 18:39:41 +00:00
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
2dca4ac1d3
Change the VdbeOp.p4 union to include specific pointer types for the various values of VdbeOp.p4type. (CVS 4667)
...
FossilOrigin-Name: 7e8330c8044dc7718e720dbd33f6e2fe970ead77
2008-01-03 11:50:29 +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
11641c1136
Change the output of vdbe_trace etc. to include operands p3 and p5. (CVS 4665)
...
FossilOrigin-Name: 76f2040b051e1d4d8033e354dffe277b549f7962
2008-01-03 08:18:30 +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
danielk1977
0d78bae377
Fix EXPLAIN and EXPLAIN query plan to work with new opcode format. (CVS 4662)
...
FossilOrigin-Name: b166c33a7b9a58d571619d2248019eda09651dd2
2008-01-03 07:09:48 +00:00
drh
2400345a32
Revamp sqlite3VdbeAddOpList() so that the structure holds integer values
...
for P1, P2, and P3. (CVS 4661)
FossilOrigin-Name: 4dc507d87b242619fe32606452227900e16a6de7
2008-01-03 01:28:59 +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
e448dc4abf
Take advantage of the fact that b-tree cursors need not be closed while other cursors modify their tables to simplify trigger program generation code. (CVS 4654)
...
FossilOrigin-Name: f1966a8a47fca85f7862c0797a527ab01ac8b0c1
2008-01-02 11:50:51 +00:00
drh
d4e70ebd6f
Begin setting a foundation on which to convert the VM from a stack-based
...
to a register-based machine. Everything is still mostly stack based with
this check-in. This change merely begins adding infrastructure to support
a register-based architecture. (CVS 4652)
FossilOrigin-Name: 051ec01f2799e095516015f2ef0180e50fac387c
2008-01-02 00:34:36 +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
9a96b66810
Optimisations for expressions of the form "<value> IN (SELECT <column> FROM <table>)". (CVS 4579)
...
FossilOrigin-Name: 56d0e32677744df8570b519fae1c04da4ea4984d
2007-11-29 17:05:18 +00:00
drh
ade6c9c513
Declare the invalidateCursorsOnModifiedBtrees function to be static.
...
Ticket #2792 . (CVS 4559)
FossilOrigin-Name: 94f25fc1129c7fb8697a67e509ab9de54a173a58
2007-11-24 10:23:44 +00:00
danielk1977
d0e2a85436
Add an experimental API for retrieving the SQL source from a compiled statement: sqlite3_sql(). Ticket #2769 . (CVS 4543)
...
FossilOrigin-Name: d31f1e0d74a871d66cf7d3ef35faae5171d5cbc3
2007-11-14 06:48:48 +00:00
danielk1977
8e556520e9
Modify the Tcl interface to use sqlite3_prepare_v2(). (CVS 4542)
...
FossilOrigin-Name: 7bb00c7df672cb8988121f30e3bbdea9ad951603
2007-11-13 10:30:24 +00:00
drh
598f134020
Floating point and 64-bit integer constants store in the virtual
...
machine opcodes in binary, not as text. Performance improvement.
Ticket #2733 . (CVS 4507)
FossilOrigin-Name: 7e30fd6a09899842c922b044714dc66796e545d4
2007-10-23 15:39:45 +00:00
drh
a4e5d58f02
Simplify the mem3.c memory allocator. Have it call sqlite3_release_memory()
...
automatically, without having to specify the soft heap limit. (CVS 4496)
FossilOrigin-Name: ca51b2f54076fcf73a8857aecf4b45d66ef0c7b6
2007-10-20 15:41:57 +00:00
drh
d181704ec5
Simplify the vdbeHalt logic slightly. (CVS 4459)
...
FossilOrigin-Name: b59f7bcbabcccde9d2519e10e65e121343f2af7a
2007-10-03 18:45:04 +00:00
drh
71b890a3f6
Rollback the transaction if an SQLITE_FULL error is encountered.
...
This is a preliminary fix for ticket #2686 . More testing and
analysis is needed before we close the ticket. (CVS 4458)
FossilOrigin-Name: 0fb6d5a5773c282882e7283e6f8f8c009e238ff4
2007-10-03 15:30:52 +00:00
drh
60d09a712c
Fix the SQLITE_MIXED_ENDIAN_64BIT_FLOAT option so that it works on
...
goofy linux kernels that employ CONFIG_FPE_FASTFPE. Patch from
Frank van Vugt. (CVS 4339)
FossilOrigin-Name: 71ab92e900512ad01047b46f734bd5f65998ecf9
2007-08-30 15:05:08 +00:00
drh
fb98264aab
Fix for the sqlite3AbortOtherActiveVdbes() problem. (CVS 4328)
...
FossilOrigin-Name: e40d40a5d41c491bef852a92e5846b273b206909
2007-08-30 01:19:59 +00:00
drh
ff0587c632
Improvements to mutex asserts. The quick test runs to completion without
...
assertion faults. (CVS 4324)
FossilOrigin-Name: 2732af0ec77dbc90c0439b6a61d893d9ea3b5697
2007-08-29 17:43:19 +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
4cf7c7f7e7
The shared_err test runs with no errors. But a potential deadlock has been
...
discovered and is still unfixed. (CVS 4317)
FossilOrigin-Name: f84550be0a0c9e5859b852863b9a8f8ed3fd6919
2007-08-28 23:28:07 +00:00