pFd 27365 ext/sqlite3/libsqlite/sqlite3.c static int unixMapfile(unixFile *pFd, i64 nByte); pFd 27366 ext/sqlite3/libsqlite/sqlite3.c static void unixUnmapfile(unixFile *pFd); pFd 28978 ext/sqlite3/libsqlite/sqlite3.c static int openDirectory(const char *zFilename, int *pFd){ pFd 28992 ext/sqlite3/libsqlite/sqlite3.c *pFd = fd; pFd 29648 ext/sqlite3/libsqlite/sqlite3.c static void unixShmPurge(unixFile *pFd){ pFd 29649 ext/sqlite3/libsqlite/sqlite3.c unixShmNode *p = pFd->pInode->pShmNode; pFd 29654 ext/sqlite3/libsqlite/sqlite3.c assert( p->pInode==pFd->pInode ); pFd 29665 ext/sqlite3/libsqlite/sqlite3.c robust_close(pFd, p->h, __LINE__); pFd 30175 ext/sqlite3/libsqlite/sqlite3.c static void unixUnmapfile(unixFile *pFd){ pFd 30176 ext/sqlite3/libsqlite/sqlite3.c assert( pFd->nFetchOut==0 ); pFd 30177 ext/sqlite3/libsqlite/sqlite3.c if( pFd->pMapRegion ){ pFd 30178 ext/sqlite3/libsqlite/sqlite3.c osMunmap(pFd->pMapRegion, pFd->mmapSizeActual); pFd 30179 ext/sqlite3/libsqlite/sqlite3.c pFd->pMapRegion = 0; pFd 30180 ext/sqlite3/libsqlite/sqlite3.c pFd->mmapSize = 0; pFd 30181 ext/sqlite3/libsqlite/sqlite3.c pFd->mmapSizeActual = 0; pFd 30201 ext/sqlite3/libsqlite/sqlite3.c unixFile *pFd, /* File descriptor object */ pFd 30205 ext/sqlite3/libsqlite/sqlite3.c int h = pFd->h; /* File descriptor open on db file */ pFd 30206 ext/sqlite3/libsqlite/sqlite3.c u8 *pOrig = (u8 *)pFd->pMapRegion; /* Pointer to current file mapping */ pFd 30207 ext/sqlite3/libsqlite/sqlite3.c i64 nOrig = pFd->mmapSizeActual; /* Size of pOrig region in bytes */ pFd 30211 ext/sqlite3/libsqlite/sqlite3.c assert( pFd->nFetchOut==0 ); pFd 30212 ext/sqlite3/libsqlite/sqlite3.c assert( nNew>pFd->mmapSize ); pFd 30213 ext/sqlite3/libsqlite/sqlite3.c assert( nNew<=pFd->mmapSizeMax ); pFd 30215 ext/sqlite3/libsqlite/sqlite3.c assert( pFd->mmapSizeActual>=pFd->mmapSize ); pFd 30218 ext/sqlite3/libsqlite/sqlite3.c if( (pFd->ctrlFlags & UNIXFILE_RDONLY)==0 ) flags |= PROT_WRITE; pFd 30222 ext/sqlite3/libsqlite/sqlite3.c i64 nReuse = pFd->mmapSize; pFd 30225 ext/sqlite3/libsqlite/sqlite3.c i64 nReuse = (pFd->mmapSize & ~(szSyspage-1)); pFd 30263 ext/sqlite3/libsqlite/sqlite3.c unixLogError(SQLITE_OK, zErr, pFd->zPath); pFd 30268 ext/sqlite3/libsqlite/sqlite3.c pFd->mmapSizeMax = 0; pFd 30270 ext/sqlite3/libsqlite/sqlite3.c pFd->pMapRegion = (void *)pNew; pFd 30271 ext/sqlite3/libsqlite/sqlite3.c pFd->mmapSize = pFd->mmapSizeActual = nNew; pFd 30290 ext/sqlite3/libsqlite/sqlite3.c static int unixMapfile(unixFile *pFd, i64 nByte){ pFd 30294 ext/sqlite3/libsqlite/sqlite3.c assert( nMap>=0 || pFd->nFetchOut==0 ); pFd 30295 ext/sqlite3/libsqlite/sqlite3.c if( pFd->nFetchOut>0 ) return SQLITE_OK; pFd 30299 ext/sqlite3/libsqlite/sqlite3.c rc = osFstat(pFd->h, &statbuf); pFd 30305 ext/sqlite3/libsqlite/sqlite3.c if( nMap>pFd->mmapSizeMax ){ pFd 30306 ext/sqlite3/libsqlite/sqlite3.c nMap = pFd->mmapSizeMax; pFd 30309 ext/sqlite3/libsqlite/sqlite3.c if( nMap!=pFd->mmapSize ){ pFd 30311 ext/sqlite3/libsqlite/sqlite3.c unixRemapfile(pFd, nMap); pFd 30313 ext/sqlite3/libsqlite/sqlite3.c unixUnmapfile(pFd); pFd 30335 ext/sqlite3/libsqlite/sqlite3.c unixFile *pFd = (unixFile *)fd; /* The underlying database file */ pFd 30340 ext/sqlite3/libsqlite/sqlite3.c if( pFd->mmapSizeMax>0 ){ pFd 30341 ext/sqlite3/libsqlite/sqlite3.c if( pFd->pMapRegion==0 ){ pFd 30342 ext/sqlite3/libsqlite/sqlite3.c int rc = unixMapfile(pFd, -1); pFd 30345 ext/sqlite3/libsqlite/sqlite3.c if( pFd->mmapSize >= iOff+nAmt ){ pFd 30346 ext/sqlite3/libsqlite/sqlite3.c *pp = &((u8 *)pFd->pMapRegion)[iOff]; pFd 30347 ext/sqlite3/libsqlite/sqlite3.c pFd->nFetchOut++; pFd 30366 ext/sqlite3/libsqlite/sqlite3.c unixFile *pFd = (unixFile *)fd; /* The underlying database file */ pFd 30372 ext/sqlite3/libsqlite/sqlite3.c assert( (p==0)==(pFd->nFetchOut==0) ); pFd 30375 ext/sqlite3/libsqlite/sqlite3.c assert( p==0 || p==&((u8 *)pFd->pMapRegion)[iOff] ); pFd 30378 ext/sqlite3/libsqlite/sqlite3.c pFd->nFetchOut--; pFd 30380 ext/sqlite3/libsqlite/sqlite3.c unixUnmapfile(pFd); pFd 30383 ext/sqlite3/libsqlite/sqlite3.c assert( pFd->nFetchOut>=0 ); pFd 37269 ext/sqlite3/libsqlite/sqlite3.c static int winMapfile(winFile *pFd, sqlite3_int64 nByte){ pFd 37273 ext/sqlite3/libsqlite/sqlite3.c assert( nMap>=0 || pFd->nFetchOut==0 ); pFd 37275 ext/sqlite3/libsqlite/sqlite3.c osGetCurrentProcessId(), pFd, nByte)); pFd 37277 ext/sqlite3/libsqlite/sqlite3.c if( pFd->nFetchOut>0 ) return SQLITE_OK; pFd 37280 ext/sqlite3/libsqlite/sqlite3.c rc = winFileSize((sqlite3_file*)pFd, &nMap); pFd 37283 ext/sqlite3/libsqlite/sqlite3.c osGetCurrentProcessId(), pFd)); pFd 37287 ext/sqlite3/libsqlite/sqlite3.c if( nMap>pFd->mmapSizeMax ){ pFd 37288 ext/sqlite3/libsqlite/sqlite3.c nMap = pFd->mmapSizeMax; pFd 37292 ext/sqlite3/libsqlite/sqlite3.c if( nMap==0 && pFd->mmapSize>0 ){ pFd 37293 ext/sqlite3/libsqlite/sqlite3.c winUnmapfile(pFd); pFd 37295 ext/sqlite3/libsqlite/sqlite3.c if( nMap!=pFd->mmapSize ){ pFd 37300 ext/sqlite3/libsqlite/sqlite3.c winUnmapfile(pFd); pFd 37301 ext/sqlite3/libsqlite/sqlite3.c if( (pFd->ctrlFlags & WINFILE_RDONLY)==0 ){ pFd 37306 ext/sqlite3/libsqlite/sqlite3.c pFd->hMap = osCreateFileMappingFromApp(pFd->h, NULL, protect, nMap, NULL); pFd 37308 ext/sqlite3/libsqlite/sqlite3.c pFd->hMap = osCreateFileMappingW(pFd->h, NULL, protect, pFd 37312 ext/sqlite3/libsqlite/sqlite3.c pFd->hMap = osCreateFileMappingA(pFd->h, NULL, protect, pFd 37316 ext/sqlite3/libsqlite/sqlite3.c if( pFd->hMap==NULL ){ pFd 37317 ext/sqlite3/libsqlite/sqlite3.c pFd->lastErrno = osGetLastError(); pFd 37318 ext/sqlite3/libsqlite/sqlite3.c rc = winLogError(SQLITE_IOERR_MMAP, pFd->lastErrno, pFd 37319 ext/sqlite3/libsqlite/sqlite3.c "winMapfile1", pFd->zPath); pFd 37322 ext/sqlite3/libsqlite/sqlite3.c osGetCurrentProcessId(), pFd, sqlite3ErrName(rc))); pFd 37328 ext/sqlite3/libsqlite/sqlite3.c pNew = osMapViewOfFileFromApp(pFd->hMap, flags, 0, (SIZE_T)nMap); pFd 37330 ext/sqlite3/libsqlite/sqlite3.c pNew = osMapViewOfFile(pFd->hMap, flags, 0, 0, (SIZE_T)nMap); pFd 37333 ext/sqlite3/libsqlite/sqlite3.c osCloseHandle(pFd->hMap); pFd 37334 ext/sqlite3/libsqlite/sqlite3.c pFd->hMap = NULL; pFd 37335 ext/sqlite3/libsqlite/sqlite3.c pFd->lastErrno = osGetLastError(); pFd 37336 ext/sqlite3/libsqlite/sqlite3.c rc = winLogError(SQLITE_IOERR_MMAP, pFd->lastErrno, pFd 37337 ext/sqlite3/libsqlite/sqlite3.c "winMapfile2", pFd->zPath); pFd 37340 ext/sqlite3/libsqlite/sqlite3.c osGetCurrentProcessId(), pFd, sqlite3ErrName(rc))); pFd 37343 ext/sqlite3/libsqlite/sqlite3.c pFd->pMapRegion = pNew; pFd 37344 ext/sqlite3/libsqlite/sqlite3.c pFd->mmapSize = nMap; pFd 37345 ext/sqlite3/libsqlite/sqlite3.c pFd->mmapSizeActual = nMap; pFd 37349 ext/sqlite3/libsqlite/sqlite3.c osGetCurrentProcessId(), pFd)); pFd 37368 ext/sqlite3/libsqlite/sqlite3.c winFile *pFd = (winFile*)fd; /* The underlying database file */ pFd 37376 ext/sqlite3/libsqlite/sqlite3.c if( pFd->mmapSizeMax>0 ){ pFd 37377 ext/sqlite3/libsqlite/sqlite3.c if( pFd->pMapRegion==0 ){ pFd 37378 ext/sqlite3/libsqlite/sqlite3.c int rc = winMapfile(pFd, -1); pFd 37381 ext/sqlite3/libsqlite/sqlite3.c osGetCurrentProcessId(), pFd, sqlite3ErrName(rc))); pFd 37385 ext/sqlite3/libsqlite/sqlite3.c if( pFd->mmapSize >= iOff+nAmt ){ pFd 37386 ext/sqlite3/libsqlite/sqlite3.c *pp = &((u8 *)pFd->pMapRegion)[iOff]; pFd 37387 ext/sqlite3/libsqlite/sqlite3.c pFd->nFetchOut++; pFd 37409 ext/sqlite3/libsqlite/sqlite3.c winFile *pFd = (winFile*)fd; /* The underlying database file */ pFd 37414 ext/sqlite3/libsqlite/sqlite3.c assert( (p==0)==(pFd->nFetchOut==0) ); pFd 37417 ext/sqlite3/libsqlite/sqlite3.c assert( p==0 || p==&((u8 *)pFd->pMapRegion)[iOff] ); pFd 37420 ext/sqlite3/libsqlite/sqlite3.c osGetCurrentProcessId(), pFd, iOff, p)); pFd 37423 ext/sqlite3/libsqlite/sqlite3.c pFd->nFetchOut--; pFd 37429 ext/sqlite3/libsqlite/sqlite3.c winUnmapfile(pFd); pFd 37432 ext/sqlite3/libsqlite/sqlite3.c assert( pFd->nFetchOut>=0 ); pFd 42441 ext/sqlite3/libsqlite/sqlite3.c #define isOpen(pFd) ((pFd)->pMethods) pFd 51603 ext/sqlite3/libsqlite/sqlite3.c sqlite3_file *pFd; /* The WAL file to which we write */ pFd 51626 ext/sqlite3/libsqlite/sqlite3.c rc = sqlite3OsWrite(p->pFd, pContent, iFirstAmt, iOffset); pFd 51632 ext/sqlite3/libsqlite/sqlite3.c rc = sqlite3OsSync(p->pFd, p->syncFlags & SQLITE_SYNC_MASK); pFd 51635 ext/sqlite3/libsqlite/sqlite3.c rc = sqlite3OsWrite(p->pFd, pContent, iAmt, iOffset); pFd 51753 ext/sqlite3/libsqlite/sqlite3.c w.pFd = pWal->pWalFd; pFd 51797 ext/sqlite3/libsqlite/sqlite3.c rc = sqlite3OsSync(w.pFd, sync_flags & SQLITE_SYNC_MASK); pFd 63038 ext/sqlite3/libsqlite/sqlite3.c sqlite3_file *pFd; /* File descriptor for database pTo */ pFd 63044 ext/sqlite3/libsqlite/sqlite3.c pFd = sqlite3PagerFile(sqlite3BtreePager(pTo)); pFd 63045 ext/sqlite3/libsqlite/sqlite3.c if( pFd->pMethods ){ pFd 63047 ext/sqlite3/libsqlite/sqlite3.c rc = sqlite3OsFileControl(pFd, SQLITE_FCNTL_OVERWRITE, &nByte); pFd 78072 ext/sqlite3/libsqlite/sqlite3.c sqlite3_file *pFd; /* File handle */ pFd 78253 ext/sqlite3/libsqlite/sqlite3.c sqlite3_file *pFd; /* File handle we are reading from */ pFd 78319 ext/sqlite3/libsqlite/sqlite3.c sqlite3_file *pFd; /* File handle to write to */ pFd 78370 ext/sqlite3/libsqlite/sqlite3.c if( pReadr->aMap ) sqlite3OsUnfetch(pReadr->pFd, 0, pReadr->aMap); pFd 78417 ext/sqlite3/libsqlite/sqlite3.c rc = sqlite3OsRead(p->pFd, p->aBuffer, nRead, p->iReadOff); pFd 78514 ext/sqlite3/libsqlite/sqlite3.c sqlite3_file *pFd = pFile->pFd; pFd 78515 ext/sqlite3/libsqlite/sqlite3.c if( pFd->pMethods->iVersion>=3 ){ pFd 78516 ext/sqlite3/libsqlite/sqlite3.c rc = sqlite3OsFetch(pFd, 0, (int)pFile->iEof, (void**)pp); pFd 78540 ext/sqlite3/libsqlite/sqlite3.c sqlite3OsUnfetch(pReadr->pFd, 0, pReadr->aMap); pFd 78545 ext/sqlite3/libsqlite/sqlite3.c pReadr->pFd = pFile->pFd; pFd 78562 ext/sqlite3/libsqlite/sqlite3.c pReadr->pFd, &pReadr->aBuffer[iBuf], nRead, pReadr->iReadOff pFd 78946 ext/sqlite3/libsqlite/sqlite3.c if( pTask->file.pFd ){ pFd 78947 ext/sqlite3/libsqlite/sqlite3.c sqlite3OsCloseFree(pTask->file.pFd); pFd 78949 ext/sqlite3/libsqlite/sqlite3.c if( pTask->file2.pFd ){ pFd 78950 ext/sqlite3/libsqlite/sqlite3.c sqlite3OsCloseFree(pTask->file2.pFd); pFd 79104 ext/sqlite3/libsqlite/sqlite3.c if( pIncr->aFile[0].pFd ) sqlite3OsCloseFree(pIncr->aFile[0].pFd); pFd 79105 ext/sqlite3/libsqlite/sqlite3.c if( pIncr->aFile[1].pFd ) sqlite3OsCloseFree(pIncr->aFile[1].pFd); pFd 79169 ext/sqlite3/libsqlite/sqlite3.c static void vdbeSorterExtendFile(sqlite3 *db, sqlite3_file *pFd, i64 nByte){ pFd 79170 ext/sqlite3/libsqlite/sqlite3.c if( nByte<=(i64)(db->nMaxSorterMmap) && pFd->pMethods->iVersion>=3 ){ pFd 79173 ext/sqlite3/libsqlite/sqlite3.c sqlite3OsFileControlHint(pFd, SQLITE_FCNTL_CHUNK_SIZE, &chunksize); pFd 79174 ext/sqlite3/libsqlite/sqlite3.c sqlite3OsFileControlHint(pFd, SQLITE_FCNTL_SIZE_HINT, &nByte); pFd 79175 ext/sqlite3/libsqlite/sqlite3.c sqlite3OsFetch(pFd, 0, (int)nByte, &p); pFd 79176 ext/sqlite3/libsqlite/sqlite3.c sqlite3OsUnfetch(pFd, 0, p); pFd 79339 ext/sqlite3/libsqlite/sqlite3.c sqlite3_file *pFd, /* File handle to write to */ pFd 79352 ext/sqlite3/libsqlite/sqlite3.c p->pFd = pFd; pFd 79371 ext/sqlite3/libsqlite/sqlite3.c p->eFWErr = sqlite3OsWrite(p->pFd, pFd 79396 ext/sqlite3/libsqlite/sqlite3.c p->eFWErr = sqlite3OsWrite(p->pFd, pFd 79449 ext/sqlite3/libsqlite/sqlite3.c if( pTask->file.pFd==0 ){ pFd 79450 ext/sqlite3/libsqlite/sqlite3.c rc = vdbeSorterOpenTempFile(db, 0, &pTask->file.pFd); pFd 79451 ext/sqlite3/libsqlite/sqlite3.c assert( rc!=SQLITE_OK || pTask->file.pFd ); pFd 79458 ext/sqlite3/libsqlite/sqlite3.c vdbeSorterExtendFile(db, pTask->file.pFd, pTask->file.iEof+pList->szPMA+9); pFd 79470 ext/sqlite3/libsqlite/sqlite3.c vdbePmaWriterInit(pTask->file.pFd, &writer, pTask->pSorter->pgsz, pFd 79523 ext/sqlite3/libsqlite/sqlite3.c if( pReadr1->pFd==0 ){ pFd 79525 ext/sqlite3/libsqlite/sqlite3.c }else if( pReadr2->pFd==0 ){ pFd 79553 ext/sqlite3/libsqlite/sqlite3.c if( pReadr1->pFd ) bCached = 0; pFd 79558 ext/sqlite3/libsqlite/sqlite3.c *pbEof = (pMerger->aReadr[pMerger->aTree[1]].pFd==0); pFd 79767 ext/sqlite3/libsqlite/sqlite3.c vdbePmaWriterInit(pOut->pFd, &writer, pTask->pSorter->pgsz, iStart); pFd 79776 ext/sqlite3/libsqlite/sqlite3.c if( pReader->pFd==0 ) break; pFd 79930 ext/sqlite3/libsqlite/sqlite3.c if( p1->pFd==0 ){ pFd 79932 ext/sqlite3/libsqlite/sqlite3.c }else if( p2->pFd==0 ){ pFd 80078 ext/sqlite3/libsqlite/sqlite3.c rc = vdbeSorterOpenTempFile(db, mxSz, &pIncr->aFile[0].pFd); pFd 80080 ext/sqlite3/libsqlite/sqlite3.c rc = vdbeSorterOpenTempFile(db, mxSz, &pIncr->aFile[1].pFd); pFd 80085 ext/sqlite3/libsqlite/sqlite3.c if( pTask->file2.pFd==0 ){ pFd 80087 ext/sqlite3/libsqlite/sqlite3.c rc = vdbeSorterOpenTempFile(db, pTask->file2.iEof, &pTask->file2.pFd); pFd 80091 ext/sqlite3/libsqlite/sqlite3.c pIncr->aFile[1].pFd = pTask->file2.pFd; pFd 80510 ext/sqlite3/libsqlite/sqlite3.c *pbEof = (pSorter->pReader->pFd==0);