Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| SHA1 Hash: | 88205b2bc6e7579899c2c840716f993747286be5 |
|---|---|
| Date: | 2012-11-29 18:25:34 |
| User: | dan |
| Comment: | Allow freelist-only age=1 segments to be written even if there are already NMERGE age=1 segments. |
Tags And Properties
- branch=trunk inherited from [84d5dea8fd]
- sym-trunk inherited from [84d5dea8fd]
Changes
Changes to lsm-test/lsmtest_tdb3.c
524 int nSleep = 0; 524 int nSleep = 0; 525 525 526 rc = lsm_config(pDb->db, LSM_CONFIG_AUTOFLUSH, &nLimit); 526 rc = lsm_config(pDb->db, LSM_CONFIG_AUTOFLUSH, &nLimit); 527 do { 527 do { 528 int bOld, nNew, rc; 528 int bOld, nNew, rc; 529 rc = lsm_info(pDb->db, LSM_INFO_TREE_SIZE, &bOld, &nNew); 529 rc = lsm_info(pDb->db, LSM_INFO_TREE_SIZE, &bOld, &nNew); 530 if( rc!=LSM_OK ) return rc; 530 if( rc!=LSM_OK ) return rc; 531 if( bOld==0 || nNew<nLimit ) break; | 531 if( bOld==0 || nNew<(nLimit/2) ) break; 532 usleep(5000); 532 usleep(5000); 533 nSleep += 5; 533 nSleep += 5; 534 }while( 1 ); 534 }while( 1 ); 535 535 536 #if 0 536 #if 0 537 if( nSleep ) printf("# waitOnWorker(): nSleep=%d\n", nSleep); 537 if( nSleep ) printf("# waitOnWorker(): nSleep=%d\n", nSleep); 538 #endif 538 #endif
Changes to src/lsm_sorted.c
4718 if( nPg ) bDirty = 1; 4718 if( nPg ) bDirty = 1; 4719 } 4719 } 4720 4720 4721 /* If the in-memory part of the free-list is too large, write a new 4721 /* If the in-memory part of the free-list is too large, write a new 4722 ** top-level containing just the in-memory free-list entries to disk. */ 4722 ** top-level containing just the in-memory free-list entries to disk. */ 4723 if( rc==LSM_OK && pDb->pWorker->freelist.nEntry > pDb->nMaxFreelist ){ 4723 if( rc==LSM_OK && pDb->pWorker->freelist.nEntry > pDb->nMaxFreelist ){ 4724 int nPg = 0; 4724 int nPg = 0; 4725 while( rc==LSM_OK && sortedDbIsFull(pDb) ){ | 4725 while( rc==LSM_OK && lsmDatabaseFull(pDb) ){ 4726 rc = sortedWork(pDb, 16, nMerge, 1, &nPg); 4726 rc = sortedWork(pDb, 16, nMerge, 1, &nPg); 4727 nRem -= nPg; 4727 nRem -= nPg; 4728 } 4728 } 4729 if( rc==LSM_OK ){ 4729 if( rc==LSM_OK ){ 4730 rc = sortedNewToplevel(pDb, TREE_NONE, &nPg); 4730 rc = sortedNewToplevel(pDb, TREE_NONE, &nPg); 4731 } 4731 } 4732 nRem -= nPg; 4732 nRem -= nPg;
Changes to www/index.wiki
4 * [./env.wiki | The Run-time Environment Object] 4 * [./env.wiki | The Run-time Environment Object] 5 * [./varint.wiki | The Varint format] 5 * [./varint.wiki | The Varint format] 6 * [./data_encoding.wiki | The Data Encoding] 6 * [./data_encoding.wiki | The Data Encoding] 7 * [./key_encoding.wiki | The Key Encoding] 7 * [./key_encoding.wiki | The Key Encoding] 8 * [./decimal.wiki | Internal representation of numeric values] 8 * [./decimal.wiki | Internal representation of numeric values] 9 * [./porting.wiki | Porting an app from SQLite3 to SQLite4] 9 * [./porting.wiki | Porting an app from SQLite3 to SQLite4] 10 * [./storage.wiki | How to create a new storage engine] 10 * [./storage.wiki | How to create a new storage engine] > 11 * [./lsmusr.wiki | LSM User Manual]