/ File History
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History of src/callback.c

2019-10-22
01:00
Move the sqlite3LocateCollSeq(), sqlite3FindCollSeq(), and sqlite3GetCollSeq() routines so that they are all beside one another in the callback.c source file. No logic changes. file: [88615dfc] check-in: [9ff80a9b] user: drh branch: trunk, size: 17793
2019-08-06
11:45
Add an assert() to the code on this branch. file: [2e6db109] check-in: [fdd44bbb] user: dan branch: reuse-schema, size: 28692
2019-03-21
17:13
Disable the feature on this branch in non-SQLITE_ENABLE_SHARED_SCHEMA builds. file: [5a9a83d7] check-in: [b8e53608] user: dan branch: reuse-schema, size: 28624
2019-03-20
20:02
Use the IsReuseSchema() macro more consistently. Also, rename it to IsSharedSchema(). file: [21d7b961] check-in: [c1be211c] user: dan branch: reuse-schema, size: 28475
2019-02-25
17:54
Where possible, avoid loading all schemas into memory for PRAGMA statements. file: [0d68a032] check-in: [64f97530] user: dan branch: reuse-schema, size: 28528
2019-02-20
18:44
Further test cases and fixes for SQLITE_OPEN_SHARED_SCHEMA. file: [f8b769a9] check-in: [ba0ab042] user: dan branch: reuse-schema, size: 28525
2019-02-15
19:36
Enhance the virtual table in test_schemapool.c so that it can be used to check that SHARED_SCHEMA connections are not allocating and freeing schemas when they should not be. file: [df42b547] check-in: [cb236cb9] user: dan branch: reuse-schema, size: 28583
19:00
Fix a problem with eponymous virtual tables and SHARED_SCHEMA databases. Also, after preparing statements that require all database schemas (REINDEX, ANALYZE, CREATE, DROP and some PRAGMA statements), do not allow the database connection to return more than one schema to each schema-pool. file: [434dc7a4] check-in: [ecf6251e] user: dan branch: reuse-schema, size: 28477
2019-02-14
21:04
Fix SQLITE_DBSTATUS_SCHEMA_USED so that it works with SQLITE_OPEN_SHARED_SCHEMA connections. file: [e60a0c39] check-in: [d43b3c05] user: dan branch: reuse-schema, size: 27913
18:38
Change the name of the SQLITE_OPEN_REUSE_SCHEMA flag to SQLITE_OPEN_SHARED_SCHEMA. file: [8d0402ae] check-in: [7257fcc8] user: dan branch: reuse-schema, size: 26909
15:47
Add missing comments and fix other code issues in the new functions in callback.c. file: [f9288203] check-in: [441cabb6] user: dan branch: reuse-schema, size: 26901
2019-02-13
18:29
Avoid crashing after parsing a corrupt schema with a REUSE_SCHEMA connection. file: [341911a8] check-in: [b102148e] user: dan branch: reuse-schema, size: 24676
2019-02-12
19:20
Share schemas between databases attached to the same database handle. file: [eaa832c5] check-in: [ea611d7c] user: dan branch: reuse-schema, size: 24661
2019-02-11
19:34
Add eponymous virtual table "schemapool". For inspecting the current contents of the schema-pool. file: [eca06835] check-in: [2ebeb747] user: dan branch: reuse-schema, size: 24098
2019-02-09
17:47
Fix virtual table support for SQLITE_OPEN_REUSABLE_SCHEMA connections. file: [6d9504d0] check-in: [3ca8856a] user: dan branch: reuse-schema, size: 24088
2019-02-08
19:30
Add test cases and fix problems on this branch. file: [b7a60c23] check-in: [2b2e9f81] user: dan branch: reuse-schema, size: 23891
2019-02-05
19:51
Merge latest trunk into this branch. file: [e81b2c18] check-in: [c089cc4f] user: dan branch: reuse-schema, size: 23857
19:15
Fix memory leaks on this branch. file: [7e4f5445] check-in: [e9c5e189] user: dan branch: reuse-schema, size: 24251
2019-02-04
21:02
Fix a problem with reloading the schema on this branch. file: [382a6e90] check-in: [5dfbef83] user: dan branch: reuse-schema, size: 21866
2019-02-02
21:02
Try new approach ensuring that each Schema object is only used by one connection/database at any one time. file: [0379d178] check-in: [9e8e5f52] user: dan branch: reuse-schema, size: 21411
2018-12-05
17:48
Simplifications to the sqlite3_normalized_sql() implementation. file: [25dda5e1] check-in: [94ea6379] user: drh branch: trunk, size: 16396
2018-11-15
21:20
Fix some problems with the feature on this branch. Many problems remain. file: [e5031c28] check-in: [31b6aee7] user: dan branch: reuse-schema1, size: 20256
2018-11-09
18:44
Merge latest trunk changes with this branch. file: [d1024235] check-in: [ae88f8e1] user: dan branch: reuse-schema, size: 20263
2018-10-29
17:53
Add the sqlite3_normalized_sql() API. file: [789bd33d] check-in: [592b66e8] user: mistachkin branch: normalized_sql, size: 16790
2018-10-08
20:57
Fix a problem with using virtual tables via reuse-schema connections. file: [b4628694] check-in: [e5897daf] user: dan branch: reuse-schema, size: 19869
18:58
Merge latest trunk changes into this branch. file: [83fb1341] check-in: [2ac72114] user: dan branch: reuse-schema, size: 19841
2018-05-26
16:00
Store application-defined function names as lower-case to avoid the need for case conversions before calling xFindFunction on virtual tables. Avoid using lookaside to store the destructors for application defined functions, as lookaside should be reserved for transient allocations. file: [36caff1e] check-in: [777189ce] user: drh branch: trunk, size: 16396
2017-12-08
19:37
The query planner tries to avoids using indexes that use unknown collating functions. file: [fe677cb5] check-in: [02013fc1] user: drh branch: trunk, size: 16317
2017-08-17
02:26
Defer schema resets when the query planner is running. Proposed fix for ticket [be436a7f4587ce517]. file: [28a8ede9] check-in: [a7bc7752] user: drh branch: trunk, size: 16270
2017-08-09
20:35
Add experimental sqlite3_open_v2() flag SQLITE_OPEN_REUSE_SCHEMA. For sharing identical in-memory schema objects between connections. file: [cc17a561] check-in: [a6256980] user: dan branch: reuse-schema, size: 19700
2017-07-26
19:59
Add the new sqlite3.mDbFlags field. Factor out bits of sqlite3.flags that do not interact with PRAGMA statements into sqlite3.mDbFlags. file: [930648a0] check-in: [3808a00f] user: drh branch: trunk, size: 16255
2017-07-06
13:23
Avoid unnecessary upper-to-lower case conversion for function names when registering the built-in functions. file: [8e14b60d] check-in: [06269257] user: drh branch: trunk, size: 16252
03:06
Small size reduction in findCollSeqEntry(). file: [846e4b0b] check-in: [55ecd303] user: drh branch: trunk, size: 16231
02:49
Avoid unnecessary calls to sqlite3GetCollSeq() for a small performance gain. file: [bd998420] check-in: [503ba172] user: drh branch: trunk, size: 16264
2016-02-24
19:57
Change a char* to const char* in order to suppress some harmless compiler warnings. file: [2e761477] check-in: [56f62e34] user: drh branch: trunk, size: 16246
2016-02-15
00:34
Improvements to the application-defined function mechanism so that it is more compact and runs faster, especially when the application defines thousands of new SQL functions. file: [0643b8fb] check-in: [3201fbcc] user: drh branch: many-app-functions, size: 16237
2016-02-05
01:55
Improvements to the way that OOM errors are processed. file: [ed6c2a4a] check-in: [c3ef0347] user: drh branch: oom-handling, size: 16135
2016-01-14
22:19
Combine the xFunc and xStep pointers of the FuncDef object into a single pointer xSFunc. file: [29ae4fab] check-in: [0d1b3d7d] user: drh branch: trunk, size: 16137
2014-12-05
14:36
Add code to check the validity of CollSeq objects during runtime. This code was not able to detect anomalies such as came up as a result of ticket [e4a18565a36884b00edf66541f38c693827968ab] so it is put into a branch for historical reference, with the intent of leaving it out of trunk. file: [759c9aff] check-in: [68b23c3d] user: drh branch: collseq-checking, size: 17132
2014-09-06
16:39
Fix typos in comments. No code changes. file: [7b44ce59] check-in: [e62aab5e] user: peter.d.reid branch: trunk, size: 16203
2014-08-21
20:26
Simplify the interface to the symbol table, saving 600 bytes of code space. file: [b97d0695] check-in: [14b0f561] user: drh branch: trunk, size: 16204
2014-08-05
11:04
Rename the internal Schema.flags field to Schema.schemaFlags. file: [fcff28cf] check-in: [5ae80b3c] user: drh branch: trunk, size: 16217
2013-12-14
13:44
Allow the SQLITE_DETERMINISTIC flag to be ORed into the preferred text encoding of application-defined functions, to mark the function as deterministic. file: [174e3c86] check-in: [5716fc23] user: drh branch: trunk, size: 16205
2013-09-06
13:10
Combine the FuncDef.iPrefEnc and FuncDef.flags fields into a single new FuncDef.funcFlags field. file: [f99a8957] check-in: [97b10e66] user: drh branch: trunk, size: 16281
2012-10-05
14:43
Consolidate all occurrences of the "no such collation sequence" error message into a single spot. file: [d7e46f40] check-in: [8ea67522] user: drh branch: trunk, size: 16254
2012-04-07
00:09
Fix the application-defined function logic so that functions with a variable number of parameters can be replaced or deleted correctly. Also refactor some of the function-finder code for clarity of presentation. file: [0cb4228c] check-in: [09d5581c] user: drh branch: trunk, size: 16185
2011-04-04
13:40
Rename sqlite3SchemaFree() to sqlite3SchemaClear() to more accurately reflect its function. file: [0425c632] check-in: [71d74400] user: drh branch: schema-parse-refactor, size: 15344
2011-03-18
21:55
Add a generation counter to the Schema object and enhance OP_VerifySchema to also check the Schema generation. Fix for ticket [f7b4edece25c99]. file: [5069f224] check-in: [36c04dd1] user: drh branch: trunk, size: 15342
2010-09-16
19:49
Updates to the requirements on the sqlite3_create_function() family of interfaces. file: [a1d1b1c9] check-in: [f03c6089] user: drh branch: trunk, size: 15266
2010-07-24
16:34
Make sure all memory from sqlite3DbMalloc() is freed by sqlite3DbFree() and all memory from sqlite3_malloc() is freed by sqlite3_free(). file: [da3c38d0] check-in: [ac1f37a6] user: drh branch: malloc-enhancement, size: 15263
2010-07-23
17:06
Remove additional traces (mostly in comments) of the Table.dbMem field. file: [4e565b7f] check-in: [5c58f44a] user: drh branch: trunk, size: 15258
15:41
Remove the Table.dbMem variable, as it is no longer being used for its original purpose. file: [907455fa] check-in: [6eddc6e6] user: dan branch: trunk, size: 15288
2010-04-24
14:02
When commands such as ALTER TABLE and VACUUM use SQL internally, make sure they use only the built-in functions and not application-defined overrides for those functions. file: [01843bdf] check-in: [0291ed97] user: drh branch: trunk, size: 15285
2009-11-10
01:30
Remove the obsolete "$Id:$" RCS identifier strings from the source code. file: [908f3e01] check-in: [f6c045f6] user: drh branch: trunk, size: 15035
2009-09-19
17:00
Check in implementation of foreign key constraints. file: [10d23717] check-in: [d5d39981] user: dan branch: trunk, size: 15094
2009-09-07
04:38
Warning cleanup from the MSVC compile. file: [f49c305d] check-in: [26cd015c] user: shane branch: trunk, size: 15019
2009-08-20
02:34
All the sqlite3GetCollSeq() function to specify an arbitrary text encoding. file: [9bc0ae99] check-in: [4ee44322] user: drh branch: trunk, size: 15019
2009-06-17
00:35
Changes to prepare.c and callback.c to promote better test coverage. (CVS 6770) file: [cb68b21b] check-in: [08cca219] user: drh branch: trunk, size: 14963
2009-05-20
02:40
Updates to the extension loading logic to support full coverage testing. (CVS 6659) file: [57359fa9] check-in: [929cfbc6] user: drh branch: trunk, size: 15029
2009-05-11
20:53
Rework the logic that generates a schema for tables created using "CREATE TABLE ... AS SELECT ...". Instead of trying to copy the raw datatype string from the right-hand side, just make the type one of TEXT, INT, REAL, NUM, or nothing. This is much simpler than trying to parse and quote datatype strings. Other minor implifications to build.c are bundled with this change. (CVS 6626) file: [bf295cfd] check-in: [33cf8359] user: drh branch: trunk, size: 14978
2009-05-03
20:23
Changes to facility full coverage testing of util.c. (CVS 6597) file: [c54a923b] check-in: [a6122990] user: drh branch: trunk, size: 14791
2009-05-02
13:29
Remove the aFKey hash table, which was not being used. Simplify the FKey object. Simplify the hash.c module since the copyKey parameter formerly used only by aFKey is now no longer required. (CVS 6594) file: [3aff18ce] check-in: [80c43a35] user: drh branch: trunk, size: 14795
2009-03-24
15:08
Changes to insure that lookaside memory allocations are never used to hold schema content. Ticket #3743. (CVS 6377) file: [73016376] check-in: [ea74d8dc] user: drh branch: trunk, size: 14882
2009-03-05
04:20
Corrected typos and misspellings. Ticket #3702. (CVS 6336) file: [09c6fedc] check-in: [6404afa0] user: shane branch: trunk, size: 14854
2009-01-31
22:28
Better error message when coalesce() has too few arguments. Ticket #3623. (CVS 6222) file: [5f10bca8] check-in: [9cd43c82] user: drh branch: trunk, size: 14851
2008-12-10
21:19
Additional work at eliminating silly compiler warnings. (CVS 6010) file: [bee8949d] check-in: [ea01d437] user: drh branch: trunk, size: 14736
19:26
Never use strlen(). Use our own internal sqlite3Strlen30() which is guaranteed to never overflow an integer. Additional explicit casts to avoid nuisance warning messages. (CVS 6007) file: [5538f3fb] check-in: [c872d554] user: drh branch: trunk, size: 14731
2008-10-10
17:41
Simplify the symbol hash table to use only a single key class. Other changes to improve code coverage. (CVS 5794) file: [e970e5be] check-in: [ff50a8a7] user: drh branch: trunk, size: 14713
2008-09-09
12:31
Calling sqlite3_create_function with nArg==(-1) does not override prior calls on the same function name with nArg>=0. Ticket #3345. Add the new -argcount option to the "function" method in the TCL interface. (CVS 5684) file: [7a40fd44] check-in: [5aa5b804] user: drh branch: trunk, size: 14833
2008-09-01
18:34
Begin adding support for the SQLITE_OMIT_WSD macro. Some (many) WSD variables still need wrappers added to them. (CVS 5652) file: [cfc8d4f9] check-in: [573d92ab] user: danielk1977 branch: trunk, size: 14488
2008-08-21
20:21
Move date+time functions to start-time initialization. Additional start-time function cleanup. (CVS 5585) file: [27e55dfa] check-in: [80d6a31c] user: drh branch: trunk, size: 14427
18:49
Initialize the global built-in function table at start-time instead of at compile-time. This is less prone to malfunction when compile-time parameters very. (CVS 5583) file: [26f18b3c] check-in: [ef6936e5] user: drh branch: trunk, size: 14424
2008-08-20
14:49
Add the pcache module from the experimental branch. Also change things so that most of the built-in SQL functions are kept in single static hash-table, rather than creating and populating a separate hash table for each open database connection. (CVS 5566) file: [1b1a5c58] check-in: [cb494e10] user: danielk1977 branch: trunk, size: 13411
2008-07-28
19:34
Implement the "lookaside" memory allocation cache. Use of this cache makes the speed1.test script run about 15% faster. Added new interfaces to control the cache. (CVS 5488) file: [c9f75a4c] check-in: [e48f9697] user: drh branch: trunk, size: 12750
2008-07-08
14:52
Improved enforcement of the SQLITE_LIMIT_LENGTH limit. (CVS 5368) file: [aa492a0a] check-in: [ee931508] user: drh branch: trunk, size: 12727
2008-06-23
16:53
Fix a bug causing the pager-cache size to be reset to its default value whenever the database schema was reloaded. (CVS 5283) file: [3ba98ae4] check-in: [6dbe67da] user: danielk1977 branch: trunk, size: 12713
2007-08-29
12:31
Modifications to the malloc failure tests to test transient and persistent failures. (CVS 4321) file: [77b302b0] check-in: [e38ef81b] user: danielk1977 branch: trunk, size: 12660
2007-08-22
20:18
The malloc.test script now passes all tests with no errors. (CVS 4271) file: [a542236a] check-in: [db818430] user: drh branch: trunk, size: 12615
2007-08-21
19:33
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) file: [fdd52737] check-in: [92872761] user: drh branch: trunk, size: 12574
2007-08-16
10:09
More work on refactoring of malloc() interfaces. There are still many errors. (CVS 4233) file: [14343645] check-in: [77b16713] user: danielk1977 branch: trunk, size: 12590
04:30
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) file: [5680c2b8] check-in: [deb7ecd6] user: drh branch: trunk, size: 12572
2007-05-07
09:32
Add the experimental create_collation_x() api. (CVS 3934) file: [9c125356] check-in: [ff49d48f] user: danielk1977 branch: trunk, size: 12526
2007-04-16
15:06
Ensure sqlite3_finalize() can be called from within the xDisconnect() method of virtual tables. (CVS 3845) file: [6414ed32] check-in: [8d6c3bfc] user: danielk1977 branch: trunk, size: 12462
2007-02-02
12:44
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) file: [31d22b49] check-in: [9740aa95] user: drh branch: trunk, size: 12457
2006-05-24
12:43
When opening a new connection on a shared cache, be careful not to overwrite the encoding flag on the shared cache. Ticket #1824. (CVS 3190) file: [fd9bb39f] check-in: [c8e5ceed] user: drh branch: trunk, size: 12224
2006-03-14
11:08
Make sure sqlite3FindCollSeq() returns NULL after a malloc() failure. (CVS 3134) file: [d8c5ab1c] check-in: [0e05355f] user: drh branch: trunk, size: 12198
2006-03-13
15:06
Get parserless builds working again. (CVS 3133) file: [2c69d539] check-in: [5ddc09a5] user: drh branch: trunk, size: 12165
2006-01-18
16:51
Use a global variable protected by a mutex instead of thread-specific-data to record malloc() failures. (CVS 2972) file: [1bf49730] check-in: [ac090f2a] user: danielk1977 branch: trunk, size: 10553
2006-01-11
21:41
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) file: [ba3e6cc7] check-in: [5d9c6aa9] user: drh branch: trunk, size: 10565
2006-01-10
17:58
Store collation sequence names instead of pointers in sharable schema data structures. (CVS 2904) file: [51fe8133] check-in: [0f0213be] user: danielk1977 branch: trunk, size: 10551
2006-01-09
16:12
Fix some errors to do with attached databases and text encodings in shared-cache mode. (CVS 2895) file: [1c2b78a2] check-in: [3e75d3d5] user: danielk1977 branch: trunk, size: 10460
06:29
Rename DbSchema to "Schema" and SqliteTsd to "ThreadData". (CVS 2893) file: [79cfbac5] check-in: [82b81f69] user: danielk1977 branch: trunk, size: 10460
2005-12-14
22:51
Avoid using the transient value in the UTF-16 collation needed callback. (CVS 2816) file: [62066afd] check-in: [ab6241af] user: drh branch: trunk, size: 10445
20:11
Properly zero-terminate UTF-16 collation names on an sqlite3_collation_needed16 callback. (CVS 2815) file: [16f8198d] check-in: [71a49d05] user: drh branch: trunk, size: 10428
2005-12-06
12:52
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) file: [4bc404e9] check-in: [e1606658] user: danielk1977 branch: trunk, size: 10433
2005-10-20
07:28
Changes to prevent various compiler warnings. (CVS 2750) file: [90ab4f23] check-in: [e261b8b0] user: drh branch: trunk, size: 10420
2005-08-14
01:20
The case_sensitive_like pragma added. Test cases added for the LIKE optimization. (CVS 2592) file: [9a1162c8] check-in: [72ee21c0] user: drh branch: trunk, size: 10417
2005-05-25
10:45
Rearrange code so that SSE can invoke the collation factory. (CVS 2482) file: [0910b611] check-in: [ea061d2e] user: danielk1977 branch: trunk, size: 10465
2005-05-24
12:01
Move a few things around to make building without the parser easier. (CVS 2479) file: [c80e399e] check-in: [5fadb464] user: danielk1977 branch: trunk, size: 6727 Added