/ File History
Login
SQLite training in Houston TX on 2019-11-05 (details)
Part of the 2019 Tcl Conference

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

History of src/hash.c

2019-04-13
14:07
Fixes for harmless compiler warnings. file: [8d7dda24] check-in: [c28c973a] user: drh branch: trunk, size: 8111
2018-12-05
13:39
Enhance the sqlite3_normalize_sql() interface so that it works even if the prepared statement was not initially compiled using SQLITE_PREPARE_NORMALIZED. Enhance the ".trace" command in the CLI so that it is able to access the full scope of functionality provided by sqlite3_trace_v2() and in particular so that it is able to show normalized SQL output using the newly enhanced sqlite3_normalize_sql() interface. file: [6d2f6727] check-in: [7da617e9] user: drh branch: trunk, size: 9871
2018-10-29
17:53
Add the sqlite3_normalized_sql() API. file: [931ec82d] check-in: [592b66e8] user: mistachkin branch: normalized_sql, size: 9856
2017-07-05
23:33
Make the hash table implementation a little smaller and faster. file: [a12580e1] check-in: [f762f1ef] user: drh branch: trunk, size: 8112
2016-09-28
20:42
Use Knuth multiplicative hashing for the symbol table. file: [63d0ee75] check-in: [cc29ddd6] user: drh branch: trunk, size: 8072
2016-04-28
14:15
Use comments to mark several branches as optimizations. No changes to code. file: [55b5fb47] check-in: [33e62747] user: drh branch: trunk, size: 7855
2015-09-25
16:29
Disable the SQLITE_TESTCTRL_BENIGN_MALLOC_HOOKS mechanism and replace it with SQLITE_TESTCTRL_BENIGN_MALLOC_CTRL, which gives better control. file: [5b5ce67b] check-in: [2c57b2f3] user: drh branch: malloc-testing, size: 7784
2014-08-21
20:26
Simplify the interface to the symbol table, saving 600 bytes of code space. file: [4263fbc9] check-in: [14b0f561] user: drh branch: trunk, size: 7799
2014-05-19
15:16
Changes to help ensure that a multiplication does not overflow when computing the number of bytes needed for a memory allocation, and cause a malfunction. No problems existing problems were discovered. However, these changes should help to ensure that no problems arise in the future. file: [a3dc015f] check-in: [17349a49] user: drh branch: safer-malloc, size: 8176
2014-01-24
16:36
Use an unsigned integer to accumulate the string hash. Avoids compiler warnings. file: [d1393199] check-in: [b1824344] user: drh branch: trunk, size: 8171
2012-10-18
10:35
More warning fixes. file: [ac3470bb] check-in: [51a6a797] user: mistachkin branch: warnings, size: 8162
2012-08-07
15:19
Fix a bug in hash.c introduced by [305b66672653]. file: [a4031441] check-in: [17cb5e95] user: dan branch: trunk, size: 8162
2012-07-30
14:53
Replace a few sqlite3_malloc()+memset() sequences with calls to sqlite3MallocZero(). file: [1f35276f] check-in: [305b6667] user: dan branch: trunk, size: 7811
2009-11-10
01:30
Remove the obsolete "$Id:$" RCS identifier strings from the source code. file: [458488dc] check-in: [f6c045f6] user: drh branch: trunk, size: 7857
2009-05-09
23:29
Convert an always-true condition in hash.c into an assert(). (CVS 6624) file: [ebcaa921] check-in: [42372999] user: drh branch: trunk, size: 7912
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: [7e90268f] check-in: [80c43a35] user: drh branch: trunk, size: 7896
2009-04-28
17:33
Fix asserts in hash.c so that zero-length symbols can be used. (CVS 6563) file: [0caea57f] check-in: [fe9f00aa] user: drh branch: trunk, size: 8753
15:43
Simplifications to the symbol table implementation in hash.c. For very small symbol tables (less than 10 entries) a simple linked list is used instead of a hash table. Number of hash table buckets is limited to prevent large allocations. (CVS 6559) file: [407e5ca1] check-in: [5c737835] user: drh branch: trunk, size: 8750
13:01
Do not store the zero string terminator as part of the name when holding symbols in the symbol table. (CVS 6557) file: [15d39cbe] check-in: [23d67af3] user: drh branch: trunk, size: 8942
2009-01-09
01:12
Increased test coverage. (CVS 6147) file: [5824e6ff] check-in: [45bb5703] user: drh branch: trunk, size: 8965
2008-12-10
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: [831e9c19] check-in: [c872d554] user: drh branch: trunk, size: 8979
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: [582c0061] check-in: [ff50a8a7] user: drh branch: trunk, size: 8970
2008-06-20
14:59
Add a mode to the sqlite3_test_control() interface to register hooks called at the beginning and end of "benign malloc failure" blocks. This allows malloc() failure testing to be done using public APIs only. (CVS 5254) file: [eb64e48f] check-in: [56c8af14] user: danielk1977 branch: trunk, size: 12838
2008-06-15
02:51
Continuing work on the new memory allocation subsystem. Added routines for temporary memory allocation. Right the btree balance mechanism to only do one temporary allocation at a time. (CVS 5220) file: [283864c1] check-in: [65fe7b62] user: drh branch: trunk, size: 12882
2008-05-13
13:27
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) file: [fd8cb06f] check-in: [a9d1d931] user: drh branch: trunk, size: 12884
2008-04-02
18:33
Minor optimizations. (CVS 4955) file: [522a8f5a] check-in: [e8529455] user: drh branch: trunk, size: 12855
2008-02-18
22:24
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) file: [53655c31] check-in: [63da5d97] user: drh branch: trunk, size: 12881
2008-01-22
21:30
Add the fault injector module in fault.c. Use it as a basis for memory allocation failure testing. (CVS 4742) file: [2dc6afe7] check-in: [1a335e18] user: drh branch: trunk, size: 12796
2007-09-04
14:31
Add internal locking to the test_async.c backend. So that more than one connection may be used from within a single process. (CVS 4396) file: [45a7005a] check-in: [17ca684c] user: danielk1977 branch: trunk, size: 12729
2007-09-03
15:03
Fix a problem in hash.c when replacing entries in tables configured with copyKey==0. (CVS 4375) file: [06c69a3a] check-in: [a19d3a73] user: danielk1977 branch: trunk, size: 12323
2007-08-29
12:31
Modifications to the malloc failure tests to test transient and persistent failures. (CVS 4321) file: [8fe2fa52] check-in: [e38ef81b] user: danielk1977 branch: trunk, size: 12222
2007-08-16
10:09
More work on refactoring of malloc() interfaces. There are still many errors. (CVS 4233) file: [2f322979] check-in: [77b16713] user: danielk1977 branch: trunk, size: 11927
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: [05ebefb8] check-in: [deb7ecd6] user: drh branch: trunk, size: 11916
2007-03-31
03:59
Fix a long-standing memory leak in the hash table. The leak only appears following a malloc failure of a hash that copies its keys, which rarely happens and so we have not previously noticed it. (CVS 3777) file: [67b23e14] check-in: [2aae1964] user: drh branch: trunk, size: 11942
2006-02-14
10:48
Changes so that test_async.c works with memory management turned on. (CVS 3093) file: [449f3d66] check-in: [f4150c29] user: danielk1977 branch: trunk, size: 11896
2005-10-03
15:11
The hash tables deallocate when empty in order to avoid nuisanse complaints from valgrind. Added tests to verify no hash table memory leaks in os_unix.c. (CVS 2738) file: [8747cf51] check-in: [080eadca] user: drh branch: trunk, size: 11838
2005-01-31
12:56
Move sqlite3HashNoCase to hash.c. (CVS 2294) file: [2b1b13f7] check-in: [5c10ccd8] user: danielk1977 branch: trunk, size: 11738
2004-08-20
14:08
Optimizations in the hash table module. (CVS 1896) file: [a97721a5] check-in: [d5b0269e] user: drh branch: trunk, size: 11573
2004-06-30
22:43
Do not use "new" as a variable name - some compilers think it is a keyword. (CVS 1787) file: [f0a2f22c] check-in: [8a6e4ea7] user: drh branch: trunk, size: 11205
03:08
Improved test coverage of func.c and hash.c. (CVS 1772) file: [148e3512] check-in: [0c999f28] user: drh branch: trunk, size: 11196
2004-05-08
08:23
Change lots of internal symbols from sqliteXXX to sqlite3XXX so that the library links again. It doesn't work yet, due to changes in the btree layer calling convention. (CVS 1324) file: [440c2f8c] check-in: [8af6474c] user: danielk1977 branch: trunk, size: 11143
2004-01-08
02:17
Remove unused code and tighten existing code to make the library a little smaller. (CVS 1168) file: [9b56ef3b] check-in: [34a6b741] user: drh branch: trunk, size: 11126
2003-05-12
23:06
Make sure hash functions always return non-negative. (CVS 969) file: [058f077c] check-in: [39a3e403] user: drh branch: trunk, size: 11062
2003-01-02
14:43
Code optimizations to help the library run faster. (CVS 808) file: [4fc39feb] check-in: [db745e87] user: drh branch: trunk, size: 11068
2002-05-21
23:44
Fix for ticket #47: Use a cast to avoid a warning about discarding a "const" inside of hash.c. (CVS 577) file: [6a6236b8] check-in: [0c903461] user: drh branch: trunk, size: 11065
2002-02-23
23:45
Added support for user-defined normal functions. Support for user-defined aggregates is pending. (CVS 390) file: [cc259475] check-in: [c490a1ff] user: drh branch: trunk, size: 11071
2002-01-14
09:28
Fix warning messages in VC++. Patches from nicolas352001. (CVS 347) file: [8f7c740e] check-in: [f3038d21] user: drh branch: trunk, size: 11052
2002-01-06
17:07
Comment updates most. Also some small changes to the VDBE. (CVS 339) file: [838a6f2a] check-in: [9b0be4fc] user: drh branch: trunk, size: 11044
2001-11-21
02:21
Attempting to add support for 64-bit platforms. (CVS 314) file: [6f1a7712] check-in: [03673adb] user: drh branch: trunk, size: 9727
2001-10-22
02:58
More changes for 2.0.7. (CVS 293) file: [d0110e6d] check-in: [f8328a5f] user: drh branch: trunk, size: 9695
2001-10-12
17:30
Fix an assertion failure when the disk fills up. Add tests for a full disk situation. (CVS 285) file: [b7ced073] check-in: [0a7848b6] user: drh branch: trunk, size: 9636
2001-09-22
18:12
Put in a generic hash table system in place of the various ad-hoc hash table scattered everywhere. Except, the page hash table in the pager is unchanged. (CVS 260) file: [bf36fb4c] check-in: [9114420d] user: drh branch: trunk, size: 9646 Added