/ Check-in [bf903b2e]
Login

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

Overview
Comment:Update requirements marks due to improvements in the wording of documentation. No changes to code.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:bf903b2ecac5d7b25c9cc899cae41f1d69aafe4e
User & Date: drh 2016-09-27 00:09:33
Context
2016-09-28
16:04
Fix typos in comments. No code changes. check-in: 5bbd071d user: drh tags: trunk
2016-09-27
00:09
Update requirements marks due to improvements in the wording of documentation. No changes to code. check-in: bf903b2e user: drh tags: trunk
00:03
Fix FTS3 test cases due to the flattener change of the previous check-in. check-in: 0c8b9b21 user: drh tags: trunk
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to src/build.c.

  1454   1454   ** since it was last read.
  1455   1455   **
  1456   1456   ** This plan is not completely bullet-proof.  It is possible for
  1457   1457   ** the schema to change multiple times and for the cookie to be
  1458   1458   ** set back to prior value.  But schema changes are infrequent
  1459   1459   ** and the probability of hitting the same cookie value is only
  1460   1460   ** 1 chance in 2^32.  So we're safe enough.
         1461  +**
         1462  +** IMPLEMENTATION-OF: R-34230-56049 SQLite automatically increments
         1463  +** the schema-version whenever the schema changes.
  1461   1464   */
  1462   1465   void sqlite3ChangeCookie(Parse *pParse, int iDb){
  1463   1466     sqlite3 *db = pParse->db;
  1464   1467     Vdbe *v = pParse->pVdbe;
  1465   1468     assert( sqlite3SchemaMutexHeld(db, iDb, 0) );
  1466   1469     sqlite3VdbeAddOp3(v, OP_SetCookie, iDb, BTREE_SCHEMA_VERSION, 
  1467   1470                       db->aDb[iDb].pSchema->schema_cookie+1);

Changes to src/vdbe.c.

  3204   3204         ** counter. If the statement transaction needs to be rolled back,
  3205   3205         ** the value of this counter needs to be restored too.  */
  3206   3206         p->nStmtDefCons = db->nDeferredCons;
  3207   3207         p->nStmtDefImmCons = db->nDeferredImmCons;
  3208   3208       }
  3209   3209   
  3210   3210       /* Gather the schema version number for checking:
  3211         -    ** IMPLEMENTATION-OF: R-32195-19465 The schema version is used by SQLite
  3212         -    ** each time a query is executed to ensure that the internal cache of the
  3213         -    ** schema used when compiling the SQL query matches the schema of the
  3214         -    ** database against which the compiled query is actually executed.
         3211  +    ** IMPLEMENTATION-OF: R-03189-51135 As each SQL statement runs, the schema
         3212  +    ** version is checked to ensure that the schema has not changed since the
         3213  +    ** SQL statement was prepared.
  3215   3214       */
  3216   3215       sqlite3BtreeGetMeta(pBt, BTREE_SCHEMA_VERSION, (u32 *)&iMeta);
  3217   3216       iGen = db->aDb[pOp->p1].pSchema->iGeneration;
  3218   3217     }else{
  3219   3218       iGen = iMeta = 0;
  3220   3219     }
  3221   3220     assert( pOp->p5==0 || pOp->p4type==P4_INT32 );