This object is in archive! 

Some issues with map download errors

tkansgar shared this problem 6 years ago
Not a Problem

Hi again,


currently I have a problem when downloading some map tiles from 4UMaps. A particular tile of the map area I need currently is missing, because the renderer has a problem with it (said the map provider). This lets Locus Map abort the download. I could continue it, but this would be unsuccessful too, because the tile is missing ever. I must discard the whole download including the succesful loaded map tiles.


Here I have two ideas for improvement:


  1. Could Locus Map only report the problem and then continue the download ignoring the missing tile?
  2. Could Locus Map, when any download failure occures, let me decide to store the succesful loaded map tiles instead of discarding them?

The first one applies especially to the tile problem, the second to any other download failure.


tkansgar

Replies (10)

photo
1

Good day tkansgar,

ignoring some problems during map download is definitely not a good idea. It may result in missing tiles exactly on places where you will need them in terrain. Because of this Locus never continue in cases, some unexpected error happen.

If on server are missing map tiles, server should correctly report this as for example 204 HTTP code error , so Locus map creates transparent map tiles and will correctly continue.


May you give me an example of map tile ( x, y, z ) that cause you troubles in case of 4UMaps, so I may simulate it? Thanks

photo
1

Hi Menion,


I meant, that Locus Map only should ignore the missing map tiles, not any download problem. The 4UMaps provider said, that there is another software called Mobac doing so. But I think, the only Android App called Mobac I found couldn't be a competition product to Locus Map. What I say, that it's very annoying to discard a long lasting download, only because there is a missing map tile somewhere.


Here is the error message Locus Map shows while downloading zoom level 13:


Error: 2, tile 4330|2674|21


And Locus Map should preserve an older map tile instead of substituting it by a transparent one, if it's missing on map server.


tkansgar

photo
1

Good day tkansgar,

tile you mentioned is corrupted.

Test valid tile:

url: http://tileserver.4umaps.eu/13/4330/2675.png

PNGCheck result: OK: 2675.png (256x256, 32-bit RGB+alpha, non-interlaced, 82.7%).

Test your (invalid) tile:

url: http://tileserver.4umaps.eu/13/4330/2674.png

PNGCheck result: 2674.png EOF while reading IDAT data, ERROR

If you are in contact with 4UMaps owner, please forward this information to him.

photo
1

But currently, when I click on the link of the invalid tile, there appears a valid png. Seams, that it's repaired meanwhile. I will try the download with Locus Map again.

photo
1

Nope, file has invalid ending, but some browsers or image viewers may read it. It anyway doesn't make this file valid. Best is to check it using "PNGCheck app".

photo
1

While there might be a fix for a particular tile, the topic here is not individual cases, but the topic is resilience against errors of the download process in general.

photo
1

Understand, but I see no other solution except current implemented. When there is an error during download of tile, Locus tries it once again. When result is same, download is paused. Errors on web server are not valid responses so Locus Map does not continue in download.

photo
1

Hi Menion,

ok, but Locus Map should let me decide to store the succesful loaded map tiles instead of discarding them. Isn't this possible too?

tkansgar

photo
1

You may currently stop downloading and keep partially downloaded map, it is not a problem. Problem I see is that you cannot for now ignore these errors and skip incorrectly downloaded tiles. So you will be stuck in middle of download ... but no tiles may be lost.


Improving current downloading system to allow some cancel/skip question dialog in case of any problem should be quite complicated. I have in road map rewrote of downloading system and integrate it into new "notification center", so I'll try to keep this in my mind during future updates. Thanks for understanding.

photo
1

Hi Menion,


yes I know, that I can stop the download and continue it later, even after a restart of Locus Map. But in my case this isn't useful, because I had to wait, till the invalid tile is repaired. I would prefer to adjust the area, so that the invalid tile is outside. But this was quite difficult, because I didn't know the exact location of the invalid tile. So I needed many tries to locate this place. And so I had many aborted downloads with many succesfully loaded tiles I had to discard each time. It would be much more useful, if I could store the succesfully loaded tiles in the DB of Locus Map instead of continuing the download later. So the aborted downloads wouldn't be completely useless.


Now, since you provided a link to the invalid tile and this can be shown by my browser, I know the location, and so it's much easier to adjust the area, so that the invalid tile is outside. Many thanks for that link!


tkansgar

photo
1

Hi Menion,


now must ask again: I just tried to download an area with the invalid tile 4330|2674|21 inside and a blank section at one side too. After closing the window with the download error message the formerly blank section is filled with map tiles. Is it true, what I wrote before, that I don't want Locus Map to discard the successfully tiles when discarding the aborted download, Locus Map does so already? If yes, I'm satisfied till now. If it is difficult to continue the download skipping the invalid tile (my idea number 1. in my initial posting), I must just try to download the areas around the invalid tile. This is difficult for me, but doable. I will try to get infos from the 4UMaps provider, what ist the problem when rendering the tile. Perhaps I can fix this problem in the OpenStreetMap data.


tkansgar

photo
1

Good day,

to be true, I do not know how to quickly help here.

Problem is that server return tile that is not valid. This kind of invalid PNG file are some web browsers able to open and also probably latest Android version. I was trying to find some usable tool that should directly in app fix this PNG problem, but was not success till now.

Creating more intelligent downloaded that will also ask in case of any troubles will take quite a lot of time that I do not have now, sorry.

Don't know, maybe solution should be use some tool I do not like, like Mobac, that may work correctly in this case. Anyway best should be to use vector maps provided directly over Locus Store ( LoMaps ) or any of alternative available on internet ( OpenAndroMaps, etc). Content of these maps should be very close to what you get from 4UMaps ( maybe even better, now sure when was 4UMaps updated ). Thanks for understanding.

Replies have been locked on this page!