The cross-cutting concerns, in roughly the order a reader meets them: which module to import, what an error means, why a build or read fails, what may run concurrently, what memory and speed to expect, and the knobs that change how loudly, how large and how fast the library runs.
Unlike the rest of the guide, most visits here start from a symptom rather than from the top: a build that will not link, a program that aborts, threading that does nothing.
parquet_settings; that each is covered by the
versioning promise in its own right; and the one caveat: no import makes the package Arrow-free.error stop and a
C++-level process exit), how to tell them apart by exit status, warnings, and asking with
found= instead of aborting; plus the context a message carries, why some of it arrives on the
other stream, what calling before open or after close does, and what re-opening a handle does.parquet_table allows, transform sharing, thread-pool tuning, and the
guard that detects a shared reader or writer and stops the process rather than corrupting it.
parquet_random is the one part of the library with no rules at all.