{
  "slug": "xfs-rolling-transaction",
  "term": "XFS rolling transaction",
  "aliases": [
    "XFS transaction rolling"
  ],
  "definition": "An XFS rolling transaction commits one step of a transaction chain and continues with a fresh transaction using a permanent log reservation.",
  "note": "An inode lock can conceal intermediate changes from callers needing that lock, but the journal chain is not atomic. [design] Allocation-group observers have different locking boundaries. [online-fsck]",
  "related": [
    "xfs-relogging",
    "xfs-deferred-operation",
    "xfs-intent-log-item"
  ],
  "status": "shipping",
  "advantages": [],
  "limitations": [],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "citations": [
    {
      "id": "design",
      "title": "Linux v6.16: XFS Logging Design, log space accounting and re-logging",
      "url": "https://github.com/torvalds/linux/blob/v6.16/Documentation/filesystems/xfs/xfs-delayed-logging-design.rst",
      "accessed": "2026-10-16"
    },
    {
      "id": "online-fsck",
      "title": "Linux v6.16: XFS Online Fsck Design, transaction chains and intent drains",
      "url": "https://github.com/torvalds/linux/blob/v6.16/Documentation/filesystems/xfs/xfs-online-fsck-design.rst",
      "accessed": "2026-10-16"
    },
    {
      "id": "hesela-xfs",
      "title": "Hesela: XFS delayed logging and commit boundaries",
      "url": "https://hesela.com/analyses/xfs-delayed-logging-commit-boundaries/",
      "accessed": "2026-10-16"
    }
  ],
  "updated": "2026-10-16"
}
