SASGIS - SAS.Планета
View Issue Details
0002543SAS.Планета[All Projects] Багpublic16-11-2014 07:5030-07-2015 07:21
aflexus 
vdemidov 
normalmajorrandom
closedunable to reproduce 
Windows7Ultimate
141212 
 
0002543: Зависание программы после 10-15 минут скачивания карты
После некоторого интервала времени (обычно минут 10-15) программа перестает скачивать тайлы. В диалогах скачивания пишет, что нет соединения с сервером, хотя с интернетом все хорошо и через браузер те же карты открываются нормально. При попытке программу закрыть - зависает наглухо.
No tags attached.
parent of 0001159confirmed  Лог-файл 
Not all the children of this issue are yet resolved or closed.
log EurekaLog 6.1.03.log (145,374) 17-11-2014 07:53
https://bugtracker.sasgis.org/file_download.php?file_id=1789&type=bug
log EurekaLog 6.1.03_02.log (149,839) 17-11-2014 07:59
https://bugtracker.sasgis.org/file_download.php?file_id=1790&type=bug
png Screenshot 2015-02-26 01.39.08.png (15,051) 26-02-2015 00:08
https://bugtracker.sasgis.org/file_download.php?file_id=1822&type=bug
png

png Screenshot 2015-02-26 06.07.27.png (55,990) 26-02-2015 11:54
https://bugtracker.sasgis.org/file_download.php?file_id=1823&type=bug
png

png Screenshot 2015-02-26 06.07.47.png (38,571) 26-02-2015 11:55
https://bugtracker.sasgis.org/file_download.php?file_id=1824&type=bug
png

