Сообщения в IDEC mobile

IDEC mobile

Наконец-то снова завёл сабж. Как же это круто.

Так и не понял что с ним было, но в какой-то момент он перестал фетчить сообщения из некоторых эх.

Зато теперь всё в порядке :)
Andrew Lobanov to All (2016-12-19 12:08:12) [ссылка]

Re: IDEC mobile

Ответ на сообщение
AL> Зато теперь всё в порядке :)
Хотя нет. Только что при фетчинге этого сообщения он мне сообщил, что получил 0 сообщений. Хотя скачал его.
Andrew Lobanov to All (2016-12-19 12:09:49) [ссылка]

Re: IDEC mobile

Ответ на сообщение
AL>> Зато теперь всё в порядке :)
AL> Хотя нет. Только что при фетчинге этого сообщения он мне сообщил, что получил 0 сообщений. Хотя скачал его.
Чёрт. Это значит, что на сервере осталась старая версия.
Потому что этот баг Борис пофиксил уже давно, и у меня на телефоне стоит исправленная версия.

Зайду в IDE сейчас и закину актуальную сборку.

// лучше собирать с Гитхаба из сорцов, потому что свежак всегда только там
vit01 to Andrew Lobanov (2016-12-19 13:32:13) [ссылка]

Re: IDEC mobile

Ответ на сообщение
Всё, вперёд обновляться на нормальную версию
https://ii-net.tk/ii/files/app-debug.apk

А вот тот самый коммит с фиксом бага:
https://github.com/vit1-irk/idec-mobile/commit/0810e05211e18cf68db985c0d41c6681ffe65a7b

Как видно, ещё с 7 ноября. Что ж, бывает.
vit01 to vit01 (2016-12-19 13:51:56) [ссылка]

Re: IDEC mobile

Ответ на сообщение
vit01> Всё, вперёд обновляться на нормальную версию
vit01> https://ii-net.tk/ii/files/app-debug.apk
Спасибо. А то я ж лентяй и ламер. Сам то собирать не умею :) Хотя на самом деле это только из-за того, что у меня сейчас есть только дохлый нетбук и смартфон из личных вычислительных устройств.
Andrew Lobanov to vit01 (2016-12-19 14:23:20) [ссылка]

Re: IDEC mobile

Ответ на сообщение
Кстати, по-моему, еще в notification'е тоже неправильно считает. У меня показывает большее количество сообщений, чем скачивает. Возможно просто складывается количество одинаковых сообщений из разных нод. Надо будет тоже поправить.
btimofeev to vit01 (2016-12-19 14:59:51) [ссылка]

Re: IDEC mobile

Ответ на сообщение
btimofeev> Возможно просто складывается количество одинаковых сообщений из разных нод.
Да, так и есть. Клиент наивно предполагает, что ты на разных нодах подписан на разные эхи.

Подсчёт происходит по схеме /x/c (т.е. просто число у ноды запрашивает), поэтому количество именно уникальных сообщений узнать, увы, нельзя.

Это не баг, это архитектурный косяк.

// Вообще, удобнее переключаться на другую ноду только тогда, когда первая в дауне, а в остальное время держать "резервные" с выключенным фетчем
vit01 to btimofeev (2016-12-19 15:10:39) [ссылка]

Re: IDEC mobile

Ответ на сообщение
vit01> // Вообще, удобнее переключаться на другую ноду только тогда, когда первая в дауне, а в остальное время держать "резервные" с выключенным фетчем
Я у Ромы в поинтах ещё. Но там эхи другие, так что не критично. Да и нотификатором я не пользуюсь, так как у меня уведомления вызывают зуд для проверки почты.

А на тему архитектурного косяка хочу заметить, что такой подход шибко экономит трафик. Так что это не баг, а фича %)
Andrew Lobanov to vit01 (2016-12-19 15:24:21) [ссылка]

Re: IDEC mobile

Ответ на сообщение
Мелкофикс: подправил регулярку ii-ссылок, добавив туда поддержку дефиса в имени. Дабы ii://lor-opennet.17 из предыдущего сообщения нормально отображалось :)
vit01 to vit01 (2016-12-31 14:20:13) [ссылка]

Re: IDEC mobile

Ответ на сообщение
У меня какой-то странный баг случился. В один прекрасный момент клиент просто перестал скачивать сообщения. В логе писал одну строку fetch ..., затем одну строку removed pipe.2032 и потом сразу получено сообщений 0. Хотя при этом приходили уведомления, что есть новые сообщения. Так продолжалось пару дней.

Я сделал экспорт настроек, удалил данные и кэш приложения, затем импортировал настройки. Теперь если в эхе нет новых сообщений, то приложение не скачивает ничего, если в эхе появляется новое сообщение приложение скачивает сразу по 2-3 тысячи последних сообщений.
btimofeev to vit01 (2017-01-09 18:19:11) [ссылка]

Re: IDEC mobile

Ответ на сообщение
У меня буквально два дня назад случился тот же баг с removed pipe.2032
Но так как это произошло после обновления на Android 7.1, я списал сначала это на новое API. Кстати, это вполне даже может быть серверная ошибка, а не клиента.

Временное решение - отключить /x/c
Исправлять точно буду, ибо важно.
vit01 to btimofeev (2017-01-09 23:58:43) [ссылка]

Re: IDEC mobile

Ответ на сообщение
А как бороться с тем что клиент качает по несколько тысяч сообщений? Я вот опять обрезал эху до 50 штук, в эту эху пришло новое сообщение и клиент скачал после этого ~1500.
btimofeev to vit01 (2017-01-10 17:14:28) [ссылка]

Re: IDEC mobile

Ответ на сообщение
btimofeev> А как бороться с тем что клиент качает по несколько тысяч сообщений? Я вот опять обрезал эху до 50 штук, в эту эху пришло новое сообщение и клиент скачал после этого ~1500.
Сними галку "Качать индекс дальше, если все сообщения новые". Или поставь принудительную обрезку индекса.

Вообще, это очень странный баг, даже нет идей, что это есть такое. Отладчиком в IDE можешь воспользоваться?
vit01 to btimofeev (2017-01-10 22:39:35) [ссылка]

Re: IDEC mobile

Ответ на сообщение
btimofeev> У меня какой-то странный баг случился. В один прекрасный момент клиент просто перестал скачивать сообщения. В логе писал одну строку fetch ..., затем одну строку removed pipe.2032 и потом сразу получено сообщений 0. Хотя при этом приходили уведомления, что есть новые сообщения. Так продолжалось пару дней.
Баг исправлен, обновите все клиент по прежней ссылке.

Проблема была в том, что если человек подписался на новую эху, то алгоритм /x/c пытался найти её в локальном кэше, но найти не мог и ронял весь фетчер при попытке присвоить null целочисленной переменной.
vit01 to btimofeev (2017-02-03 12:27:55) [ссылка]