/ Check-in [2f8c62c3]
Login
SQLite training in Houston TX on 2019-11-05 (details)
Part of the 2019 Tcl Conference

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

Overview
Comment:Cherry-pick the fix to surplus overflow files in the multiplexor, check-in [1238619756c0c] in the trunk.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | nx-devkit
Files: files | file ages | folders
SHA1: 2f8c62c3378a702fa623a2880a989d958eece0df
User & Date: drh 2012-01-09 14:57:38
Context
2012-01-20
15:05
Cherrypick the fix from [629108c8e5376f989] into the nx-devkit branch. check-in: d7374568 user: drh tags: nx-devkit
2012-01-09
14:57
Cherry-pick the fix to surplus overflow files in the multiplexor, check-in [1238619756c0c] in the trunk. check-in: 2f8c62c3 user: drh tags: nx-devkit
2011-12-21
23:38
Cherry-pick the SQLITE_DIRECT_OVERFLOW_READ fix for ticket [ac0ff496b7e] of changes [c5256b59ad] and [c723e3e18a] into the nx-devkit branch. check-in: 42f31f19 user: drh tags: nx-devkit
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to src/test_multiplex.c.

302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
    return 0;
  }
#endif

  *rc = multiplexSubFilename(pGroup, iChunk);
  if( (*rc)==SQLITE_OK && (pSubOpen = pGroup->aReal[iChunk].p)==0 ){
    int flags, bExists;
    createFlag = (pGroup->flags & SQLITE_OPEN_CREATE)!=0;
    flags = pGroup->flags;
    if( createFlag ){
      flags |= SQLITE_OPEN_CREATE;
    }else if( iChunk==0 ){
      /* Fall through */
    }else if( pGroup->aReal[iChunk].z==0 ){
      return 0;







<







302
303
304
305
306
307
308

309
310
311
312
313
314
315
    return 0;
  }
#endif

  *rc = multiplexSubFilename(pGroup, iChunk);
  if( (*rc)==SQLITE_OK && (pSubOpen = pGroup->aReal[iChunk].p)==0 ){
    int flags, bExists;

    flags = pGroup->flags;
    if( createFlag ){
      flags |= SQLITE_OPEN_CREATE;
    }else if( iChunk==0 ){
      /* Fall through */
    }else if( pGroup->aReal[iChunk].z==0 ){
      return 0;

Changes to test/multiplex.test.

152
153
154
155
156
157
158



159
160
161
162
163
164
165
...
188
189
190
191
192
193
194
195
196






197
198
199
200
201
202
203
204
205
206
#   multiplex-2.7.*: Disable/enable tests.
#

sqlite3_multiplex_initialize "" 1
multiplex_set db main 32768 16

forcedelete test.x



do_test multiplex-2.1.2 {
  sqlite3 db test.x
  execsql {
    PRAGMA page_size=1024;
    PRAGMA auto_vacuum=OFF;
    PRAGMA journal_mode=DELETE;
  }
................................................................................
do_test multiplex-2.4.1 {
  sqlite3_multiplex_shutdown
} {SQLITE_MISUSE}
do_test multiplex-2.4.2 {
  execsql { INSERT INTO t1 VALUES(3, randomblob(1100)) }
} {}
do_test multiplex-2.4.4 { file size [multiplex_name test.x 0] } {7168}
do_test multiplex-2.4.99 {
  db close






  sqlite3_multiplex_shutdown
} {SQLITE_OK}


do_test multiplex-2.5.1 {
  multiplex_delete test.x
  sqlite3_multiplex_initialize "" 1
  sqlite3 db test.x
  multiplex_set db main 4096 16
} {SQLITE_OK}







>
>
>







 







|

>
>
>
>
>
>


<







152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
...
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207

208
209
210
211
212
213
214
#   multiplex-2.7.*: Disable/enable tests.
#

sqlite3_multiplex_initialize "" 1
multiplex_set db main 32768 16

forcedelete test.x
foreach f [glob -nocomplain {test.x*[0-9][0-9][0-9]}] {
  forcedelete $f
}
do_test multiplex-2.1.2 {
  sqlite3 db test.x
  execsql {
    PRAGMA page_size=1024;
    PRAGMA auto_vacuum=OFF;
    PRAGMA journal_mode=DELETE;
  }
................................................................................
do_test multiplex-2.4.1 {
  sqlite3_multiplex_shutdown
} {SQLITE_MISUSE}
do_test multiplex-2.4.2 {
  execsql { INSERT INTO t1 VALUES(3, randomblob(1100)) }
} {}
do_test multiplex-2.4.4 { file size [multiplex_name test.x 0] } {7168}
do_test multiplex-2.4.5 {
  db close
  sqlite3 db test.x
  db eval vacuum
  db close
  glob test.x*
} {test.x}
do_test multiplex-2.4.99 {
  sqlite3_multiplex_shutdown
} {SQLITE_OK}


do_test multiplex-2.5.1 {
  multiplex_delete test.x
  sqlite3_multiplex_initialize "" 1
  sqlite3 db test.x
  multiplex_set db main 4096 16
} {SQLITE_OK}