? SASPlanet.Debug_20150226_1920.elf (101,608) 27-02-2015 16:11
https://bugtracker.sasgis.org/file_download.php?file_id=1825&type=bug
? SASPlanet.Debug_20150227_2005.elf (112,772) 27-02-2015 18:08
https://bugtracker.sasgis.org/file_download.php?file_id=1826&type=bug
7z sas.bug.2543.7z (2,639,962) 28-02-2015 10:24
https://bugtracker.sasgis.org/file_download.php?file_id=1828&type=bug
7z SASPlanet 20150308 143125.log.7z (6,486) 09-03-2015 20:04
https://bugtracker.sasgis.org/file_download.php?file_id=1829&type=bug
Issue History
16-11-2014 07:50aflexusNew Issue
16-11-2014 08:34aflexusNote Added: 0014907
17-11-2014 07:53aflexusFile Added: EurekaLog 6.1.03.log
17-11-2014 07:59aflexusFile Added: EurekaLog 6.1.03_02.log
17-11-2014 08:02aflexusNote Added: 0014913
17-11-2014 08:49zedNote Added: 0014916
17-11-2014 08:57aflexusNote Added: 0014917
17-11-2014 08:59aflexusNote Edited: 0014917bug_revision_view_page.php?bugnote_id=14917#r6320
17-11-2014 09:02zedNote Added: 0014919
17-11-2014 09:11aflexusNote Added: 0014921
17-11-2014 15:02zedNote Added: 0014925
17-11-2014 15:02zedFile Added: Image 1.png
17-11-2014 15:21vdemidovNote Added: 0014926
13-12-2014 12:26vdemidovProduct Version.Nightly => 141212
09-01-2015 09:52vdemidovFile Deleted: Image 1.png
09-01-2015 09:53vdemidovNote Deleted: 0014926
09-01-2015 09:53vdemidovNote Deleted: 0014925
09-01-2015 10:24vdemidovNote Added: 0015078
09-01-2015 10:24vdemidovStatusnew => feedback
09-01-2015 10:31aflexusNote Added: 0015079
09-01-2015 10:31aflexusStatusfeedback => new
09-01-2015 10:37vdemidovNote Added: 0015080
09-01-2015 10:41vdemidovRelationship addedparent of 0001159
09-01-2015 11:04vdemidovNote Added: 0015081
26-02-2015 00:08aflexusFile Added: Screenshot 2015-02-26 01.39.08.png
26-02-2015 00:35aflexusNote Added: 0015320
26-02-2015 07:32vdemidovNote Added: 0015323
26-02-2015 11:54aflexusFile Added: Screenshot 2015-02-26 06.07.27.png
26-02-2015 11:55aflexusFile Added: Screenshot 2015-02-26 06.07.47.png
26-02-2015 12:03aflexusNote Added: 0015324
26-02-2015 13:05zedNote Added: 0015325
26-02-2015 14:00vdemidovNote Added: 0015326
26-02-2015 14:00vdemidovStatusnew => feedback
26-02-2015 14:02aflexusNote Added: 0015327
26-02-2015 14:02aflexusStatusfeedback => new
26-02-2015 15:00vdemidovNote Added: 0015329
27-02-2015 16:11aflexusFile Added: SASPlanet.Debug_20150226_1920.elf
27-02-2015 16:13aflexusNote Added: 0015330
27-02-2015 16:15aflexusNote Edited: 0015330bug_revision_view_page.php?bugnote_id=15330#r6428
27-02-2015 18:08aflexusNote Added: 0015331
27-02-2015 18:08aflexusFile Added: SASPlanet.Debug_20150227_2005.elf
27-02-2015 20:49vdemidovNote Added: 0015332
28-02-2015 03:19aflexusNote Added: 0015333
28-02-2015 07:57vdemidovNote Added: 0015334
28-02-2015 08:04aflexusNote Added: 0015335
28-02-2015 08:22vdemidovNote Added: 0015336
28-02-2015 09:33zedNote Added: 0015337
28-02-2015 10:16zedFile Added: bug.2543.7z
28-02-2015 10:18zedFile Deleted: bug.2543.7z
28-02-2015 10:24zedFile Added: sas.bug.2543.7z
28-02-2015 10:32zedNote Added: 0015338
28-02-2015 10:57aflexusNote Added: 0015339
28-02-2015 11:04aflexusNote Edited: 0015339bug_revision_view_page.php?bugnote_id=15339#r6430
04-03-2015 11:08zedStatusnew => feedback
05-03-2015 23:28vasketsovNote Added: 0015343
09-03-2015 20:03aflexusNote Added: 0015351
09-03-2015 20:03aflexusStatusfeedback => new
09-03-2015 20:04aflexusFile Added: SASPlanet 20150308 143125.log.7z
09-03-2015 20:23zedNote Added: 0015352
10-03-2015 05:27aflexusNote Added: 0015353
10-03-2015 06:47aflexusNote Edited: 0015353bug_revision_view_page.php?bugnote_id=15353#r6434
10-03-2015 06:48aflexusNote Edited: 0015353bug_revision_view_page.php?bugnote_id=15353#r6435
30-07-2015 07:21vdemidovStatusnew => closed
30-07-2015 07:21vdemidovAssigned To => vdemidov
30-07-2015 07:21vdemidovResolutionopen => unable to reproduce

Notes
(0014907)
aflexus   
16-11-2014 08:34   
Проблема появилась после последнего релиза.

Креш пока споймать не могу - вылетает тихо. Поставил дебаг-версию.
(0014913)
aflexus   
17-11-2014 08:02   
Два раза подряд вылет сразу после старта. Логи приаттачил. По поведению в точь похож на описываемый, с той разницей, что не через 10-15 минут.

Возможно проблема с тем, что программа не может скачать тайлы из интернета (отсутствие связи, бан гугла и пр.) и из-за этого вылетает.
(0014916)
zed   
17-11-2014 08:49   
В приложенных логах (кстати, зачем вы их переименовали?) сообщения только об утечке памяти (Memory Leak).
(0014917)
aflexus   
17-11-2014 08:57   
(edited on: 17-11-2014 08:59)
Возможно эти утечки памяти и есть причина вылетов. Логи не переименовывал: когда окошко выскочило, скопировал в буфер и сохранил в файл (имя автоматом редактор подставил :) ).

(0014919)
zed   
17-11-2014 09:02   
> Возможно эти утечки памяти и есть причина вылетов
Не, скорее наоборот.

