Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Add the SQLITE_LIKE_DOESNT_MATCH_BLOBS compile-time option to the changes log. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
df761d090799f205611d493f3c841b90 |
User & Date: | drh 2016-01-04 00:44:40.887 |
Context
2016-01-06
| ||
11:05 | Add the "News" for the 3.10.0 release and fix some typos. Add hashes and correct dates to the change log. (check-in: ecbe9a0cbc user: drh tags: trunk, release, version-3.10.0) | |
2016-01-04
| ||
00:44 | Add the SQLITE_LIKE_DOESNT_MATCH_BLOBS compile-time option to the changes log. (check-in: df761d0907 user: drh tags: trunk) | |
2016-01-02
| ||
04:16 | Cherrypick changes off of the bubble-generator-tkpath branch that were intended for trunk. Also merge in changes to the 3.9.x branch. (check-in: e2ad1111f4 user: drh tags: trunk) | |
Changes
Changes to pages/changes.in.
︙ | ︙ | |||
38 39 40 41 42 43 44 45 46 47 48 49 50 51 | and [sqlite3_snapshot_free()] interfaces. These are subject to change or removal in a subsequent release. <li>Enhance the ['utc' modifier] in the [date and time functions] so that it is a no-op if the date/time is known to already be in UTC. (This is not a compatibility break since the behavior has long been documented as "undefined" in that case.) <li>Added the [json_group_array()] and [json_group_object()] SQL functions in the [json] extension. <li>Many small performance optimizations. <p><b>Portability enhancements:</b> <li>Work around a sign-exension bug in the optimizer of the HP C compiler on HP/UX. [https://www.sqlite.org/src/fdiff?sbs=1&v1=869c95b0fc73026d&v2=232c242a0ccb3d67|(details)] <p><b>Enhancements to the [command-line shell]:</b> <li>Added the ".changes ON|OFF" and ".vfsinfo" [dot-commands]. <li>Translate between MBCS and UTF8 when | > | 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | and [sqlite3_snapshot_free()] interfaces. These are subject to change or removal in a subsequent release. <li>Enhance the ['utc' modifier] in the [date and time functions] so that it is a no-op if the date/time is known to already be in UTC. (This is not a compatibility break since the behavior has long been documented as "undefined" in that case.) <li>Added the [json_group_array()] and [json_group_object()] SQL functions in the [json] extension. <li>Added the [SQLITE_LIKE_DOESNT_MATCH_BLOBS] compile-time option. <li>Many small performance optimizations. <p><b>Portability enhancements:</b> <li>Work around a sign-exension bug in the optimizer of the HP C compiler on HP/UX. [https://www.sqlite.org/src/fdiff?sbs=1&v1=869c95b0fc73026d&v2=232c242a0ccb3d67|(details)] <p><b>Enhancements to the [command-line shell]:</b> <li>Added the ".changes ON|OFF" and ".vfsinfo" [dot-commands]. <li>Translate between MBCS and UTF8 when |
︙ | ︙ |
Changes to pages/compile.in.
︙ | ︙ | |||
258 259 260 261 262 263 264 265 266 267 268 269 270 271 | the base-2 logarithm of the number of terms in the right-hand side of the MATCH operator. However, for [phrase queries] and [NEAR queries] the search tree depth is linear in the number of right-hand side terms. So the default depth limit of 12 is sufficient for up to 4095 ordinary terms on a MATCH, it is only sufficient for 11 or 12 phrase or NEAR terms. Even so, the default is more than enough for most application. } COMPILE_OPTION {SQLITE_MAX_MMAP_SIZE=<i>N</i>} { This macro sets a hard upper bound on the amount of address space that can be used by any single database for memory-mapped I/O. Setting this value to 0 completely disables memory-mapped I/O and causes logic associated with memory-mapped I/O to be omitted from the build. This option does change the default memory-mapped I/O address | > > > > > > > > > > > > > > > > > > > | 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 | the base-2 logarithm of the number of terms in the right-hand side of the MATCH operator. However, for [phrase queries] and [NEAR queries] the search tree depth is linear in the number of right-hand side terms. So the default depth limit of 12 is sufficient for up to 4095 ordinary terms on a MATCH, it is only sufficient for 11 or 12 phrase or NEAR terms. Even so, the default is more than enough for most application. } COMPILE_OPTION {SQLITE_LIKE_DOESNT_MATCH_BLOBS} { This compile-time option causes the [LIKE] operator to always return False if either operand is a BLOB. The default behavior of [LIKE] is that BLOB operands are cast to TEXT before the comparison is done. <p> This compile-time option makes SQLite run more efficiently when processing queries that use the [LIKE] operator, at the expense of breaking backwards compatibility. However, the backwards compatibility break may be only a technicality. There was a long-standing bug in the [LIKE] processing logic (see [https://www.sqlite.org/src/info/05f43be8fdda9f]) that caused it to misbehavior for BLOB operands and nobody observed that bug in nearly 10 years of active use. So for more users, it is probably safe to enable this compile-time option and thereby save a little CPU time on LIKE queries. <p> This compile-time option affects the SQL [LIKE] operator only and has no impact on the [sqlite3_strlike()] C-language interface. } COMPILE_OPTION {SQLITE_MAX_MMAP_SIZE=<i>N</i>} { This macro sets a hard upper bound on the amount of address space that can be used by any single database for memory-mapped I/O. Setting this value to 0 completely disables memory-mapped I/O and causes logic associated with memory-mapped I/O to be omitted from the build. This option does change the default memory-mapped I/O address |
︙ | ︙ |