SASGIS - SAS.Планета
View Issue Details
0003244SAS.Планета[All Projects] Багpublic25-06-2017 14:3203-07-2017 07:33
aflexus 
 
highmajorhave not tried
newopen 
Windows7Ultimate
160707 
 
0003244: Затирание тайлов в кеше пустышками, если тайлы стали недоступны на сервере
Собственно именно это и происходит, если включить в настройках опцию "Сохранять информацию об отсутствии тайлов на сервере" и использовать режим "Интернет".

Если тайла нет ни в кеше, ни на сервере, создание tne очевидно и понятно.

Вы спросите, почему не включить режим "Кеш и интернет"? Как тогда узнать, появились ли обновления на сервере? Для этой цели "Интернет" подходит в самый раз - есть новая версия тайла на сервере, закачиваем, затирая старую.

Но когда на сервере тайла нет вообще, затирать уже существующий пустышкой - это как-то через чур :)
No tags attached.
Issue History
25-06-2017 14:32aflexusNew Issue
28-06-2017 12:27PapazolNote Added: 0017995
29-06-2017 16:40aflexusNote Added: 0018004
29-06-2017 17:37PapazolNote Added: 0018005
29-06-2017 17:39PapazolNote Edited: 0018005bug_revision_view_page.php?bugnote_id=18005#r7187
30-06-2017 10:39aflexusNote Added: 0018006
30-06-2017 10:55PapazolNote Added: 0018007
03-07-2017 07:17zedNote Added: 0018010
03-07-2017 07:18zedProduct Version.Nightly => 160707
03-07-2017 07:33aflexusNote Added: 0018011

Notes
(0017995)
Papazol   
28-06-2017 12:27   
Для обнаружения новых снимков есть такое понятие "версионный кэш". Если при скачивании установлена обновлённая версия, то предыдущие версии никоим образом затронуты не будут, независимо, есть там настоящие тайлы или tne. Версионный кэш позволяет сохранять предыдущие версии снимков, находить новые снимки и не сохранять тайлы, одинаковые с уже присутствующими в предыдущих версиях.

При неверсионном кэше правила скачивания установлены жёстко: если "Кэш", ничего не скачивается, а тайлы выводятся на экран из кэша. Если там их нет, остаются пустые места. При "Интернет и кэш" скачиваются только те тайлы, которые отсутствуют в кэше. При "Интернет" скачиваются все тайлы, и они заменяют собой тайлы, имеющиеся в кэше. Естественно, если опция "Сохранять... tne" включена, они будут сохраняться. А как же иначе понять, что вообще происходит? Вы предлагаете для любого тайла, имеющегося в кэше, но отсутствующего на сервере, спрашивать согласия на замену? Или что-то другое?
(0018004)
aflexus   
29-06-2017 16:40   
Я предлагаю не записывать tne, если в кеше тайл уже есть, а на сервере нет/стал недоступен и пр.

Ибо иначе, если вдруг сервер начал выдавать 404, а тут стоит режим автоматической закачки с заменой, есть все шансы забить всю область пустышками, не смотря на то, что в планах было только обновить тайлы.
В таком случае режим с tne несмотря на некоторое удобство, становится достаточно опасным.

С версионным кешем все отлично, но что будет, если включить новую версию, а тайлы на сервере станут недоступны? Запишется новый слой tne-шек и закроет собой предыдущую версию? Какой в этом смысл?
(0018005)
Papazol   
29-06-2017 17:37   
(edited on: 29-06-2017 17:39)
В версионном кэше все тайлы имеют тэг "номер версии". И даже если в новой версии на месте ранее присутствовавших тайлов появятся tne, они будут записаны с тэгом новой версии, а тайлы старой версии затронуты не будут. Таким образом, для каждой версии свои тайлы и свои tne.
И ведь вы можете выбирать, тайлы какой версии выводить на экран, поэтому проблем перекрывания не будет.

(0018006)
aflexus   
30-06-2017 10:39   
Я не об этом. Понятно, что в версионном новая версия никак не затронет тайлы предыдущий.
Я о том, что к примеру, есть версия "раз" - в ней закачаны все тайлы в какой-то области. Мы меняем версию на "два", начинаем качать, а тайлов не сервере уже нет. Естественно, эта область заливается tne-шками. Получается, что предыдущая версия (если конечно ее не устанавливать принудительно) отображаться не будет даже при включенной опции "Отображать предыдущие версии", а будут показваться пустышки. Верно?
(0018007)
Papazol   
30-06-2017 10:55   
К сожалению, а, может, и к счастью, в моём кэше не нашлось таких мест, которые раньше имели тайлы, а потом перестали иметь. Поэтому проверить это поведение программы я не могу.
Но разработчики программы наверняка позаботились о том, чтобы нормальные тайлы выводились на экран поверх tne, если опция "отображать предыдущие версии" включена. Если это так, пусть просто подтвердят, и дело с концом.
(0018010)
zed   
03-07-2017 07:17   
> Я предлагаю не записывать tne, если в кеше тайл уже есть, а на сервере нет/стал недоступен и пр.

Не уверен, что такое поведение по-умолчанию подойдёт всем. Т.е. придётся делать какую-то отдельную настройку?

> Но разработчики программы наверняка позаботились

Нет, никто там ни о чём таком не заботился. В версионном кэше выводится первым тайл или tne в зависимости от того, у кого версия "больше".
(0018011)
aflexus   
03-07-2017 07:33   
> Не уверен, что такое поведение по-умолчанию подойдёт всем. Т.е. придётся делать какую-то отдельную настройку?

Я не вижу смысла перезаписывать рабочие тайлы tne-шками вообще. Особенно в классическом кеше!
Но раз я не вижу смысла, это не значит, что его нет. Возможно, подобное поведение можно использовать в версионном с целью отслеживания отсутствия тайлов в новой версии или еще для чего. Тогда, вероятно, настройка может помочь.

> Нет, никто там ни о чём таком не заботился. В версионном кэше выводится первым тайл или tne в зависимости от того, у кого версия "больше".

Тем более.