According to what I read in the Mithril docs. The snapshots will be saved in Mithril Aggreagtor for each epoch (This means 1 snapshot will be created every 5 days). Light wallets can then download this snapshot to see their transaction history without downloading the full node. But snapshots only provide pre-snapshot transaction information. If after the snapshot is created, I make a transaction, will the transaction be updated on my wallet? Or do I have to wait 5 days for the next snapshot of my transaction to be updated?
2 Answers
A mithril snapshot currently contains the whole persisted DB of a cardano-node. As said by @roy-nakakawa, it's tied to a Cardano epoch because Mithril relies on the epoch's stake distribution for signing the snapshot, but there won't be a single snapshot per epoch. It's still a parameter to be tuned but the idea is to balance the resources needed to produce signatures, aggregate them and build snapshot with the amount of work needed to catch-up in between snapshots, to decide on the frequency of snapshot generation.
To address your questions:
If after the snapshot is created, I make a transaction, will the transaction be updated on my wallet?
It would depend on the specifics of your wallet, but the idea is that a (heavyweight at least) wallet would start with a snapshot taken at some point in the past, and then "follow the chain" from that point on, a process that should be pretty fast (eg. seconds or minutes) to reach the tip of the chain.
Once there, it will proceed as normal and your transaction will certainly be reflected in your wallet's state and on-chain as soon as possible, eg. pending confirmation.
Or do I have to wait 5 days for the next snapshot of my transaction to be updated?
It's not clear what you mean by "next snapshot of my transaction" but no, you won't have to wait for 5 days as your wallet will have caught up before.
What I have said is true for the current state of Mithril which is geared towards heavyweight wallet as we are still figuring out how to best fulfil lightwallet's needs. A light wallet does not have direct access to a cardano-node and relies on a third party to provide a trusted view of the chain, and the current idea we are exploring is to find a way to provide a fragment of the snapshotted state, and/or sign multiple things.
-
What is the mechanism of heavyweight wallet follow the chain after taking snapshot? You mean we have to rely on another sever? Commented Nov 9, 2023 at 7:52
-
Sorry for taking so long to respond @QuangDaniel. The snapshot is used to prime a Cardano-node, then after it's bootstrapped, it follows the chain normally, connecting to other nodes in the network and pulling new blocks as they are diffused across it.– insituCommented Jan 7 at 8:55
Mithril snapshots will be generated more often than Cardano epochs.
-
How often? What if I make a transaction 1s after snapshot? Commented Aug 14, 2022 at 1:16