{"version":"2.1.227","anchor":"branching-a-conversation-through-the-newer-storage-backend","canonical_anchor":"branching-a-conversation-through-the-newer-storage-backend","heading":"Branching a conversation through the newer storage backend","tier":"internal","area":"Storage Backend","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.227\/e\/branching-a-conversation-through-the-newer-storage-backend","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.227","markdown":"### Branching a conversation through the newer storage backend\n\nForking a conversation has a second implementation for sessions stored in the newer backend.\n\n**What**\n\nForking a conversation has a second implementation that copies the source records forward in bounded batches through the newer storage layer, and deletes the half-written fork if anything fails partway. It runs only when the session's history is held in that backend.\n\n**Details**\n\n- Carries over edited and moved records, and inherits a withheld-history marker as a `fork_inherit` record.\n- Distinct errors for a conversation that cannot be read and one that is too long to branch.\n\n**Evidence**\n\n`Conversation too long to branch through storage`\n\n- Area: Storage Backend\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 2\/5"}