drh
a6c2ed91ca
Optimizations to the main loop inside sqlite3VdbeExec() to help VDBE byte code
...
run a few percent faster.
FossilOrigin-Name: d622ac6ac7a297754494d3a33dbaeea02836272e
2009-11-14 23:22:23 +00:00
drh
8cff69df11
Enhance the OP_Found and OP_NotFound opcodes so that they can accept an
...
array of registers as an unpacked record in addition to a record built
using OP_MakeRecord. Use this to avoid OP_MakeRecord calls during IN
expression processing.
FossilOrigin-Name: b9eab885cd2ca1a1633329e7036c125e8dba62c5
2009-11-12 19:59:44 +00:00
drh
c81c11f62c
Remove the obsolete "$Id:$" RCS identifier strings from the source code.
...
FossilOrigin-Name: f6c045f649036958078cb15cd9d5453680c82b0c
2009-11-10 01:30:52 +00:00
drh
40f75cf389
Remove some obsolete code within #if 0 that was causing developer concern.
...
FossilOrigin-Name: 1d64e9453fb59d2bb1b5cb0cbacaf135b8f928c3
2009-10-26 22:08:21 +00:00
dan
1d2ce4f804
Remove the sqlite3_reoptimize() API. The same functionality is now provided automatically to queries prepared using prepare_v2().
...
FossilOrigin-Name: 2c50b3d5aab7cd8cc841d61f8c3b2b34d2f0b54b
2009-10-19 18:11:09 +00:00
dan
937d0dea4f
Add the experimental sqlite3_reoptimize() API.
...
FossilOrigin-Name: 9bd6f3d8864d422fe42074688b191915b27ad8ea
2009-10-15 18:35:38 +00:00
dan
f3677212e3
Fix a problem with the sqlite3VdbeMayAbort() assert failing following an OOM.
...
FossilOrigin-Name: b3027863505fa8edf355f3f5eea4502ef365175e
2009-09-10 16:14:50 +00:00
dan
144926d8b6
Add a complicated assert() to check that statement transactions are opened when required.
...
FossilOrigin-Name: 28aa1f4ea8dad56ffedb31d6c2bc27c1d6be2407
2009-09-09 11:37:20 +00:00
dan
e0af83aca6
Combine the OP_Statement and OP_Transaction opcodes.
...
FossilOrigin-Name: aec9dbd8d21c55c3945287a3dfa55d3ed168f977
2009-09-08 19:15:01 +00:00
dan
165921a742
Changes to support recursive triggers.
...
FossilOrigin-Name: 9b9c19211593d5ff7b39254a29c284560a8bcedb
2009-08-28 18:53:45 +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
8c5d152b53
Force 8-byte alignment of sqlite3_value objects in the
...
sqlite3VdbeUnpackRecord() primitive. Ticket #3777 . (CVS 6479)
FossilOrigin-Name: 2cc68272b1f70701268075cfa82fa64bb2a8179d
2009-04-10 00:56:28 +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
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
23f79d061f
Modify the sqlite3VdbeUnpackRecord() interface to force the temporary
...
space to be 8-byte aligned. This might be important for Sparc.
Ticket #3318 . (CVS 5573)
FossilOrigin-Name: 00b177985ee08f13a7781d095936da3beaf0408c
2008-08-20 22:06:47 +00:00
drh
e63d999189
Additional changes toward fixing ticket #3292 . (CVS 5562)
...
FossilOrigin-Name: 0b92cbf5255020d4fde382f81590ff0488936667
2008-08-13 19:11:48 +00:00
drh
ec1fc80ca3
A partial fix for ticket #3292 . This fixes the original problem but there
...
are other similar problems lurking in the code still. (CVS 5561)
FossilOrigin-Name: 055f173ab1b6fb657bf817faa3a37335d8fa60d5
2008-08-13 14:07:40 +00:00
drh
c890fec362
Bring test coverage up to 99%. (CVS 5522)
...
FossilOrigin-Name: 2cd6bae80984126023bcf479e5f3db5eaa5c4134
2008-08-01 20:10:08 +00:00
drh
0acb7e4849
The compound-select merge optimization passes quick.test with no errors. (CVS 5299)
...
FossilOrigin-Name: 8bbfa97837a74ef0514e0c92ea2a6576f02cc361
2008-06-25 00:12:41 +00:00
drh
16ee60fff9
Add new Compare and Jump codes to the virtual machine. Use them in the
...
implementation of aggregate queries. (CVS 5257)
FossilOrigin-Name: 083113652ff8f69b18cf1611710fdbbe5fbd9fef
2008-06-20 18:13:25 +00:00
shane
9bcbdad298
Consolidated inline assembly versions of "hwtime()" into hwtime.h. Provided MSVC version. Modified code for consistent use of hwtime(). Changed implementation to use sqlite_uint64 and sqlite_int64 instead of unsigned long long int and long long int for MSVC compiler support. (CVS 5178)
...
FossilOrigin-Name: 9883b406ce24eae93942ee5e6aab33fb6b05329f
2008-05-29 20:22:37 +00:00
drh
e265b08458
Fix harmless compiler warnings. (CVS 5073)
...
FossilOrigin-Name: 227a6f67c21c87a7cf98f84b9d57a6dc9da93ebb
2008-05-01 17:03:49 +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
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
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
3f913576e5
Add the SQLITE_OMIT_DECLTYPE compile-time option. Remove more code when
...
SQLITE_ENABLE_COLUMN_METADATA is not defined. (CVS 4906)
FossilOrigin-Name: 8ef26646cff9be75c584a9abfcfffcfdb49b3969
2008-03-22 01:07:17 +00:00
drh
127b0a6105
Remove unused p4 element from the {quote: VdbeOpList} object. (CVS 4720)
...
FossilOrigin-Name: 1c37d7b69b672987a6974f4193f933666f4f0c3a
2008-01-17 17:27:30 +00:00
drh
c920628f26
Fix the build for AIX and other systems where "char" is unsigned by default. (CVS 4699)
...
FossilOrigin-Name: 47672af0c658573c6b305d224c6901058b8c0e00
2008-01-09 18:31:45 +00:00
drh
3557335658
Registerify the comparison opcodes. (CVS 4697)
...
FossilOrigin-Name: 8862ce9ceefba4f5d1ffbd51d824c05f42a58c22
2008-01-08 23:54:25 +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
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
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
drh
119a531de4
Add operands p4 and p5 to the VdbeOp structure. (CVS 4659)
...
FossilOrigin-Name: ad528735e41ce2ec2e680b12e562d4ddb6650985
2008-01-02 17:25:54 +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
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
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
fb98264aab
Fix for the sqlite3AbortOtherActiveVdbes() problem. (CVS 4328)
...
FossilOrigin-Name: e40d40a5d41c491bef852a92e5846b273b206909
2007-08-30 01:19:59 +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
87cc3b3180
Remove compiler warnings in the amalgamation. (CVS 3960)
...
FossilOrigin-Name: c5754530c6b1a8151c558f33d27fed70c95a988b
2007-05-08 21:45:27 +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
3c23a88562
When an automatic re-prepare occurs, take care not to reset the internal
...
schema symbol table. Ticket #2156 . This change also includes some debugging
enhancements. (CVS 3578)
FossilOrigin-Name: 43fe7fc1c38f8d9b3c1346cb1d890c2e25cefe15
2007-01-09 14:01:13 +00:00
drh
c515525765
Fix a critical bug in sqlite3_prepare_v2 that can lead to segfaults when
...
the schema changes and the statement is recompiled automatically.
Ticket #2154 . (CVS 3576)
FossilOrigin-Name: 3401388dba6c150f788397a4dfbcdb01313247e2
2007-01-08 21:07:17 +00:00
drh
b900aaf34a
First cut at adding the sqlite3_prepare_v2() API. Test cases added, but
...
more testing would be useful. Still need to update the documentation. (CVS 3506)
FossilOrigin-Name: f1efae9224170c9155afcf17ab3ee769a557b874
2006-11-09 00:24:53 +00:00
drh
4be8b51ee1
The echo module test is now running. Added the tclvar module test but have
...
not yet done anything with it. (CVS 3234)
FossilOrigin-Name: 29199eeea4c46168ccaa7535d4941bd740479dee
2006-06-13 23:51:34 +00:00
drh
a967e88645
Progress toward getting the virtual-table code generator to work. (CVS 3220)
...
FossilOrigin-Name: 3532f1340f939b0231c1d82a7b2d186cb096fb29
2006-06-13 01:04:52 +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