ExportXMLWordPrintableJSON

    • Type: New Feature
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Backup
    • None
    • Storage Engines - Persistence
    • 529.496
    • SE Persistence backlog
    • None

      Support reflink (copy-on-write) based table cloning in the backup workflow to enable near-instant database-level cloning

      Background

      Near-instant cloning / branching of databases is becoming a common requirement:

      • Gaming: A rollback point is created before every release so that the service can be quickly rolled back when a release goes wrong. Today this relies on full logical or physical copies, whose time and storage cost both grow linearly with the data size.
      • AI agent sandboxes: An agent takes a snapshot before a high-risk step, rolls back on failure, forks from a snapshot to try alternative approaches, and discards it when done. These workloads are typically single-node and require replicas to be created and destroyed within seconds.

      Proposal

      Add a capability to WiredTiger: within the backup workflow, clone a caller-specified set of tables via filesystem reflink and register the new tables into WiredTiger.wt.

      Draft interface :

       

      /*
       * pairs:  A list of (source uri, new uri), for example
       *         "table:collection-0-123=table:collection-9-123,table:index-1-123=table:index-10-123"
       * config: method=clone|auto
       *         clone: reflink must be used; fail immediately when it is not supported
       *                (never silently fall back to a full copy).
       *         auto:  prefer reflink, and fall back to a regular copy when it is not supported.
       */
      int WT_SESSION::clone_tables(WT_SESSION *session, const char *pairs, const char *config);
      
      

       

            Assignee:
            Unassigned
            Reporter:
            y yz (EXT)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: