The manual operation (
RestoreFootprintOp) is, for the most part, no longer needed starting in Protocol 23, as archived entries are automatically restored when they appear in a footprint during InvokeHostFunctionOp. 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.