There is a call to FileSystemSyncAccessHandle.write() in WriteAhead.write() (next to last line in this excerpt):
|
// New page size is larger. Save the page data to the WAL file |
|
// so it can be read back and rewritten as frames with the new |
|
// page size. |
|
const pageOffset = offset % this.#txInProgress.newPageSize; |
|
const waOffset = this.#activeOffset + |
|
(offset - pageOffset) / this.#txInProgress.newPageSize * frameSize + |
|
FRAME_HEADER_SIZE + |
|
pageOffset; |
|
this.#activeHandle.write(data.subarray(), { at: waOffset }); |
|
this.log?.(`%cwrite page at ${offset} to WAL ${this.#activeHeader.salt1 & 1}:${waOffset}`, 'background-color: lightskyblue;'); |
This call is made when executing a VACUUM with a change to a larger page size. The return value is not checked for success, so a failure here (e.g. an incomplete write due to exhausting quota) will not be detected.
There is a call to
FileSystemSyncAccessHandle.write()inWriteAhead.write()(next to last line in this excerpt):wa-sqlite/src/examples/WriteAhead.js
Lines 268 to 277 in 07ad48c
This call is made when executing a VACUUM with a change to a larger page size. The return value is not checked for success, so a failure here (e.g. an incomplete write due to exhausting quota) will not be detected.