Ru-Board.club
← Вернуться в раздел «Программы»

» SatMap (2)

Автор: relictus
Дата сообщения: 26.02.2010 10:18
Тестовая версия v2.2.5_exe - и снова переделал весь механизм загрузки тайлов в асинхронном режиме, дабы устранить проклятый баг при скролле/зуме Протестируйте!
Ogr_2 - добавил проверку на "битость" - проверяй!
Автор: egor23
Дата сообщения: 26.02.2010 11:35
relictus

Цитата:
Тестовая версия v2.2.5_exe - и снова переделал весь механизм загрузки тайлов в асинхронном режиме, дабы устранить проклятый баг при скролле/зуме Протестируйте!

"Не упал" (Инет+кэш)
и работает без задержек
Автор: netrebos
Дата сообщения: 26.02.2010 11:53
relictus

Цитата:
v2.2.5_exe

Эк тебя проняло. Замечено следующее:
1) в режиме интерент кнопка обновить не работает. (Впрочем и раньше этот режим работал как-то своеобразно)
2) В режиме инетернет при прямоугольном выделении загрузки не происходит. Т.е. бар работает с юморком. Например: "2 тайла поставлено на загрузку; 4 тайла успешно скачано". Но на экране чернота. Да и сама загрузка через просмотр в режиме интерент какая-то рваная -- пару тайлов в центре экрана схватил и остановился. В режиме кэш и кеш+ -- все нормально

Известный баг у меня не проявился
Автор: egor23
Дата сообщения: 26.02.2010 12:03

Цитата:
Да и сама загрузка через просмотр в режиме интерент какая-то рваная

есть такое два тайла в центре загрузил и всё, далее счётчик показывает как Мбайт-ы бегут, а на экране ничего нового не появляется (режим Инет)

Добавлено:
и в режиме Инет, пока карту не тронишь, загрузка тайлов не начинается
Автор: relictus
Дата сообщения: 26.02.2010 12:10
netrebos

Цитата:
1) в режиме интерент кнопка обновить не работает.

Так задумано - эта кнопка будет активна (и работать, соответственно) только в режиме КЭШ. В других случаях ее использование не логично

Цитата:
2) В режиме инетернет при прямоугольном выделении загрузки не происходит.

Ну это еще просто не отлаживал А вообще, загрузку по любому выделению рекомендую делать в режиме "только кэш"...
egor23

Цитата:
есть такое два тайла в центре загрузил и всё, далее счётчик показывает как Мбайт-ы бегут, а на экране ничего нового не появляется (режим Инет)

Ок, посмотрю что там...
Автор: netrebos
Дата сообщения: 26.02.2010 12:18
relictus

Цитата:
Так задумано - эта кнопка будет активна (и работать, соответственно) только в режиме КЭШ.


Цитата:
А вообще, загрузку по любому выделению рекомендую делать в режиме "только кэш"


Чего-то путано задумано. Она и раньше "подвисала" в режиме интерент на просмотре. И через прямоугольное выделение я ее "подталкивал" к загрузке в режиме просмотр. Иногда срабатывала только кнопка "обновить". А теперь ни того ни другого? Тогда отлаживай просмотр....
Автор: relictus
Дата сообщения: 26.02.2010 12:29
netrebos
Мы вообще про кнопку с круговыми стрелками на тулбаре говорим?
Я - про нее
Ее назначение - дозагрузить недостающие на экране тайлы в режиме "только кэш", и всё! В других режимах ее функционал просто не нужен...
А ты ее (если мы, конечно, про нее говорим) юзал везде, где только не надо
Автор: netrebos
Дата сообщения: 26.02.2010 13:25
relictus

Цитата:
А ты ее (если мы, конечно, про нее говорим) юзал везде, где только не надо

Я ее юзал (или пытался) там, где возникала необходимость (кнопка с круглыми стрелками). А необходимость возникала не из-за желания понажимать кнопки, а из-за необходимости подтолкнуть режим просмотра, который у тебя "подвисает". Т.е. ты путаешь причину и следствие. Если в режиме интерент все будет грузиться без дополнительных усилий, то и вопросов о кнопке не будет. Но до недавнего времени этот режим очень часто приходилось подталкивать -- я это делал через прямоугольное выделение и скачивание нескольких тайлов просматриваемого слоя.
Автор: Ogr_2
Дата сообщения: 26.02.2010 13:43

