http://www.sqlite.org/howtocorrupt.html in section "2.2.1 Multiple copies of SQLite linked into the same application" says:
"But the SQLite developers are aware of at least one commercial product that was release with exactly this bug." that was release --> that was released. and in section "2.3 Two processes using different locking protocols": "If one application is using POSIX advisory locks and another application is using dot-file locking, then the two applications will not see each others locks and will not be able to coordinate database access, possibly leading to database corruption." each others locks --> each other's locks. and in section "7.0 Bugs in SQLite": "To illustrate this, an account is given below of all database-corruption bugs found in SQLite during the two-year period from 2009-04-01 to 2013-04-15." two-year period --> four-year period. and in section "7.1 False corruption reports due to database shrinkage": "Version 3.7.0 was simply begin overly zealous in its corruption detection." begin --> being and in section "7.2 Corruption follow switches between rollback and WAL modes" where the section title should probably replace "follow" by "following". and in section "7.6 Race condition in recovery on windows system.": "This defect was on windows systems only and did not effect the posix OS interface." windows --> Windows; effect --> affect. And I suggest removing the final dot from the section titles of 7.5 and 7.6, for consistency with the other section titles which do not end in a full stop, either. And the section title for 7.6 should probably also capitalise "Windows". ------------------------------------------------------ http://www.sqlite.org/faq.html In question "(21) What is an SQLITE_CORRUPT error? What does it mean for the database to be "malformed"? Why am I getting this error?": The crash-resistance of SQLite has been extensively studied and tested and is attested by years of real-world experience by millions of users." [sic] has a final double-quote at the end that should probably simply be removed. In question "(23) I get a compiler error if I use the SQLITE_OMIT_... compile-time options when building SQLite.": "The SQLITE_OMIT_... compile-time options only work when building from canonically source files." "canonically" should probably be "canonical" since in this context, an adjective is required. (It is possible that the adverb "canonically" was indeed intended but that the adjective that it modifies got lost. In that case, the appropriate adjective should be reinstated.) In question "(24) My WHERE clause expression column1="column1" does not work. It causes every row of the table to be returned, not just the rows where column1 has the value "column1".": "Your WHERE clause expression should read: column1='column2'" "column2" should almost certainly read "column1", to match the question and the remainder of the answer. ----------------------------------------------- http://www.sqlite.org/wal.html "There is an additional quasi-persistent "-wal" file and "-shm shared memory file associated with each database, which can make SQLite less appealing for use as an application file-format. " There should be a double quote after "-shm". --------------------------------------------- http://www.sqlite.org/lang_attach.html "The filename argument can be a URI filename if URI filename processing is enable on the database connection." is enable --> is enabled --------------------------------------------- http://www.sqlite.org/malloc.html in section "1.0 Features": "SQLite will attempt to reuse memory from its caches rather than allocation new memory as it approaches the soft limit. " rather than allocation --> rather than allocating in section "3.1.4 Experimental memory allocators": "One many anticipate that these will be called memsys7, memsys8, and so forth." One many --> One may ----------------------------------------------- http://www.sqlite.org/pragma.html#pragma_application_id " A list assigned application IDs can be seen by consulting the magic.txt file in the SQLite source repository. " A list assigned --> A list of assigned ------------------------------------------------- http://www.sqlite.org/c3ref/prepare.html "The specific value of WHERE-clause parameter might influence the choice of query plan if the parameter is the left-hand side of a LIKE or GLOB operator or if the parameter is compared to an indexed column and the SQLITE_ENABLE_STAT3 compile-time option is enabled. the " Remove the last word "the". --------------------------------------------------- http://www.sqlite.org/c3ref/exec.html "The application must not close database connection specified by the 1st parameter to sqlite3_exec() while sqlite3_exec() is running. " I suggest changing "must not close database connection" to "must not close the database connection". ----------------------------------------------- http://www.sqlite.org/lang_createtrigger.html "When one of the first three forms is called during trigger-program execution, the specified ON CONFLICT processing is performed (either ABORT, FAIL or ROLLBACK) and the current query terminates." Presumably, the last three forms of (the current version of) the railroad diagram are meant -- the ones with ROLLBACK, ABORT, and FAIL. "When RAISE(IGNORE) is called, the remainder of the current trigger program, the statement that caused the trigger program to execute and any subsequent trigger programs that would of been executed are abandoned." would of been --> would have been ----------------------------------------------- http://www.sqlite.org/fileformat2.html in section "1.2.3 File format version numbers": " If a database file with a read version greater than 2 is encounter, then that database cannot be read or written." is encounter --> is encountered in section "1.2.5 Payload fractions" " These values were originally intended to as tunable parameters that could be used to modify the storage format of the b-tree algorithm." originally intended to as --> originally intended to be --or-- originally intended as ------------------------------------------------- http://www.sqlite.org/c3ref/c_abort_rollback.html "One may expect the number of extended result codes will be expand over time. " Should be "One may expect _that_ the number ... will be" or "One may expect the number ... _to_ be". And expand --> expanded in either case. ------------------------------------------------ http://www.sqlite.org/c3ref/mem_methods.html "The xInit method initializes the memory allocator. (For example, it might allocate any require mutexes or initialize internal data structures. The xShutdown method is invoked (indirectly) by sqlite3_shutdown() and should deallocate any resources acquired by xInit. The pAppData pointer is used as the only parameter to xInit and xShutdown." There should be a closing parenthesis ")" after "structures.". ------------------------------- http://www.sqlite.org/lang_expr.html In section "The LIKE and GLOB operators": " If a application-defined SQL function named "regexp" is added at run-time, that function will be called in order to implement the REGEXP operator." If a --> If an ------------------------------------- http://www.sqlite.org/c3ref/column_blob.html " Do not pass the pointers returned sqlite3_column_blob(), sqlite3_column_text(), etc. into sqlite3_free()." returned --> returned by -------------------------- http://www.sqlite.org/c3ref/db_release_memory.html "Unlike the sqlite3_release_memory() interface, this interface is effect even when then SQLITE_ENABLE_MEMORY_MANAGEMENT compile-time option is omitted." is effect --> is in effect when then --> when the --------------------------- http://www.sqlite.org/compile.html#enable_stat4 "The downside of this compile-time option is that it violates the query planner stability guarantee making it more difficult to ensure consistent performance is mass-produced applications. " performance is --> performance in --------------------------- http://www.sqlite.org/optoverview.html in section "4.0 The LIKE optimization": "The build-in functions used to implement LIKE and GLOB must not have been overloaded using the sqlite3_create_function() API." build-in --> built-int -------------------------- http://www.sqlite.org/queryplanner-ng.html in section "4.0 Hazards Of Upgrading To NGQP": "Given reliable information about the selectivity of indices, the NGQP should always pick a plan than is as good or better than before. " as good or better than --> as good as or better than Cheers, Philip -- Philip Newton <philip.new...@pobox.com> _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users