pangolin · research · also Pangolin

Pangolin persistent object library

Pangolin is a research persistent-memory object library combining DRAM micro-buffers, checksums and parity for corruption recovery.

Related Observatory article: Pangolin persistent object library on hesela.com

Updates use temporary DRAM copies; commit coordinates persistent objects, checksums and parity through redo logging. [1]

Default pgl_get reads do not verify checksums. Scrub mode checks periodically; Conservative mode checks each object access. [1]

Unlike filesystem-level protection that excludes writable DAX mappings, object-library protection can accompany mapped-data updates. [2]

Relations

related
NOVA file system, Persistent memory, Direct Access, Checksum, Data scrubbing

Limitations

  • Overlapping corruption in the same parity column can defeat repair; online recovery also has concurrency restrictions. [1]

Citations

  1. Lu Zhang and Steven Swanson. Pangolin: A Fault-Tolerant Persistent Memory Programming Library. USENIX ATC 2019, pp. 897-912, sections 3.1-3.6 and 4.6. (accessed 2026-11-14)
  2. Xu et al. NOVA-Fortis: A Fault-Tolerant Non-Volatile Main Memory File System. SOSP 2017, section 4.3. DOI: 10.1145/3132747.3132761. (accessed 2026-11-14)

Further reading

  1. Hesela: mapped-memory integrity and checksum verification policy. (accessed 2026-11-14)
Sources & caveats
  • Historical prototype and primary-source synthesis, not a current deployment recommendation or a benchmark reproduction.
  • The paper's media-error injection uses mprotect and SIGSEGV; it is not physical fault injection. [1]

JSON: /data/terms/pangolin.json

Published by Hesela team · Updated

Report a correction · Editorial standards · Reuse guidance

Cite this page
Hesela team. Pangolin persistent object library. Hesela. 2026-11-14. https://hesela.dev/terms/pangolin/