View Issue Details

IDProjectCategoryView StatusLast Update
0003114SAS.ПланетаБаг / Bugpublic22-07-2016 13:48
Reporteraflexus Assigned Tozed  
PrioritynormalSeveritycrashReproducibilityalways
Status resolvedResolutionfixed 
PlatformWindowsOS7OS VersionUltimate
Product Version160707 
Target Version181221Fixed in Version181221 
Summary0003114: Менеджер кэша неправильно обрабатывает имена с точкой
DescriptionЕсли в менеджере кэша в пути к исходному или целевому тайлохранилищу есть точка в последней части имени, то это воспринимается как расширение архива и если расширение не совпадает с поддерживаемыми типами архивов или тип тайлохранилища не поддерживает запаковку в архив, то работа не выполняется.

Выпадает ошибка
Assertion failure
(D:\coding\Delphi\src\SAS.Planet\sas.nightly\sas.src\Src\CacheManager\frm_CacheManager.pas, line 285)
TagsNo tags attached.

Activities

aflexus

21-07-2016 19:24

reporter   ~0017538

Возможно проблема в имени папки с кешем? Конкретно эти двe выдавали ошибку:

here.com.map
here.com.satellite

В остальных случаях проблем с конвертом sas->dbv не наблюдалось.

zed

21-07-2016 20:01

manager   ~0017539

Да, связано с именем папки. Ошибка в определении является ли источник архивом (поддерживаются тайловые кэши в zip и tar архивах) или папкой.

vdemidov

21-07-2016 20:04

manager   ~0017540

Да. Дело в наличии точки в имени папки. У Zed там логика такая, что если есть точка, значит есть расширение, а если есть расширение, значит это не папка, а файл, а раз файл, значит архив. А раз расширение не архивное, значит ошибка.

aflexus

21-07-2016 20:05

reporter   ~0017541

Last edited: 21-07-2016 20:06

Карта в sas.plus.maps. В программе поправимо? Или все папки с точками переименовывать? Тогда и в репозитории их надо переименовать тоже, чтобы при обновлении не дублировались.

vdemidov

21-07-2016 20:15

manager   ~0017542

В sas.plus.maps? Вы уверены? Там обычно zmp лежат, а кэш отдельно. Но вообще точки играют роль только в последней части пути.

aflexus

21-07-2016 20:21

reporter   ~0017543

В релизе они (sas.plus.maps) ведь лежат распакованными в виде папок, а не в виде архивов zmp. Сами гляньте SAS.Planet.Release.160707.zip :) И так, вроде как всегда и было.

Но тут, насколько я понимаю, дело не в этом, а в имени папки, куда сохраняется кеш (NameInCache), верно?

zed

22-07-2016 12:25

manager   ~0017545

> У Zed там логика такая
У НАС там логика такая.

> В программе поправимо?
Да, добавил проверку на наличие файла перед анализом расширения.

А по поводу поддержки тайловых кэшей в zip я погорячился. На текущий момент поддерживается только tar.

vdemidov

22-07-2016 12:43

manager   ~0017548

>> У Zed там логика такая
>У НАС там логика такая.
Та ладно, это полностью твое детище.
Надо вообще избавляться от такой проверки пути исходного и результирующего тайлохранилища, а делать отдельные типы для заархивированных в разные архивы с разной структурой каталогов.
А то после твоего фикса теперь нельзя перегнать кэш в tar не создав предварительно пустой файл с нужным именем.

zed

22-07-2016 13:04

manager   ~0017551

>Та ладно, это полностью твое детище.
Первоначально я его написал, но туда уже достаточно много внесено доработок и тобой и Garl-ом и vasketsov-ым. SAS это коллективный труд и не стоит разделять и вести учёт своего кода и кода zed-а и прочих. Такое разграничение с твоей стороны, говорит только о том, что ты баги в "чужом" коде исправлять принципиально не собираешься, но потыкать пальцем в них всегда рад.

vdemidov

22-07-2016 13:13

manager   ~0017552

> Такое разграничение с твоей стороны, говорит только о том, что ты баги в "чужом" коде исправлять принципиально не собираешься, но потыкать пальцем в них всегда рад.
Ну почему же, явные баги я везде по возможности исправляю, но здесь это не столько баг, сколько особенность логики, которую нельзя исправить не переделав ГУЙ весьма сильно. А поскольку я этой функциональностью не пользуюсь совсем, то не считаю себя в праве все так сильно переделывать, так как могу добавить новых более критичных багов.

А по поводу потыкать пальцем в баги, то я буду рад, если кто-то потыкает пальцем в мои. Главное что бы это было обоснованное тыканье.

zed

22-07-2016 13:39

manager   ~0017554

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

vdemidov

22-07-2016 13:48

manager   ~0017555

Ну да, учитывая что этой баге уже фиг знает сколько лет, а всплыла только сейчас. Но не пользуются именно потому что ГУЙ никак не намекает на наличие фитчи. Был бы чекбокс - пользовались бы чаще.

Issue History

Date Modified Username Field Change
21-07-2016 19:18 aflexus New Issue
21-07-2016 19:24 aflexus Note Added: 0017538
21-07-2016 20:01 zed Note Added: 0017539
21-07-2016 20:04 vdemidov Note Added: 0017540
21-07-2016 20:05 aflexus Note Added: 0017541
21-07-2016 20:06 aflexus Note Edited: 0017541
21-07-2016 20:15 vdemidov Note Added: 0017542
21-07-2016 20:21 aflexus Note Added: 0017543
22-07-2016 05:56 vdemidov Status new => confirmed
22-07-2016 05:56 vdemidov Product Version .Nightly => 160707
22-07-2016 05:56 vdemidov Target Version => 42xxxx
22-07-2016 05:56 vdemidov Summary Ошибка при попытке конвертации в версионный беркли. => Менеджер кэша неправильно обрабатывает имена с точкой
22-07-2016 05:56 vdemidov Description Updated
22-07-2016 12:25 zed Note Added: 0017545
22-07-2016 12:25 zed Status confirmed => resolved
22-07-2016 12:25 zed Fixed in Version => 181221
22-07-2016 12:25 zed Resolution open => fixed
22-07-2016 12:25 zed Assigned To => zed
22-07-2016 12:25 zed Target Version 42xxxx => 181221
22-07-2016 12:43 vdemidov Note Added: 0017548
22-07-2016 13:04 zed Note Added: 0017551
22-07-2016 13:13 vdemidov Note Added: 0017552
22-07-2016 13:39 zed Note Added: 0017554
22-07-2016 13:48 vdemidov Note Added: 0017555
08-08-2025 13:22 zed Category Баг => Баг / Bug