Documentation Source Text

Check-in [3a4c37b08b]
Login

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

Overview
Comment:Update the documentation to explain that the journal_mode must be set prior to the first transaction. CVSTrac ticket #3811.
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 3a4c37b08b682746540c3ec1ce5e97f2f589c8fd
User & Date: drh 2009-04-20 13:29:44
Context
2009-04-20
17:43
Update documentation to describe how pragma journal_mode will work as long as there is no pending transaction. check-in: 8bb233e0af user: drh tags: trunk
13:29
Update the documentation to explain that the journal_mode must be set prior to the first transaction. CVSTrac ticket #3811. check-in: 3a4c37b08b user: drh tags: trunk
2009-04-17
12:30
Added documentation on the SQLITE_HAVE_ISNAN compile-time option. check-in: d1b62a10d5 user: drh tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to pages/pragma.in.

366
367
368
369
370
371
372













373
374
375
376
377
378
379
    <p>The OFF journaling mode disables the rollback journal completely.
    No rollback journal is ever created and hence there is never a rollback
    journal to delete.  The OFF journaling mode disables the atomic
    commit and rollback capabilities of SQLite. The [ROLLBACK] command
    no longer works. If the application crashes
    in the middle of a transaction when the OFF journaling mode is
    set, then the database file will very likely go corrupt.</p>














    <p>Note that the journal_mode for an [in-memory database]
    is either MEMORY or OFF and can not be changed to a different value.
    An attempt to change the journal_mode of an [in-memory database] to
    any setting other than MEMORY or OFF is silently ignored.</p>
</li>








>
>
>
>
>
>
>
>
>
>
>
>
>







366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
    <p>The OFF journaling mode disables the rollback journal completely.
    No rollback journal is ever created and hence there is never a rollback
    journal to delete.  The OFF journaling mode disables the atomic
    commit and rollback capabilities of SQLite. The [ROLLBACK] command
    no longer works. If the application crashes
    in the middle of a transaction when the OFF journaling mode is
    set, then the database file will very likely go corrupt.</p>

    <p>In order for a change in journal_mode to be effective, that change must 
    occur prior to executing any transaction on the database file.  
    Attempt to change the journal mode after the first transaction has been 
    executed might report success and might 
    report the new journal mode is set, when
    in reality the original journal mode could still be in force.  It is
    undefined whether or not a journal_mode change is effective after one
    or more transactions have been run.  The only reliable way to modify
    the journal mode is to change it prior to the first transaction.
    If an application must change the journal_mode after one or more
    transactions have occurred, the only reliable way to do so is to
    close and reopen the database connection.</p>

    <p>Note that the journal_mode for an [in-memory database]
    is either MEMORY or OFF and can not be changed to a different value.
    An attempt to change the journal_mode of an [in-memory database] to
    any setting other than MEMORY or OFF is silently ignored.</p>
</li>