Цитата:
Тестовая версия v2.2.5_exe

пишет "Файл удален с сервиса."
Автор: relictus
Дата сообщения: 26.02.2010 13:44
netrebos
Ну ты извращенец

Цитата:
Если в режиме интерент все будет грузиться без дополнительных усилий...

Будет!

Добавлено:
Ogr_2
Не успел скачать? А я уже удалил... чуть позже выложу чуть обновлённее...
Автор: netrebos
Дата сообщения: 26.02.2010 13:58
relictus

Цитата:
Ну ты извращенец

Старое доброе правило -- "захочешь жить, не так раскорячишься" . Не возникало повода по этому режиму поговорить, вот и изворачивался. А тут критичная проблема с прямоугольным выделением подцепила и эту проблему. Так что, тебе и карты в руки....
Автор: relictus
Дата сообщения: 26.02.2010 14:46
Вроде починил загрузку в режиме ИНЕТ, продолжаем тестировать: v2.2.5.1_exe
И не забываем, если выскочит окошко с предложением отправить баг-репорт, отправлять его (кнопка Send...)!
Автор: egor23
Дата сообщения: 26.02.2010 15:15
relictus

Цитата:
Вроде починил загрузку в режиме ИНЕТ, продолжаем тестировать: v2.2.5.1_exe

ох, ужас, всё вернулось:
Инет \ Инет+кэш

List index out of bounds (0).
Memory Leak:
Автор: parasss
Дата сообщения: 26.02.2010 15:26
Такая пот полу-предьява без точно установленных рамок....Опишу как смогу.

Железо: XDAL-мамка СуперМикро, 8 процессоров Xeon, 28Gb RАМ, RAID10 5Tb локальное хранилище, кластер. Интернет - по оптике до кластера, далее на магистраль.
Софт: Solaris 10 + последний Wine + SatMap из шапки.

Проблема: при довольно продолжительной работе СатМапа в "тяжелых" режимах (массированная скачка по выделению) - уже в ТРЕТИЙ раз замечается повреждение разметки диска. То есть, диск "выбывает" из системы до момента рестарта локалхоста при безостановочной работе СатМапа где-то 3нед-1мес.

ТРИ раза подряд из системы выбывает ИМЕННО ТОТ ДИСК, НА КОТОРЫЙ ПИШЕТ СатМап. Два раза я грешил на случайность - и третий раз начал писать на диск, на который ничего больше не обращалось целый месяц.
Вчера он "выбыл", чего не делал последние лет 5.

Подозреваю, что это связано с ПОСТОЯННЫМ и ПЛОТНЫМ долблением СатМапа в диск. В связке с быстрым инетом - СатМап повреждает таблицу размещения файлов, коя при перезагрузке восстанавливается контроллером RAID.

Подозреваю, что в системах без быстрого инета это может не проявляться. А в системах без RAID повреждения структуры файлов могут быть невосстанавливаемыми.

Есть ли вариант проработать этот вопрос и как-то снизить нагрузку на диск?
Спасибо.

Автор: relictus
Дата сообщения: 26.02.2010 15:38
egor23

Цитата:
ох, ужас, всё вернулось:

Мдя... бум исправлять

parasss

Цитата:
Есть ли вариант проработать этот вопрос и как-то снизить нагрузку на диск?

Может тебе стоит попробовать RAM-диск? Качай себе в память, коей у тебя много, а по завершению - флуш на винт. Иного на ум пока не приходит
Автор: egor23
Дата сообщения: 26.02.2010 15:39
parasss

Цитата:
(массированная скачка по выделению)

а сколько тайлов в закачку ставите?
Автор: relictus
Дата сообщения: 26.02.2010 15:40
egor23
Получается v2.2.5 работала стабильно, если не использовать режим ИНЕТ?
Автор: egor23
Дата сообщения: 26.02.2010 15:40
relictus

Цитата:
Мдя... бум исправлять

баг-репорт ушёл


Добавлено:
relictus

