DeterministicESPAsyncWebServer v6.27.1
Zero-allocation, bounded-execution async HTTP server for ESP32
Loading...
Searching...
No Matches
sqlite_format.h File Reference

Reader for the SQLite3 on-disk file format (DETWS_ENABLE_SQLITE). More...

#include "ServerConfig.h"
#include <stddef.h>
#include <stdint.h>

Go to the source code of this file.

Detailed Description

Reader for the SQLite3 on-disk file format (DETWS_ENABLE_SQLITE).

This is file-format access, not the SQLite library: the documented database file structure (https://www.sqlite.org/fileformat2.html) parsed by hand - the 100-byte database header, the b-tree page header, the record varint, and record serial types. It is read-first (a bounded writer is a later step), pure (no I/O; you hand it page bytes), and host-testable against real files produced by the sqlite3 CLI. It deliberately does not pull in the SQLite amalgamation, which needs a heap and stdio and does not fit the no-stdlib zero-heap model.

A caller reads a page (::SqliteDbHeader::page_size bytes) from the backing store - e.g. via wal_fs / fs::FS - and walks it with these parsers: page 1 begins with the database header (100 bytes) immediately followed by the root b-tree page header of the schema table.

Definition in file sqlite_format.h.