> скопировал в буфер и сохранил в файл
Оно их само сохраняет в SASPlanet.Debug.elf и для их просмотра есть специальный вьювер. А просто в текстовом виде на них смотреть неудобно.
(0014921)
aflexus   
17-11-2014 09:11   
А вот не было SASPlanet.Debug.elf ни в первом ни во втором случаях. Не знаю почему. А сейчас больше не вылетает... :)
(0015078)
vdemidov   
09-01-2015 10:24   
На какой карте это происходило. То что в браузере открывается нормально далеко не гарантия, что сервер не забанил вас. Например, в браузере может присутствовать кука, при наличии которой сервер отвечает, а без нее тупо игнорит.
(0015079)
aflexus   
09-01-2015 10:31   
Происходило на sas.maps\Google\GoogleSat.zmp

В тот момент у меня постоянно были проблемы с провайдером. Интернет мог пропадать на некоторое время. Именно с этим я связываю вылеты.

Сейчас ошибка не повторяется.
(0015080)
vdemidov   
09-01-2015 10:37   
Дело ясное, что дело темное. Судя по всему проблемы в обработке ошибок сети, но как их ловить у меня пока особых идей нет.
(0015081)
vdemidov   
09-01-2015 11:04   
Нужно будет попробовать вот эту штуку http://habrahabr.ru/post/127274/
(0015320)
aflexus   
26-02-2015 00:35   
Вновь несколько раз споймал очень похожий вылет.

После нескольких часов загрузки наглухо зависла. Работал с яндекс-картами а до этого с GeoCacher direct. Версия была не дебаг, вылетело лишь окошко с ошибкой (приаттачил). Параллельно была запущена GE и программа зависла после того как я закрыл GE.

Запустил дебаг версию, и буквально после 10 минут c GeoCacher direct опять зависла намертво: экран программы белый, курсор крутится. Ждал минут двадцать, после убил (никакого SASPlanet.Debug.elf не получилось естественно), предварительно сделав дамп памяти (Может поможет как :) ). https://mega.co.nz/#!HpVhhBAY!eUrle0-bwq8R1ZOMb2WBLBdkQZ3crBcD458byjcKT10

Вообще ощущение, что это связанно либо с сетью, либо с GE. Часто замечаю, что когда запущена планета и GE одновременно, часто вылетает либо то, либо другое.
(0015323)
vdemidov   
26-02-2015 07:32   
Увы у меня все еще никаких идей в чем может быть причина.
(0015324)
aflexus   
26-02-2015 12:03   
Добавил еще скрины из processexplorer
(0015325)
zed   
26-02-2015 13:05   
Видно что висит на каком-то локе. Может вы битый кэш Беркли юзаете? А то были случаи.
(0015326)
vdemidov   
26-02-2015 14:00   
Кстати да. Тип кэша у вас не Беркли случайно? Если да, то переключите на любой обычный файловый и попробуйте воспроизвести ошибку.
(0015327)
aflexus   
26-02-2015 14:02   
Кэш беркли не юзаю вообще.
(0015329)
vdemidov   
26-02-2015 15:00   
Ну, тогда возвращаемся к тому с чего начали - понятия не имею в чем может быть проблема.
(0015330)
aflexus   
27-02-2015 16:13   
(edited on: 27-02-2015 16:15)
Добавил elf. Не уверен, что он именно от этого вылета, ибо не заметил, как он появился. Но день этот же, походу.

(0015331)
aflexus   
27-02-2015 18:08   
И еще один вылет уже с новым 8556. Запустил программу, походил по гуглу и свернул ее. Когда, через время к ней вернулся и попытался закрыть вылет. Elf приаттачил.
(0015332)
vdemidov   
27-02-2015 20:49   
Все что я нашел в этих файлах связано с поиском доступных снимков. Попробуйте не лезть в это меню.
(0015333)
aflexus   
28-02-2015 03:19   
Не совсем понял, о каком меню речь, но не буду :) Попробую еще половить именно этот баг.
(0015334)
vdemidov   
28-02-2015 07:57   
"Дополнительные операции -> Доступные снимки"
Я этой функциональностью вообще не пользуюсь, не лезу туда и работоспособность не гарантирую.
(0015335)
aflexus   
28-02-2015 08:04   
Ага, я как раз на эту тему тикет создал. Но там не вылет, а дефолтовый стиль.

