drh
4873d5f614
Make the benign-fault setting recursive. Make all malloc failures
...
during a rollback benign since there is nothing we can do about them. (CVS 5128)
FossilOrigin-Name: a9d1d931358637a6f039723a053098f65530de4b
2008-05-13 13:27:33 +00:00
drh
5284a05316
Use a 6-byte rather than an 8-byte encoding for integers between
...
17592186044416 and 140737488355327. Ticket #3100 . (CVS 5105)
FossilOrigin-Name: 0a4d26dede320d90a39133dce3d76ca3ee1a4ee6
2008-05-08 15:18:10 +00:00
drh
2eaf93d34f
Always convert IEEE NaN into NULL. Ticket #3060 . Add test cases to verify
...
that this is happening. (CVS 5066)
FossilOrigin-Name: 9b07e59e510e2de39c2081653662fbc654ca6fbb
2008-04-29 00:15:20 +00:00
drh
7209c697a1
Remove all references to sqlite3_intptr_t. (CVS 5051)
...
FossilOrigin-Name: 6a94d19747a05df2694d3720f76de3dab3836578
2008-04-27 18:40:11 +00:00
shane
3f8d5cfcad
Consolidated varint macro usage from btreeInt.h, vdbe.c, and vdbeaux.c into sqliteInt.h and made their use consistent. Slight improvements to varint32 macros. (CVS 5045)
...
FossilOrigin-Name: 0d04ccd97841bbbda564cc6ae5da057ee3888fa3
2008-04-24 19:15:09 +00:00
danielk1977
ecc91f6868
Remove redundant assert() statement from vdbeaux.c. Ticket #3065 . (CVS 5039)
...
FossilOrigin-Name: 3cba1166076bf0506597e2d7686a271922817668
2008-04-24 08:36:51 +00:00
danielk1977
9a9b1564cf
Add version comment to vdbeaux.c. No code changes. Ticket #3066 . (CVS 5038)
...
FossilOrigin-Name: d667add44b87f9011b0ef10d45101dfc1e38feaa
2008-04-24 08:31:51 +00:00
danielk1977
751de567c1
Allow OP_MoveGt and similar to use an array of registers instead of a serialized record. Modify one type of index range scan to use this. (CVS 5028)
...
FossilOrigin-Name: c448f15aa5ed3dec511426775e893efea324faa1
2008-04-18 09:01:15 +00:00
drh
f3a87624a2
In exclusive locking mode, commit by zeroing the first 28 bytes of the
...
journal file, not by truncating the journal. Overwriting is much faster
than truncating. (CVS 5023)
FossilOrigin-Name: 8efb7f4ffbfc3ad901a3bb1b4ff9390b8c13760b
2008-04-17 14:16:42 +00:00
danielk1977
1ea1b3f8b9
Remove a recently added assert() that is failing with certain compilers on 32-bit platforms. Ticket #3043 . (CVS 4990)
...
FossilOrigin-Name: 03c0279d7b004ccc4264143e366c793b4d774f9f
2008-04-11 17:15:46 +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
26c9b5eaba
Speed improvements by removing unnecessary memset() operations.
...
Also: do not resize the opcode array of a virtual machine to its
minimum size after code generation completes. The extra resize
merely uses time. (CVS 4987)
FossilOrigin-Name: 2589955507fc1717891c4e07d1d658eb41660b87
2008-04-11 14:56:53 +00:00
drh
fab69597cc
Make sure all memory allocations are 8-byte aligned. Ticket #3040 .
...
Note that the mem3.c memory allocator returns 4-byte aligned memory
allocations. But as mem3.c is intended for use in 32-bit embedded
systems, we are not going to change that. (CVS 4978)
FossilOrigin-Name: d11e8e307af906db75ae7aede790464fabd06422
2008-04-10 14:57:24 +00:00
danielk1977
5f09613545
Changes to the Mem structure to reduce the frequency of freeing and reallocating the dynamic buffer. (CVS 4928)
...
FossilOrigin-Name: d0bf73d81453da1d8e602e0445064d9f5e348063
2008-03-28 15:44:09 +00:00
drh
19db935225
Allow the xAccess method in the VFS to return -1 to signal an I/O
...
error, and in particular an SQLITE_IOERR_NOMEM. (CVS 4925)
FossilOrigin-Name: 3cb704c4c439425781644b1b653b7e50f02fd91e
2008-03-27 22:42:51 +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
danielk1977
dfb316d432
Changes to delay freeing buffers associated with vdbe memory cells until either sqlite3_finalize() or sqlite3_release_memory() is called. (CVS 4922)
...
FossilOrigin-Name: 8c2f69521f13bc24cf005520efbe0589eeadd763
2008-03-26 18:34:43 +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
1e968a0cbf
Removed the direct btree tests - part of the ongoing effort to test by
...
calling only public interfaces. Modify the sqlite3VdbeRecordCompare
interface to used a pre-parsed second key - resulting in a 13%
performance improvement on speed1p.test. (CVS 4911)
FossilOrigin-Name: 0e1d84f2f456e7680bb667266745b629ddf3605f
2008-03-25 00:22:21 +00:00
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