Anonymous | Login | Signup for a new account | 21-11-24 17:00 UTC |
All Projects | SAS.Планета | Домен, сайт, форум, багтрекер | Доработка карты (ZMP) | Переводы и локализации | Прочее |
My View | View Issues | Change Log | Roadmap | Search |
View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0001075 | SAS.Планета | [All Projects] Баг | public | 22-12-2011 06:32 | 10-10-2012 11:49 | ||||
Reporter | Tolik | ||||||||
Assigned To | vdemidov | ||||||||
Priority | normal | Severity | crash | Reproducibility | always | ||||
Status | closed | Resolution | fixed | ||||||
Platform | Windows | OS | 7 | OS Version | Ultimate | ||||
Product Version | .Nightly | ||||||||
Target Version | 120808 | Fixed in Version | 120808 | ||||||
Summary | 0001075: Зависает в редких случаях после импорта XML при обновлении меток (UpdateMarksList) | ||||||||
Description | См. хотелку 516: http://sasgis.org/mantis/view.php?id=516#c4582 Версия Nightly.4681. | ||||||||
Tags | sml, XML, импорт | ||||||||
Attached Files | ГВ-ПП - 25-06-2011 11-32-14.rar [^] (519,316 bytes) 22-12-2011 14:00 sas_night_marks.rar [^] (2,893,719 bytes) 22-12-2011 22:51 | ||||||||
Notes | |
(0004590) vasketsov (manager) 22-12-2011 06:37 |
продублирую здесь: поглядел - это не относится к собственно импорту вообще, тем более к gpx. у меня Out of Memory возникает просто при импорте первого файла kml. крэшится при обновлении меток (внутри function TMarksDb.ReadCurrentMark: IMark); к сожалению, мне правда сейчас некогда смежные проблемы решать. |
(0004592) vdemidov (manager) 22-12-2011 13:41 |
А какой при этом размер sml? И сколько меток импортируется? Сколько программа при этом памяти кушает? |
(0004597) vasketsov (manager) 22-12-2011 14:00 |
>А какой при этом размер sml? у меня было загружено три района кадастра от росреестра (э то мегов 40 gpx). да это наверное не принципально. как я понял, там u_ImportMP и u_ImportHLG пописались, а u_ImportKML нет, в итоге там по-старому зовётся Add вместо новой записи метки в процедуре Do.... Я б и сделал также без Do..., но не уверен что ты именно этого хотел (вообще избавиться от Do...). у мну крэшитсся на приаттаченном файле. |
(0004598) zed (manager) 22-12-2011 14:22 edited on: 22-12-2011 14:23 |
>у мну крэшитсся на приаттаченном файле А у меня нет - импортирует 14520 чего-то там. |
(0004600) vasketsov (manager) 22-12-2011 14:25 edited on: 22-12-2011 14:34 |
могут быть особенности при совпадении (имён?) меток. вощем снёс все метки - и без проблем импортировал весь Толиков архив (почти 77 тыщ меток). и потом опять по новой поверх его же импортировал в произввольном порядке. может и вправду слишком много меток было. |
(0004601) zed (manager) 22-12-2011 14:27 |
Может быть, я протестировал импорт в чистую программу, без посторонних меток. |
(0004602) vdemidov (manager) 22-12-2011 14:40 |
Вполне возможно. Считайте что программе сейчас требуется памяти примерно в 3 раза больше чем весит Sml. Так что если там метров 500 то увы. Хотя может это я и оптимистично очень. |
(0004603) vasketsov (manager) 22-12-2011 14:50 edited on: 22-12-2011 14:55 |
Гы. Воспроизвёл без меток. Встаёт после Blob2ExtArr(FCdsMarks.FieldByName('LonLatArr'), VPoints); По шагам: 1. Снёс руками все метки (удалил фаайлы категорий и меток). 2. Импортировал свои треки в категорию MSK_PERM. Все из архива (сейчас выложу архив). Сначала kml (по алфавиту) потом gpx (по алфавиту). После импорта менял имя меток для gpx на имя исходного файла gpx. Применить не жал. 3. Закрыл окошко импорта по OK. 4. Снова открыл импорт и импортировал Толиков файл (приаттачен) в категорию "Новая категория" (её не было до этого). 5. PROFIT! зы. после крэша Толиковых меток нет, после закрытия саса файл меток 12.5 мешков. ззы. может и проще можно, но уж как получилось (дважды подряд). |
(0004604) Tolik (manager) 22-12-2011 16:02 edited on: 22-12-2011 16:05 |
Это я зазиповал один KML, что ли? А хотел 4 GPX, после которых виснет. Акелла промахнулся :) Прошу прощения. Ну не важно, этот KML сделан с помощью gpsbabel из реального GPX. A sml небольшой, метра 3 всего. |
(0004605) vasketsov (manager) 22-12-2011 16:24 |
Нет, это я отдельно перепаковал тот файл, на котором крэшится. |
(0004606) vasketsov (manager) 22-12-2011 21:54 edited on: 22-12-2011 22:05 |
Если грузить по моему алгоритму, то при загрузке Толикового файла, если поставить бряк в функции function TMarkFactory.CreateMark( на строке if VPointCount > 0 then begin то видно, что прога пытается создать объект из 73558 точек опупенное количество раз, ибо зовётся это изнутри цикла for i := VMinCount to VMaxCount - 1 do begin внутри процы function TMarksDb.UpdateMarksList(AOldMarkList, ANewMarkList: IInterfaceList): IInterfaceList; судя по всему всё количество раз (VMinCount=0, VMaxCount=14520) и идёт яростное убийство свободной памяти. Была б рекурсия - завалился бы стек. А вот почему внутри function TImportKML.DoImport(AFileName: string; AConfig: IImportConfig): IInterfaceList; забубенивается одно и то же все разы - надо смотреть. зы. А вот фигушки. В TImportKML.DoImport массив длиной 73558 юзается только один раз. Где-то после засирается значит. |
(0004607) vasketsov (manager) 22-12-2011 22:52 |
прицепил свои метки, с которыми просто не импортится Толиков файл. больше помочь нечем. |
(0004612) vdemidov (manager) 23-12-2011 10:47 |
Блин. Воспроизводится. Но в чем причина даже идей нет. Идей как исправлять пока просто нет. |
(0004614) vdemidov (manager) 23-12-2011 15:06 |
Вроде бы вылечилось. Но работу с треками нужно переделывать. На очень длинных треках отрисовка идет крайне медленно. Займусь в ближайшее время. |
(0004618) vasketsov (manager) 23-12-2011 19:17 |
Подтверждаю. У меня импортируется то что раньше крэшилось. Сенкс. |
(0004619) vdemidov (manager) 23-12-2011 19:57 |
Если бы кто-то еще сделал процедуры чтения/записи sml-файлов без использования датасетов, было бы совсем хорошо. Сейчас в памяти все метки живут в виде объектов + в виде датасета, а во время сохранения еще и в виде текста. Ну очень неэффективно. |
(0004620) vasketsov (manager) 23-12-2011 20:20 |
Я так понял, что это XML. Тогда можно попробовать. Если а) исходить из возможности создания процедур (де)сериализации в XML, и б) если в рантайме можно избавиться от датасетов и текста, то я исключительно "за". В общем-то ничего сложного я пока не увидел в формате. Другое дело, что надо отдельную хотелку ))), и человеческое формльное описание этого XML. Ну и подождать, времени пока катастрофически нет, я только после каникул смогу. Впрочем подумай, может перейти на полноценный kml раз и навсегда имеет смысл, но это надо рендер где-то надыбать (+ пописать операции с областью). Потому как по-любому импорт kml придётся докручивать, чтобы стили импортились и полигоны с дырками и многосвязные. Ещё неизвестно что проще, перепиливать имеющееся или новое впиливать. |
(0004624) vdemidov (manager) 24-12-2011 13:48 |
Все что не касается именно этого бага в отдельные инциденты. |
Users who viewed this issue | |
User List | Anonymous (2875x), hrucker (2x) |
Total Views | 2877 |
Last View | 21-11-2024 17:00 |
Issue History | |||
Date Modified | Username | Field | Change |
22-12-2011 06:32 | Tolik | New Issue | |
22-12-2011 06:37 | vasketsov | Note Added: 0004590 | |
22-12-2011 06:48 | Tolik | Status | new => acknowledged |
22-12-2011 13:41 | vdemidov | Note Added: 0004592 | |
22-12-2011 14:00 | vasketsov | Note Added: 0004597 | |
22-12-2011 14:00 | vasketsov | File Added: ГВ-ПП - 25-06-2011 11-32-14.rar | |
22-12-2011 14:22 | zed | Note Added: 0004598 | |
22-12-2011 14:23 | zed | Note Edited: 0004598 | View Revisions |
22-12-2011 14:25 | vasketsov | Note Added: 0004600 | |
22-12-2011 14:27 | zed | Note Added: 0004601 | |
22-12-2011 14:34 | vasketsov | Note Edited: 0004600 | View Revisions |
22-12-2011 14:40 | vdemidov | Note Added: 0004602 | |
22-12-2011 14:50 | vasketsov | Note Added: 0004603 | |
22-12-2011 14:52 | vasketsov | Note Edited: 0004603 | View Revisions |
22-12-2011 14:53 | vasketsov | File Added: my_tracks.rar | |
22-12-2011 14:55 | vasketsov | Note Edited: 0004603 | View Revisions |
22-12-2011 16:02 | Tolik | Note Added: 0004604 | |
22-12-2011 16:05 | Tolik | Note Edited: 0004604 | View Revisions |
22-12-2011 16:24 | vasketsov | Note Added: 0004605 | |
22-12-2011 21:54 | vasketsov | Note Added: 0004606 | |
22-12-2011 21:55 | vasketsov | Note Edited: 0004606 | View Revisions |
22-12-2011 22:05 | vasketsov | Note Edited: 0004606 | View Revisions |
22-12-2011 22:07 | vasketsov | Summary | Зависает после нескольких импортов GPX => Зависает в редких случаях после импорта XML при обновлении меток (UpdateMarksList) |
22-12-2011 22:51 | vasketsov | File Added: sas_night_marks.rar | |
22-12-2011 22:52 | vasketsov | Note Added: 0004607 | |
23-12-2011 10:47 | vdemidov | Note Added: 0004612 | |
23-12-2011 15:06 | vdemidov | Note Added: 0004614 | |
23-12-2011 15:06 | vdemidov | Status | acknowledged => resolved |
23-12-2011 15:06 | vdemidov | Fixed in Version | => 120808 |
23-12-2011 15:06 | vdemidov | Resolution | open => fixed |
23-12-2011 15:06 | vdemidov | Assigned To | => vdemidov |
23-12-2011 15:20 | vasketsov | File Deleted: my_tracks.rar | |
23-12-2011 19:17 | vasketsov | Note Added: 0004618 | |
23-12-2011 19:57 | vdemidov | Note Added: 0004619 | |
23-12-2011 20:20 | vasketsov | Note Added: 0004620 | |
23-12-2011 22:13 | gpsMax | Tag Attached: XML | |
23-12-2011 22:13 | gpsMax | Tag Attached: импорт | |
24-12-2011 07:06 | Tolik | Note Added: 0004621 | |
24-12-2011 07:08 | Tolik | Note Edited: 0004621 | View Revisions |
24-12-2011 07:13 | Tolik | Note Edited: 0004621 | View Revisions |
24-12-2011 07:15 | Tolik | Note Edited: 0004621 | View Revisions |
24-12-2011 13:48 | vdemidov | Note Added: 0004624 | |
24-12-2011 14:02 | Tolik | Note Deleted: 0004621 | |
25-12-2011 21:19 | gpsMax | Tag Attached: sml | |
23-01-2012 08:34 | vdemidov | Target Version | => 120808 |
10-10-2012 11:49 | Tolik | Status | resolved => closed |
My View | View Issues | Change Log | Roadmap | Search |
Copyright © 2007 - 2024 SAS.Planet Team |