Очень полезная функциональность, как по-мне. Только жаль не все полностью работает.
(0015336)
vdemidov   
28-02-2015 08:22   
Ну, кому как. Я туда лезть не планирую.
(0015337)
zed   
28-02-2015 09:33   
В SASPlanet.Debug_20150226_1920.elf я вижу, что в память загружена libdb51 - её использует кэш Беркли. Так что в ваших словах о том, что вы его совсем не используете, есть неточность. Какая-то карта, его всё же юзает.

Могу посоветовать распаковать ночнушку в отдельную папку, на чистый кэш и с чистыми настройками и попробовать воспроизвести ошибку. При этом кэш GE или GC будут недоступны, т.к. нужных библиотек в ночнушке нету. А кэш будет тайловый для всех карт, так что библиотеку libdb51 можно даже удалить из папки с тестовой ночнушкой.
(0015338)
zed   
28-02-2015 10:32   
Приложил тестовый билд. Инструкция к действию:
- распаковать архив в папку с ночнушкой, с заменой файлов
- запустить DbgView.exe
- запустить SASPlanet.exe (в DbgView полетят строки, при наличии сетевой активности)
- словить баг
- сделать скриншоты стеков, такие же что уже висят в этом тикете
- сохранить содержимое DbgView
- рядом с exe так же появится лог файл вида "SASPlanet 20150228 132225.log" (такой файл будет создаваться при каждом запуске, главное не перепутать и прислать самый последний)

Потом возвращайтесь сюда и будем смотреть дальше.

Да и нужна информация о том, как SAS ходит в интернет. Через прокси или нет, какие выставлены там настройки.
(0015339)
aflexus   
28-02-2015 10:57   
(edited on: 28-02-2015 11:04)
Хорошо, попробую ловить с этой версией.

> В SASPlanet.Debug_20150226_1920.elf я вижу, что в память загружена libdb51 - её использует кэш Беркли. Так что в ваших словах о том, что вы его совсем не используете, есть неточность. Какая-то карта, его всё же юзает.

Да, дня два, как поставил одну карту и у нее действительно кеш в беркли по-дефолту. Но баг этот вылазит намного раньше.

(0015343)
vasketsov   
05-03-2015 23:28   
Так может быть, если где-то ошибочно создан синхронизатор, который не поддерживает рекурсивный вызов, но используется в рекурсивном контексте. Если ошибка именно в этом, то тогда это можно будет легко проверить на тестовой версии, в которой при создании синхронизаторов всегда форсируется выбор типа, поддерживающего рекурсивный вызов. На такой версии зависания не будет. Правда, как потом локализовать ошибку, если эта гипотеза верна - ума не приложу.
(0015351)
aflexus   
09-03-2015 20:03   
Вроде он. Походу это не с интернетом связано.

Первые два раза вроде работал с Яндексом. Что-то склеивал, потом вышел - зависло. Запустил еще раз - вылет.

Последний раз точно склейка тайлов из GeoCacher. Причем запускал несколько квадратов одновременно и на втором вылет.

Логи приаттачил
(0015352)
zed   
09-03-2015 20:23   
Все логи заканчиваются одной и той же ошибкой:

EAccessViolation (C0000005) at 002A8211 u_ImageLineProvider.TImageLineProviderAbstract.PrepareBufferData (291)

Вы при склейке выбирали смену проекции или клеили в родную? Оперативки хватало? Склеивали большие куски?

Два параллельных процесса склейки да ещё из кэша GC, да если ещё и со сменой проекции, это та ещё нагрузочка.
(0015353)
aflexus   
10-03-2015 05:27   
(edited on: 10-03-2015 06:48)
Всегда клею родную проекцию. Оперативки 16, комп вроде не слабый. Куски порядка 12000х12000 пикселей под масштаб генштаба 25к. Вроде и не много, раньше клеил намного большими. Кэш практически весь стандартный (правда сейчас потихоньку перегоняю в беркли - отличная штучка :) ) Первый раз вылеты были на стандартном кеше, не GC.