SQLite

Timeline
Login

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

123 check-ins using file ext/fts3/fts3_unicode2.c version c8adda75

2014-08-06
14:36
Fix harmless compiler warnings. In the command-line shell, report if the ".system" command returns a non-zero result. (check-in: 1202e977 user: drh tags: trunk)
12:00
Merge the second InterlockedCompareExchange() fix from trunk. (check-in: 69018967 user: drh tags: sessions)
11:58
Fix an obsolete comment in the func.c source file. No changes to code. (check-in: 5c6bb57d user: drh tags: trunk)
11:57
On the windows VFS, do not try to make InterlockedCompareExchange an overloadable function, since sometimes it is a macro. (check-in: ab1a751e user: drh tags: trunk)
11:49
Fix an obsolete comment in the func.c source file. No changes to code. (check-in: 7a145c94 user: drh tags: sessions)
03:16
Merge in the fix for the InterlockedCompareExchange() build issue. (check-in: 091aa5f1 user: drh tags: sessions)
03:06
In the Win32 VFS, work around InterlockedCompareExchange() being a macro on some platforms (e.g. x64). (check-in: 7be244ce user: mistachkin tags: trunk)
02:03
Merge all recent changes from trunk. (check-in: a353a851 user: drh tags: threads)
01:51
Merge 3.8.6 beta changes in from trunk. (check-in: b2e01080 user: drh tags: apple-osx)
01:25
Merge the latest 3.8.6 beta changes from trunk. (check-in: 68a6d5e2 user: drh tags: sessions)
01:08
Fix typos in the opcode documentation. Comment changes only. No changes to code. (check-in: 717245d4 user: drh tags: trunk)
00:29
A simpler fix for ticket [3a88d85f36704eebe1] - one that uses less code. The error message is not quite as good, but as this error has apparently not previously occurred in over 8 years of heavy use, that is not seen as a serious problem. (check-in: 0ad1ed8e user: drh tags: trunk)
2014-08-05
21:31
Ensure that aggregate functions are not used when evaluating a default value for a table column. Candidate fix for ticket [3a88d85f36704eebe134f7]. (check-in: 29ba8128 user: drh tags: trunk)
19:16
Add the ability to evaluate IN operators as a sequence of comparisons as an alternative to the long-standing algorithm of building a lookup table. Use the new implementation in circumstances where it is likely to be faster, such as when the RHS of the IN changes between successive evaluations. (check-in: 95286821 user: drh tags: trunk)
11:04
Rename the internal Schema.flags field to Schema.schemaFlags. (check-in: 5ae80b3c user: drh tags: trunk)
00:53
Improved VdbeCoverage() macros. A few minor simplifications to generated VDBE code. (Closed-Leaf check-in: 01f60027 user: drh tags: IN-operator-improvements)
2014-08-04
21:26
Part of the change in the previous check-in was incorrect and can result in an incorrect UPDATE for WITHOUT ROWID tables. This check-in fixes the problem. (check-in: ee5f6eae user: drh tags: IN-operator-improvements)
18:50
Further enhancements to IN-operator processing. (check-in: 7fdf26da user: drh tags: IN-operator-improvements)
16:39
Refinements to the enhanced IN-operator logic. (check-in: 92ba2821 user: drh tags: IN-operator-improvements)
15:12
Changed my mind: This opcode name changes mere creates unnecessary diff marks between older and newer versions without significantly improving readability. Was: Rename the IsNull opcode to IfNull and rename the NotNull opcode to IfNotNull. (Closed-Leaf check-in: 2f724cba user: drh tags: deadend)
2014-08-02
21:03
Enhancements to the code generator for the IN operator that result in much faster queries in some cases, for example when the RHS of the IN operator changes for each row of a large table scan. (check-in: 436e8842 user: drh tags: IN-operator-improvements)
20:44
Remove (newly) incorrect preprocessor check to fix build on WinRT. (check-in: ba782654 user: mistachkin tags: trunk)
2014-08-01
21:12
A better comment on the generated code for the NULL-in-RHS-of-IN detection logic. (check-in: 9bc1c730 user: drh tags: trunk)
21:00
Improved detection and handling of NULL values on the RHS of a IN operator. (check-in: 468e7300 user: drh tags: trunk)
18:00
Remove an unnecessary OP_Null in the IN-operator logic. Attempt to clarify comments explaining the IN-operator code, though it is not clear that the comments are correct even yet - more work to be done. (check-in: c11e55fa user: drh tags: trunk)
15:51
Clean up the IN operator code generation logic to make it easier to reason about. In the process, improve code generation to omit some unused OP_Null operations. (check-in: 7c6fbcfe user: drh tags: trunk)
15:34
The idea of coding IN operator with a short list on the RHS as an OR expression turns out to be helpful. If the list is of length 1 or 2, the OR expression is very slightly faster, but the ephemeral table approach is clearly better for all list lengths greater than 2. Better to keep the code simple. (Closed-Leaf check-in: e13175d3 user: drh tags: IN-operator-improvements)
14:46
Begin making changes to the IN operator in an attempt to make it run faster and to make the code easier to understand. (check-in: ee0fd6aa user: drh tags: IN-operator-improvements)
01:40
Enhance the PRAGMA integrity_check command to detect UNIQUE and NOT NULL constraint violations. (check-in: 9abcf269 user: drh tags: trunk)
2014-07-31
22:59
Refactoring: Change "pIndex->onError!=OE_None" to use a macro: "IsUniqueIndex(pIndex)". Easier to understand that way. (check-in: e75b26ee user: drh tags: trunk)
20:16
Omit a pointless OP_Null when processing a value-list RHS of an IN operator where the LHS is a rowid. (check-in: 1361450a user: drh tags: trunk)
18:54
Optimizations to the OS sub-type checking in the Win32 VFS. (check-in: 1e5489fa user: mistachkin tags: trunk)
18:14
Add a missing call to "test_sqlite3_log" to multiplex.test. (check-in: 0708f9df user: dan tags: trunk)
17:35
Fix a leaked database handle in pager2.test. (check-in: 47457b04 user: dan tags: trunk)
15:44
Deactivate the DISTINCT in a SELECT on the right-hand side of an IN operator, since it should not make any difference in the output but dues consume extra memory and CPU time. (check-in: f4cb5365 user: drh tags: trunk)
2014-07-30
23:11
Re-integrate the recent changes from the 'winMutex' branch back into the Win32 mutex subsystem. (check-in: 5360ecb0 user: mistachkin tags: trunk)
21:10
Add three new static mutexes for use by the application. This is a partial import of changes from the threads branch. (check-in: 3aad0196 user: drh tags: trunk)
18:47
Add a new sqlite3FaultSim() call to vdbePmaReaderSeek() to facilitate tests of error handling in the sorter. (check-in: 655d8cfc user: drh tags: threads)
17:21
Mark some invariants in the vdbesort.c logic when SQLITE_MAX_WORKER_THREADS==0. (check-in: 721cd965 user: drh tags: threads)
15:43
Add the "eForce" parameter to the sqlite3_multiplex_shutdown() entry point in test_multiplex.c. Shutdown is forced if true. Shutdown is not done if there are pending database connections and eForce is false, but an error log entry is made instead. (check-in: c7303d01 user: drh tags: trunk)
14:57
Merge in the CREATE UNIQUE INDEX fix of ticket [9a6daf340df99ba93c53bcf]. (check-in: fa791232 user: drh tags: apple-osx)
14:44
Merge recent trunk changes, and especially the fix for the CREATE UNIQUE INDEX problem of ticket [9a6daf340df99ba9]. (check-in: 5b50a838 user: drh tags: threads)
14:29
Merge the fix for the CREATE UNIQUE INDEX problem into the sessions branch. (check-in: 43401ee6 user: drh tags: sessions)
13:56
Ensure that the correct number of columns in a UNIQUE index are checked for uniqueness, regardless of whether or not the original table has a ROWID or if the columns are NOT NULL, etc. Ticket [9a6daf340df99ba93c]. (check-in: 6b785e92 user: drh tags: trunk)
11:49
Merge all recent trunk changes, and especially the R-Tree IN operator fix of ticket [d2889096e7bdeac]. (check-in: 654c6c65 user: drh tags: apple-osx)
2014-07-29
21:44
Disable an assert that is sometimes generated spuriously. (check-in: bd9ee0ea user: mistachkin tags: threads)
19:54
Enhancements and updates to the Win32 mutex subsystem. (check-in: ca9868cd user: mistachkin tags: trunk)
19:00
Update return value checking to conform to the beginthreadex() specs. (check-in: 3144a16f user: mistachkin tags: threads)
18:53
Add a couple more assert statements. (check-in: 4e816db2 user: mistachkin tags: threads)
18:46
Fix unreachable branches in the threads.c module. (check-in: 3175e366 user: drh tags: threads)
18:03
Merge updates from trunk. (Closed-Leaf check-in: 08c9a4ea user: mistachkin tags: winMutex)
17:22
Fix a harmless compiler warning. (check-in: 216d21d0 user: drh tags: threads)
16:37
Make the Win32 thread handles are available after the threads exit. (check-in: 565c5af7 user: mistachkin tags: threads)
15:18
Fix the threads build on Windows when SQLITE_MAX_WORKER_THREADS is greater than 0. (check-in: f37db3a0 user: drh tags: threads)
14:16
Merge the R-Tree fix and the new SQLITE_TESTCTRL_ISINIT test control from trunk. (check-in: b2f7eb3c user: drh tags: threads)
14:09
Add the SQLITE_TESTCTRL_ISINIT file control. (check-in: 8b651d4d user: drh tags: trunk)
12:40
Merge recent trunk changes, and especially the fix for the R-Tree problem described in ticket [d2889096e7bdeac6]. (check-in: 8f1beead user: drh tags: sessions)
11:54
Have calls to the xFilter() method of rtree virtual tables ensure that cursor is initialized before proceeding. Fix for [d2889096e7bdeac]. (check-in: 8cc41b0b user: dan tags: trunk)
05:49
Enhancements and updates to the Win32 mutex subsystem. (check-in: 18984c32 user: mistachkin tags: winMutex)
00:42
Add some asserts to the Win32 mutex subsystem. (check-in: e8f2dc5f user: mistachkin tags: threads)
00:23
Fix the build on windows. (check-in: 2773a5f9 user: drh tags: threads)
2014-07-28
20:16
Remove an unnecessary parameter from vdbeMergeEngineStep(). Rename a couple other routines to be more descriptive of what they do. (check-in: f2407a40 user: drh tags: threads)
19:58
Rename vdbeIncrMergerInit() to vdbeMergeEngineInit() - a much more accurate name. (check-in: 5b084a2d user: drh tags: threads)
18:57
In vdbesort.c, rename vdbeSorterDoCompare() to vdbeMergeEngineCompare() and move it closer to the one place where it is called. Other minor comment changes. (check-in: 09d50d9f user: drh tags: threads)
17:18
In vdbesort.c, rename all pointers to sqlite3_file objects "pFd" and use the name "pFile" only for pointers to SortFile objects. Other comment enhancements. (check-in: 518290a7 user: drh tags: threads)
15:01
Merge recent trunk changes into the threads branch. (check-in: 163c247b user: drh tags: threads)
14:54
Improvements to comments in the multi-threaded sorter. Also include a function name change for clarity. And add a test to help show that the MergeEngine object is only used by a single thread. (check-in: 9af50a87 user: drh tags: threads)
2014-07-26
20:12
Remove an unreachable branch from the sqlite3_value_numeric_type() interface. (check-in: 5350229b user: drh tags: trunk)
16:47
Avoid unnecessary no-op calls to applyNumericAffinity() for a small performance improvement. (check-in: 413d7287 user: drh tags: trunk)
2014-07-25
21:35
Try to fix harmless compiler warnings reported by Fortify. (check-in: e0fa6fdc user: drh tags: trunk)
18:37
Improved comments on VDBE opcodes, for better documentation. No code or logic changes. (check-in: 2d32e487 user: drh tags: trunk)
18:01
Add constraints (enforced only when SQLITE_DEBUG is enabled) on the use of OP_Next and OP_Prev. (check-in: 2230c74f user: drh tags: trunk)
2014-07-24
23:23
Improve the performance of the ANALYZE command by taking advantage of UNIQUE constraints on indices. (check-in: 114dcf33 user: drh tags: trunk)
22:51
Correct help text and make consistent use of snprintf. (check-in: 9c424a5c user: mistachkin tags: asciiMode)
22:41
Fix a bug in the whereRangeSkipScanEst() procedure (added by check-in [d09ca6d5efad3e4cfa]) where it fails to consider the possibility of a ROWID column when computing the affinity of a table column. (check-in: 6aea2258 user: drh tags: trunk)
22:33
Update a shell test case. (check-in: b84008cb user: mistachkin tags: asciiMode)
22:20
Fix typo in comment and update help text. (check-in: 289092bb user: mistachkin tags: asciiMode)
22:13
Merge updates from trunk. (check-in: 8dc0cdf6 user: mistachkin tags: asciiMode)
20:25
Avoid trying to allocation zero bytes when analyzing a unique non-null index. (Closed-Leaf check-in: 85e2bade user: drh tags: faster-analyze)
19:54
Avoid change tests when analyzing single-column unique indexes after getting past the initial NULL entries. (check-in: 4690e99c user: drh tags: faster-analyze)
16:54
Merge all recent trunk changes into the threads branch. (check-in: 77068589 user: drh tags: threads)
16:43
Merge recent trunk changes into the apple-osx branch. (check-in: 3810dc62 user: drh tags: apple-osx)
16:23
Merge recent trunk changes into the sessions branch. (check-in: a9db017e user: drh tags: sessions)
12:39
Add the readfile(FILENAME) and writefile(FILENAME,CONTENT) SQL functions to the command-line shell. (check-in: fb1048cb user: drh tags: trunk)
12:19
Add support for hexadecimal integer literals in the parser. (check-in: f8f79f28 user: drh tags: trunk)
12:09
In the command-line shell, in CSV output mode, terminate rows with CRNL but do not expand NL characters in data into CRNL. Provide the extra -newline command-line option and the extra argument to .separator to designate an alternative newline character sequence for CSV output. (check-in: 16c8ce10 user: drh tags: trunk)
2014-07-23
23:57
Add experimental "costmult" logic. Only enabled when compiled with -DSQLITE_ENABLE_COSTMULT. (check-in: 729ece40 user: drh tags: trunk)
19:37
Ugh. Consecutive UNIQUE index entries are only distinct if the index is on NOT NULL columns. So the previous version was not quite right. This check-in fixes the problem. (check-in: 30033f96 user: drh tags: faster-analyze)
19:04
Enhancements to the hex literal tests. (Closed-Leaf check-in: a3cc027f user: mistachkin tags: hex-literal)
18:36
Improve the performance of the ANALYZE command by taking advantage of the fact that every row of a UNIQUE index is distinct. (check-in: 3e1e79e1 user: drh tags: faster-analyze)
15:51
Updated documentation on sqlite3_temp_directory. No changes to code. (check-in: e6225a7b user: drh tags: trunk)
14:52
Remove a surplus function prototype. #ifdef code that is not used when hex integers are omitted at compile time. (check-in: a5b383e0 user: drh tags: hex-literal)
13:40
Change the hex literal processing so that only the SQL parser understands hex literals. Casting and coercing string literals into numeric values does not understand hexadecimal integers. This preserves backwards compatibility. Also: Throw an error on any hex literal that is too big to fit into 64 bits. (check-in: 6c6f0de5 user: drh tags: hex-literal)
02:07
Casting hex literals directly from string to float always results in a positive number. (check-in: 4b86ccdf user: drh tags: hex-literal)
01:59
Reformatting a few test cases for clarity. (check-in: 7e1bbacb user: drh tags: hex-literal)
01:56
Test cases for hex literals. (check-in: 19054339 user: drh tags: hex-literal)
01:26
Add support for parsing C-style hexadecimal literals. (check-in: 34a1f38b user: drh tags: hex-literal)
2014-07-22
22:46
When running ANALYZE, it is not necessary to check the right-most key column for changes since that column will always change if none of the previous columns have. (check-in: 48f40861 user: drh tags: trunk)
20:02
Add the OP_ReopenIdx opcode that works like OP_OpenRead except that it becomes a no-op if the cursor is already open on the same index. Update the OR-optimization logic to make use of OP_ReopenIdx in order to avoid unnecessary cursor open requests sent to the B-Tree layer. (check-in: 77f412ca user: drh tags: trunk)
19:14
The optimization of check-in [b67a6e33f2] does not work (it generates incorrect VDBE code) if an OR term is AND-ed with a constant expression. So back that optimization out and add a test case to make sure it does not get added back in. (check-in: eed754fe user: drh tags: trunk)
16:00
Fix the index name for the shadow tables in the spellfix1 extension so that multiple instances of the spellfix1 virtual table can each have their own index. (check-in: 438c348a user: drh tags: trunk)
15:33
Correction: The maximum SQLITE_MAX_ATTACHED value to avoid overflowing a signed 8-bit integer is 125, not 127. (check-in: 48e37802 user: drh tags: trunk)
14:58
Enhance the sqlite_stat1.stat parsing to allow additional text parameters at the end. Unrecognized parameters are silently ignored. (check-in: ca2a5a2c user: drh tags: trunk)
14:42
Expire prepared statements after running ANALYZE. (check-in: b083a961 user: drh tags: trunk)
12:05
Enhance the comment on whereLoopAddBtree(). No changes to code. (check-in: b22dd165 user: drh tags: trunk)
00:40
For the OR-optimization, avoid generating OP_OpenRead opcodes that reopen exactly the same index. (check-in: b67a6e33 user: drh tags: trunk)
2014-07-21
20:07
Limit the maximum SQLITE_MAX_ATTACHED to 127, since a signed character is sometimes used to store the database index. (check-in: f1c76c7c user: drh tags: trunk)
15:44
Allow the SQLITE_MAX_ATTACHED compile-time option to be larger than 62. The default limit on the number of attached databases remains 10. (check-in: 1a817ae2 user: drh tags: trunk)
2014-07-19
20:15
Add new ASCII mode to the shell capable of importing and exporting using the official unit and record separators (i.e. 0x1F and 0x1E, respectively). (check-in: 7fe601ea user: mistachkin tags: asciiMode)
17:57
Update the sqlite3_stmt_busy() function so that it correctly returns true for "ROLLBACK" statements that have been stepped but not yet reset. (check-in: 61cee3c0 user: dan tags: trunk)
17:49
Fix harmless compiler warnings in the showdb and showwal tools and in the unicode tokenizer of FTS3. (check-in: 574cc8eb user: drh tags: trunk)
15:44
Fix some harmess compiler warnings in the FTS3 Unicode module. (Closed-Leaf check-in: c01caea5 user: mistachkin tags: toolWarnings)
15:40
Fix warnings related to having a 64-bit size_t. (check-in: 29ac9336 user: mistachkin tags: toolWarnings)
15:30
Fix warnings caused by the previous commit. (check-in: 89634a41 user: mistachkin tags: toolWarnings)
2014-07-18
21:16
Fix harmless compiler warnings for MSVC in the showdb/showwal command line tools. (check-in: 6dc7b2f1 user: mistachkin tags: toolWarnings)
21:02
Update clean targets with the recently added command-line tools. (check-in: 2beefa68 user: mistachkin tags: trunk)
19:06
Improved documentation for checkpoints and the busy handler. No changes to code. (check-in: ca92c024 user: drh tags: trunk)
17:39
SQLite has long accepted some unadvertised and non-standard join syntax. Add a test to ensure that future versions continue to accept this non-standard syntax, to avoid breaking legacy applications that use the undefined syntax. (check-in: 824dde7f user: drh tags: trunk)
14:43
Improvements to the ".fullschema" command in the command-line shell. (check-in: fa80c64c user: drh tags: trunk)
2014-07-07
18:03
Fix harmless compiler warnings in the fts3view utility program that can occur with MSVC. (check-in: 1cec1e03 user: mistachkin tags: trunk)
17:57
Add the fts3view utility program to the MSVC makefile. (check-in: b04751bd user: mistachkin tags: trunk)
16:07
Fix a division-by-zero error in the fts3view utility program. Add the fts3view utility program to the "main.mk" makefile. (check-in: 64f02699 user: drh tags: trunk)
2014-07-03
12:18
Change fts3/4 so that the "unicode61" is included in builds by default. It may now be excluded by defining SQLITE_DISABLE_FTS3_UNICODE. (check-in: 0cc0230a user: dan tags: trunk)