SASGIS - SAS.Планета
View Issue Details
0001555SAS.Планета[All Projects] Багpublic11-09-2012 21:4131-10-2012 06:44
vasketsov 
vdemidov 
normalmajoralways
resolvedfixed 
WindowsVistaUltimate
110418 
121010121010 
0001555: Попадание в кэш одновременно и тайла и tne
Скорее всего с 11-й доработкой (резка пустышек) не связано, но мало ли...

Имеем тайл в кэше. Никаких tne.
Жмакаем на нём Insert+Click. Типа скачиваем.
Получаем ответ 404 (я получил его резкой пустышки - думаю что если придёт честный 404 - будет то же самое).
Идём в кэш - рядом лежат тайл и tne.

Звучит конечно страшно, что надо удалять тайл при получении tne, но что-то тут по-любому ненормально.
No tags attached.
related to 0001669resolved zed Попадание в кэш Беркли одновременно и тайла и tne 
related to 0001656confirmed  Если сервер прислал пустышку, удалять соответствующий тайл из тайлохранилища 
Issue History
11-09-2012 21:41vasketsovNew Issue
12-09-2012 04:36TolikNote Added: 0008834
12-09-2012 06:51vasketsovNote Added: 0008839
12-09-2012 06:54vdemidovNote Added: 0008840
12-09-2012 07:01vdemidovStatusnew => resolved
12-09-2012 07:01vdemidovFixed in Version => 121010
12-09-2012 07:01vdemidovResolutionopen => fixed
12-09-2012 07:01vdemidovAssigned To => vdemidov
12-09-2012 07:01vdemidovProduct Version.Nightly => 110418
12-09-2012 07:01vdemidovTarget Version => 121010
12-09-2012 07:25vasketsovNote Added: 0008841
12-09-2012 08:35TolikNote Added: 0008847
12-09-2012 08:36TolikNote Edited: 0008847bug_revision_view_page.php?bugnote_id=8847#r4301
12-09-2012 08:40TolikNote Edited: 0008847bug_revision_view_page.php?bugnote_id=8847#r4302
12-09-2012 08:52vdemidovNote Added: 0008848
12-09-2012 09:59vasketsovNote Added: 0008861
24-10-2012 11:52TolikNote Added: 0009724
24-10-2012 11:58vdemidovNote Added: 0009725
24-10-2012 12:05TolikNote Added: 0009726
24-10-2012 12:13vdemidovNote Added: 0009727
24-10-2012 12:20TolikNote Added: 0009728
24-10-2012 12:21TolikNote Edited: 0009728bug_revision_view_page.php?bugnote_id=9728#r4737
24-10-2012 12:39zedNote Added: 0009730
24-10-2012 14:14TolikNote Added: 0009738
24-10-2012 14:31zedNote Added: 0009739
24-10-2012 15:18TolikNote Added: 0009740
24-10-2012 15:19TolikNote Edited: 0009740bug_revision_view_page.php?bugnote_id=9740#r4741
24-10-2012 15:20vdemidovNote Added: 0009741
24-10-2012 15:21TolikNote Edited: 0009740bug_revision_view_page.php?bugnote_id=9740#r4742
24-10-2012 15:31TolikNote Added: 0009742
25-10-2012 04:04TolikNote Edited: 0009724bug_revision_view_page.php?bugnote_id=9724#r4746
25-10-2012 04:24TolikNote Added: 0009743
25-10-2012 04:28TolikNote Edited: 0009743bug_revision_view_page.php?bugnote_id=9743#r4748
25-10-2012 04:40TolikNote Edited: 0009743bug_revision_view_page.php?bugnote_id=9743#r4749
25-10-2012 04:41TolikNote Edited: 0009743bug_revision_view_page.php?bugnote_id=9743#r4750
25-10-2012 04:48zedNote Added: 0009744
25-10-2012 04:49zedNote Edited: 0009744bug_revision_view_page.php?bugnote_id=9744#r4752
25-10-2012 04:49TolikNote Added: 0009745
25-10-2012 07:05TolikNote Added: 0009746
31-10-2012 06:43TolikRelationship addedrelated to 0001669
31-10-2012 06:44TolikNote Added: 0009786
31-10-2012 06:45TolikRelationship addedrelated to 0001656
31-10-2012 06:48TolikNote Edited: 0009786bug_revision_view_page.php?bugnote_id=9786#r4783

Notes
(0008834)
Tolik   
12-09-2012 04:36   
А что САС выводит на экран в такой ситуации: тайл или ничто? И пытается ли его скачать?
(0008839)
vasketsov   
12-09-2012 06:51   
САС игнорирует tne в этом случае и при показе, и при построении карты заполнения.

