-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Warn when reading date from non-existing ancient blocks. #7411
Comments
This issue is really critical for Augur, which sync's the blockchain via a series of getLogs, making the assumption that blocks prior to getBlock("latest").number are available. To illustrate the issue outlined above, here is an inspection of CryptoKitties Birth events from a recently warp-sync'd parity node (warp-barrier:
There were a great number of events between We will add a section to our README advising users not to use Parity with warp-sync (or to use warp-sync only with a specific |
I'll echo my comment on a duplicate issue (#9542) I opened here instead: After I've set up a new mode with warp and I try to query for historical logs, I get incomplete results. IIUC this is expected since parity by default prunes historical data. However, RPC clients can easily make the assumption that We should consider returning an error instead if logs for a queried-for block is not available. Relates to #9541 |
@udoprog The issue isn't that it "prunes" this data in warp mode, the issue is that it has not yet back-filled the data (even though much newer blocks DO have this data). This issue is specific to warp-mode. If you wait long enough, those blocks and logs will become available to your warp-sync'd parity node. Your conclusion is correct, though: "We should consider returning an error instead if logs for a queried-for block is not available." |
@seunlanlege wasn't that done already? |
yup in #9475 |
Currently after warp sync not all blocks might be present, although you can see the latest state in the UI.
This might be especiall frustrating for developers, since RPC is just simply not returning data for such blocks.
Example:
Fetching all the logs for particular address can render an empty list even though there are clearly blocks with logs out there.
Proposal:
The text was updated successfully, but these errors were encountered: