/ Check-in [fa62093b]
Login

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

Overview
Comment:Fix a performance problem in calls to sqlite3ota_close() made after the OTA update has been completely applied and checkpointed.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | ota-update
Files: files | file ages | folders
SHA1: fa62093b2531424846ea500c4155170d1bc7110e
User & Date: dan 2015-04-23 19:18:42
Context
2015-04-23
19:32
Merge latest trunk changes into this branch. check-in: 1506e99e user: dan tags: ota-update
19:18
Fix a performance problem in calls to sqlite3ota_close() made after the OTA update has been completely applied and checkpointed. check-in: fa62093b user: dan tags: ota-update
18:14
Have OTA maintain a small LRU cache of UPDATE statements. This reduces the amount of time it spends compiling UPDATE if a single data_xxx table contains many different ota_control strings. check-in: baee3556 user: dan tags: ota-update
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to ext/ota/sqlite3ota.c.

  2439   2439               p->rc = pDb->pMethods->xSync(pDb, SQLITE_SYNC_NORMAL);
  2440   2440     
  2441   2441               /* Update nBackfill */
  2442   2442               if( p->rc==SQLITE_OK ){
  2443   2443                 void volatile *ptr;
  2444   2444                 p->rc = pDb->pMethods->xShmMap(pDb, 0, 32*1024, 0, &ptr);
  2445   2445                 if( p->rc==SQLITE_OK ){
  2446         -                ((u32*)ptr)[12] = p->iMaxFrame;
         2446  +                ((u32 volatile*)ptr)[24] = p->iMaxFrame;
  2447   2447                 }
  2448   2448               }
  2449   2449     
  2450   2450               if( p->rc==SQLITE_OK ){
  2451   2451                 p->eStage = OTA_STAGE_DONE;
  2452   2452                 p->rc = SQLITE_DONE;
  2453   2453               }