Цитата:
Получается v2.2.5 работала стабильно, если не использовать режим ИНЕТ?

не совсем, смотрите баг-репорт
Автор: relictus
Дата сообщения: 26.02.2010 15:51

Цитата:
при безостановочной работе СатМапа где-то 3нед-1мес.

Только сейчас дошло! Вот это стресс-тест!
Автор: egor23
Дата сообщения: 26.02.2010 16:00
relictus

Цитата:
при безостановочной работе СатМапа где-то 3нед-1мес.

Цитата: Только сейчас дошло! Вот это стресс-тест!
Автор: parasss
Дата сообщения: 26.02.2010 16:26

Цитата:
Может тебе стоит попробовать RAM-диск? Качай себе в память, коей у тебя много, а по завершению - флуш на винт. Иного на ум пока не приходит

Я продумывал этот вариант (и давно склонялся к хардверному РАМ-диску, в виде платки с ДИММами и батарейкой). Но пока еще не разродился. Да и не решение проблемы это....


Цитата:
а сколько тайлов в закачку ставите?

Не знаю, никогда особо не считал.... Например 16й-18й уровень, весь при каждой новой версии на GM.....
Кстати, то же самое но на GE (через собственные скриптовые наработки - проблем нет, года 2 уж, http://sasgis.ru/forum/viewtopic.php?f=12&t=820)


Цитата:
Только сейчас дошло! Вот это стресс-тест!

Стресс только для винды.
Для никсов несколько-сотне-дневные аптаймы приложений - вполне нормальное явление. Вот прямо сейчас аптайм моей системы - 264 дня с момента последнего ребута.


Цитата:
Одно выделение за раз качалось?


Цитата:
Или просто Satmap не выключался, и калачись разные выделения.

Не выключался. По окончании скачки выделения - просто выбирался следующий зум, и ставилось на скачку.

Да, и там несколько терминальных сессий с СатМапом было параллельно (на один диск).
Лампочка доступа к диску просто НЕ ТУХЛА.

Подозреваю на ПОСТОЯННОЕ создание\юзание\удаление файла .journal, размером 64Kb x к.сессию х к.доступ к базе. Можно ли его перенаправить в RAM средствами самого СатМапа? Маппить явно в системе не хотелось бы...






Автор: Ogr_2
Дата сообщения: 26.02.2010 18:48
Только что скачалось область в 1000 тайлов, 3 побились.
Может быть они ни при скачивании бьются, а при записи в кеш.
Автор: relictus
Дата сообщения: 27.02.2010 07:30
parasss

Цитата:
Подозреваю на ПОСТОЯННОЕ создание\юзание\удаление файла .journal, размером 64Kb x к.сессию х к.доступ к базе. Можно ли его перенаправить в RAM средствами самого СатМапа?

Есть 5 вариантов для ведения журнала, цитата из мануала:

Цитата:
The DELETE journaling mode is the normal behavior. In the DELETE mode, the rollback journal is deleted at the conclusion of each transaction. Indeed, the delete operation is the action that causes the transaction to commit. (See the documented titled Atomic Commit In SQLite for additional detail.)

The TRUNCATE journaling mode commits transactions by truncating the rollback journal to zero-length instead of deleting it. On many systems, truncating a file is much faster than deleting the file since the containing directory does not need to be changed.

The PERSIST journaling mode prevents the rollback journal from being deleted at the end of each transaction. Instead, the header of the journal is overwritten with zeros. This will prevent other database connections from rolling the journal back. The PERSIST journaling mode is useful as an optimization on platforms where deleting or truncating a file is much more expensive than overwriting the first block of a file with zeros.

The MEMORY journaling mode stores the rollback journal in volatile RAM. This saves disk I/O but at the expense of database safety and integrity. If the application using SQLite crashes in the middle of a transaction when the MEMORY journaling mode is set, then the database file will very likely go corrupt.

The OFF journaling mode disables the rollback journal completely. No rollback journal is ever created and hence there is never a rollback journal to delete. The OFF journaling mode disables the atomic commit and rollback capabilities of SQLite. The ROLLBACK command no longer works; it behaves in an undefined way. Applications must avoid using the ROLLBACK command when the journal mode is OFF. If the application crashes in the middle of a transaction when the OFF journaling mode is set, then the database file will very likely go corrupt.

В SatMap используется дефолтный...

Ogr_2

Цитата:
Только что скачалось область в 1000 тайлов, 3 побились.
Может быть они ни при скачивании бьются, а при записи в кеш.

Перед записью в кэш каждый тайл проверяется на соответствие формату jpeg или png по сигнатурам начала и конца файла (до этой версии проверялось только по началу). Если же файл был поврежден где-то в середине, к примеру, то узнать валидный формат или нет без предварительного просмотра никак нельзя.
Можешь прислать мне эти битые тайлы?
А вообще, странная у тебя ситуация... У кого-нибудь еще были случаи битых тайлов?
Автор: relictus
Дата сообщения: 27.02.2010 14:11
Продолжаем тестировать - v2.2.5.2_exe
Еще подшаманил код в режиме только ИНЕТ - за полдня тестов не видел ни одной ошибки
А вообще, такой вопрос - нужен ли этот режим вообще (а то уже начинает надоедать над ним возиться ), если и сейчас у кого будут ошибки? Весь смысл его использования в затирании новыми тайлами уже имеющихся в кэше, в других же случаях вполне должно хватать режима ИНЕТ+КЭШ.
Как часто используете этот режим (ИНЕТ)?
Автор: egor23
Дата сообщения: 27.02.2010 14:15
relictus

Цитата:
А вообще, такой вопрос - нужен ли этот режим вообще

нужен
Автор: relictus
Дата сообщения: 27.02.2010 14:36
egor23

Цитата:
нужен

Но зачем? Если можно удалить выделением нужную область, вкл. режим ИНЕТ+КЭШ и по новой заполнить кэш...
А в режиме только ИНЕТ надо дожидаться, пока не скачаются все тайлы в видимой области, и только потом скроллить/зумить карту. Иначе уже закачанные тайлы, будут заново перезакачиваться, что не сказывается положительно на трафике...
Автор: egor23
Дата сообщения: 27.02.2010 14:37
relictus

Цитата:
Продолжаем тестировать - v2.2.5.2_exe

что-то логика работы при закрытии совсем не понравилась (в сравнении с v2.2.5)
Инет+кэш \ Инет
получается очередь тайлов на загрузку сквозная, можно хорошо поскролить или карту по перемещать, и закрытие будет длиться n-ое количество времени, пока не будет "загружены" все тайлы.
Автор: relictus
Дата сообщения: 27.02.2010 14:45
egor23

Цитата:
что-то логика работы при закрытии совсем не понравилась

Ну вообще-то при каждом скролле/зуме/смене слоя текущая закачка отменяется, затем рассчитывается какие тайлы загрузить в новой области карты и запускается новая закачка - вот такая логика. Т.е. никаких очередей не должно быть...
Автор: egor23
Дата сообщения: 27.02.2010 14:53
relictus

Цитата:
Ну вообще-то при каждом скролле/зуме/смене слоя текущая закачка отменяется, затем рассчитывается какие тайлы загрузить в новой области карты и запускается новая закачка - вот такая логика. Т.е. никаких очередей не должно быть...

"не должно быть", а есть...
Автор: relictus
Дата сообщения: 27.02.2010 14:57
egor23

Цитата:
"не должно быть", а есть...

Уверен? Откуда они беруться у тебя, должно быть летаешь по карте? У себя не заметил никаких очередей...

Добавлено:
Ну вот еще раз проверил: запустил прогу в режиме кэш на пустой области, переключился в режим ИНЕТ (или ИНЕТ+КЭШ - неважно), дождался появления нескольких тайло по центру экрана, затем сменил уровень и дождался его полной загрузки (т.е. полная остановка закачки!). Переключился в режим КЭШ и перешел на первоначальный уровень. И вижу те самые несколько тайлов по центру, с которых и перепрыгнул на другой уровень. Т.е. первая очередь отменилась в момент перехода на другой уровень!
У тебя разве не так?

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071

Предыдущая тема: BitTorrent/BitComet/Azureus/BitTornado и др. / сеть и клиент


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.