The manual operation (
RestoreFootprintOp) is, for the most part, no longer needed starting in Protocol 23, as archived entries are automatically restored during InvokeHostFunctionOp when simulation includes them in the transaction’s restore list. RestoreFootprintOp can be used in rare use cases described in this section.RestoreFootprintOp operation. We’ll make two assumptions for the sake of this guide:
- The contract instance itself is still live (i.e., others have been extending its TTL while you’ve been away).
- You don’t know how your archived data is represented on the ledger.
- Simulate our transaction as we normally would.
- If the simulation indicated it, we perform restoration with a
RestoreFootprintOpoperation using the hints we got from the simulation. - We retry running our initial transaction.
submitOrRestoreAndRetry() that will take care of all those steps for us:
This guide makes use of the (aptly named)
submitTx function we created in another guide.