Таким образом, возвращаясь к резке пустышек, их мало перекачать, их надо сначала удалить из кэша. То есть сначала Delete+Click - тайл пропал (ну и tne с ним, если был уже), потом при закачке появляется tne вместо пустышки.
(0008840)
vdemidov   
12-09-2012 06:54   
Сейчас поправлю
(0008841)
vasketsov   
12-09-2012 07:25   
Надо что-то более хитрое придумать, чем просто удалять тайл при получении tne. А то косяк на сервисе или прокси - всем http 404 - и кэша нет (((((.
Не дуракоустойчиво.

Из очевидного - тайл заведомо можно удалять, если tne получился в результате резки пустышек, как и настроено юзером. Хотя бы потому что он есть в папке EmptyTiles.
(0008847)
Tolik   
12-09-2012 08:35   
(edited on: 12-09-2012 08:40)
Да, если просто удалять при случайной ошибке, у Yurec66 получится куча дырок (которые сами не затянутся) и ещё больше вопросов:
http://sasgis.org/forum/viewtopic.php?p=29974#p29974

(0008848)
vdemidov   
12-09-2012 08:52   
Не путайте ошибку и 404 ошибку.
(0008861)
vasketsov   
12-09-2012 09:59   
>Не путайте ошибку и 404 ошибку
Ошибка типа указания неверного key (типа ключа доступа) как раз и будет приводить к тому, что будет прилетать 404. А key может смениться на лету в процесе закачки. Соответственно перекачиваем мы область, сервер сменил key - и кэш пустой, весь в tne.
(0009724)
Tolik   
24-10-2012 11:52   
(edited on: 25-10-2012 04:04)
> Сейчас поправлю
Я так понял, теперь при наличии и тайла, и tne, тайл не выводится на экран?
Но тайл не удаляется из кэша при получении пустышки?

Столкнулся сейчас с такой картиной: был непустой тайл, потом слой изменился (НЯК) и на этом месте появилась пустышка. Но САС показывает старый тайл, и его можно удалить только вручную.

(0009725)
vdemidov   
24-10-2012 11:58   
Формат кэша? Если беркли, то это к Zed. В файловом при сохранении tne делится старый тайл. Если у вас отключено сохранение tne, то и старый тайл удаляться не будет.
(0009726)
Tolik   
24-10-2012 12:05   
Да, переключил на кэш САС - всё нормально. Щас попробую воспроизвести на Беркли.
(0009727)
vdemidov   
24-10-2012 12:13   
Если воспроизведете, то это уже новый баг нужно открывать
(0009728)
Tolik   
24-10-2012 12:20   
(edited on: 24-10-2012 12:21)
А на беркли воспроизводится легко.
1. есть объект на слое НЯК, скачивается в САС
2. удаляем его из НЯК, ёрзаем там в режиме Интернет, видим ошибки, что тайл Empty.
3. из САСа изображение не удаляется никак, при любом состоянии флага "сохранять TNE"
Что там в кэше - я не знаю, удалить можно только из контекстного меню.

Новый баг открывать сейчас некогда.

(0009730)
zed   
24-10-2012 12:39   
>А на беркли воспроизводится легко.
И вы хотите, чтобы у вас хороший тайл удалялся, а вместо него оставался tne? Не пойму, для чего такое может понадобится?
(0009738)
Tolik   
24-10-2012 14:14   
Это уже плохой тайл, устаревший.
На исходной карте уже пустой тайл, а в кэше остался непустой, т.е. мусор.
(0009739)
zed   
24-10-2012 14:31   
Вообще-то, tne это не "пустой тайл", это либо отсутствие тайла, либо, как привёл пример vasketsov - ошибка запроса.

Я придерживаюсь мнения, что если тайл в кэше есть и нам в режиме Интернет прилетает ошибка от сервера, то никаких tne сохранять не нужно и тем более, удалять существующий тайл.
(0009740)
Tolik   
24-10-2012 15:18   
(edited on: 24-10-2012 15:21)
Я не говорю про ошибку от сервера, я говорю о факте детектирования пустышки. Нет никакой ошибки, сервер прислал полностью прозрачный тайл, и на слое должен быть прозрачный квадрат, т.е. ничего.

Больше того: если с сервера пришёл именно пустой тайл, существующий тайл надо удалять независимо от tne. И независимо от хранилища, конечно.

Представьте: если бы не было образца в EmptyTile, эта пустышка бы затёрла то, что лежит в кэше. И если он есть, надо делать то же самое.

(0009741)
vdemidov   
24-10-2012 15:20   
Ну не любая ошибка сервера, а только 404-я. Плюс возможно стоит различать вариант когда сам скрипт еще до запроса сервера считает что тайла быть не может.
(0009742)
Tolik   
24-10-2012 15:31   
Открыл 0001656.
(0009743)
Tolik   
25-10-2012 04:24   
(edited on: 25-10-2012 04:41)
В Беркли есть ещё один баг при работе с tne.
Допустим, в кэше есть старый непустой тайл, а tne нет.
Включаем сохранение tne.
На сервере карта изменилась, и он присылает пустышку.
С экрана мусор исчезает.
Но если переключить в режим Кэш и сменить зум туда-сюда, он появляется снова!
Если перезапустить САС, мусор тоже виден.
Если переключить в режим Интернет, снова прилетают пустышки и картинка исчезает.
Значит, tne или вообще не сохраняется в базе или работает неправильно (1. приоритет отображения у тайлов и 2. шлются запросы несмотря на то, что tne есть).

(0009744)
zed   
25-10-2012 04:48   
(edited on: 25-10-2012 04:49)
>Если переключить в режим Интернет, снова прилетают пустышки и картинка исчезает.
А разве в режиме Интернет из кэша вообще что-нибудь читается? По-моему tne игнорируются, так же как и тайлы. В любом кэше.

(0009745)
Tolik   
25-10-2012 04:49   
Хм. А зачем тогда tne? Разве не для того, чтобы не лазить в Интернет напрасно?
(0009746)
Tolik   
25-10-2012 07:05   
Проверил с помощью Карты заполнения, что tne всё-таки сохраняется.
В том месте, где есть и тайл, и tne, карта заполнения серая (а после удаления тайла вручную становится красной).
Вообще-то такой ситуации быть не должно, тайл надо удалять.
(0009786)
Tolik   
31-10-2012 06:44   
(edited on: 31-10-2012 06:48)
По поводу дублей в кэше Беркли открыл 0001669.

По поводу того, как должны работать tne, жду комментариев (возможно, надо открыть ещё один багрепорт).