mirror of
https://github.com/neondatabase/neon.git
synced 2026-01-10 06:52:55 +00:00
Before this patch, if the task fails, we would not reset self.initial_size_computation_started. So, if it fails, we will return the approximate value forever. In practice, it probably never failed because the local filesystem is quite reliable. But with on-demand download, the logical size calculation may need to download layers, which is more likely to fail at times. There will be internal retires with a timeout, but eventually, the downloads will give up. We want to retry in those cases. While we're at it, also change the handling of the timeline state watch so that we treat it as an error. Most likely, we'll not be called again, but if we are, retrying is the right thing.