SimpleProgress
This is a message of the
Freenet Client Protocol 2.0 (FCP 2.0).
It is sent from the Freenet node to a client program.
This indicates the progress of a large request (usually a splitfile, a big file which is split across a large number of blocks).
Example
SimpleProgress
Total=12288 // 12,288 blocks we can fetch
Required=8192 // we only need 8,192 of them (because of splitfile redundancy)
Failed=452 // 452 of them have failed due to running out of retries
FatallyFailed=0 // none of them have encountered fatal errors
Succeeded=1027 // we have successfully fetched 1,027 blocks
FinalizedTotal=true // the Total will not increase any further (if this is false, it may increase; it will never decrease)
Identifier=Request Number One
EndMessage
Note that before FinalizedTotal=true, Total may vary wildly on a
ClientGet, because we may follow redirects, have to fetch multi-level splitfiles and so on. However, once we are fetching the final splitfile, FinalizedTotal will be set to true. Whereas on a
ClientPut, we can't generate the metadata until quite late on, so it takes a long time to set FinalizedTotal=true, but this doesn't matter as the Total will not increase very much (since the majority of the insert is the actual data and check blocks).