SQLite

Check-in [51ee5188b0]
Login

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

Overview
Comment:Fix an LSM problem with read-only connections and compression (not compression-factory) callbacks.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 51ee5188b03c4b9508e94afaee4bf1f224aef28875efabda8ce09a5ab641d99e
User & Date: dan 2017-11-04 08:53:37.599
Context
2017-11-06
09:34
Fix a harmless compiler warning from Xcode 9.1. (check-in: 66d98310b9 user: drh tags: trunk)
2017-11-04
08:53
Fix an LSM problem with read-only connections and compression (not compression-factory) callbacks. (check-in: 51ee5188b0 user: dan tags: trunk)
2017-11-03
08:46
The extensions functions in spellfix are all deterministic. (check-in: 29ec855e13 user: drh tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to ext/lsm1/lsm_shared.c.
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
    rc = lsmFsOpen(pDb, zName, p->bReadonly);
  }

  /* If the db handle is read-write, then connect to the system now. Run
  ** recovery as necessary. Or, if this is a read-only database handle,
  ** defer attempting to connect to the system until a read-transaction
  ** is opened.  */
  if( pDb->bReadonly==0 ){
    if( rc==LSM_OK ){
      rc = lsmFsConfigure(pDb);
    }
    if( rc==LSM_OK ){
      rc = doDbConnect(pDb);
    }
  }

  return rc;
}

static void dbDeferClose(lsm_db *pDb){
  if( pDb->pFS ){







<
|
|
|
|
|
<







516
517
518
519
520
521
522

523
524
525
526
527

528
529
530
531
532
533
534
    rc = lsmFsOpen(pDb, zName, p->bReadonly);
  }

  /* If the db handle is read-write, then connect to the system now. Run
  ** recovery as necessary. Or, if this is a read-only database handle,
  ** defer attempting to connect to the system until a read-transaction
  ** is opened.  */

  if( rc==LSM_OK ){
    rc = lsmFsConfigure(pDb);
  }
  if( rc==LSM_OK && pDb->bReadonly==0 ){
    rc = doDbConnect(pDb);

  }

  return rc;
}

static void dbDeferClose(lsm_db *pDb){
  if( pDb->pFS ){