Сache logic was broken

Evgeny Kurshev shared this problem 27 hours ago
Not processed

Earlier Locus uses cache very clever:

1) if tile in cache (no matter - expiried or not) - Locus draw it on screen instantly.

2) if tile not in cache or expiried - Locus try to get new one.

3) When new tile received - Locus (re)draw it.

It's best way to use cache:

- when offline - I whant to see map anyway, expiration does not matter.

- when online - I see map instantly (good user expirience, really), with update after second.

And, as I remember, Menion described this logic several years ago.

But, unfortunately, now this logic is broken :(

Steps to reproduce:

1) open any tile map (LoMaps Online) and scroll it to cache some region.

2) set cache timeout to 0 hours.

3) turn off any connection (mobile, wifi)

4) try to scroll across cached region.

If you scroll very fast - you'll see cached tiles for just a moment, but immediately replacing by "Connection failed" on grey squares pattern.

Same cases when I'm online, but server has temporary problems and return 5xx, or in one case - 403. It's very frustrating to see tiles flashing, know they are in the cache, but not be able to work with them normally.

Leave a Comment
 
Attach a file