sdmaid icon indicating copy to clipboard operation
sdmaid copied to clipboard

Refresh internal application list after installed packages change

Open Ingood5 opened this issue 4 years ago • 7 comments

Заметил, что после удаления приложения SD Maid часто не обновляет статус файлов. Или одни файлы отображают значок приложения, а другие вообще без значка:

S00830-17411727.mp4.zip

Такое часто сохраняется даже если SD Maid перезапустить несколько раз.

Ingood5 avatar Aug 30 '20 14:08 Ingood5

SD Maid internally caches the list of installed packages. This would be a feature where SD Maid watches the installed packages, and if it changes, the internal cache is invalidated.

This often persists even if SD Maid is restarted several times.

You need to completely stop SD Maid, i.e. "force stop", afterwards it should work correctly.

d4rken avatar Aug 30 '20 15:08 d4rken

То есть это нормально, или вы внесёте какие-то изменения?

Ingood5 avatar Sep 02 '20 04:09 Ingood5

The current behavior is normal.

I will keep this ticket as feature request, to have SD Maid refresh it's internal app caches dynamically.

d4rken avatar Sep 05 '20 10:09 d4rken

Need to look into cache timeout, apparently it's longer than 10 minutes? See https://github.com/d4rken/sdmaid-public/issues/4444#issue-771578894

d4rken avatar Dec 20 '20 16:12 d4rken

Такое впечатление, что #3879 и #4444 разные проблемы. В проблеме #3879 я не уточнил, что статус файлов все равно обновляется, но не сразу, а примерно в течение минуты, возможно иногда немногим дольше, всегда по разному. На видео в первом комментарии (https://github.com/d4rken/sdmaid-public/issues/3879#issue-688732224) видно, что статус файлов все равно спустя определённое время обновился. То есть всегда есть задержка в обновлении статуса файлов, но она небольшая, 15-90 секунд.

В проблеме #4444 приложение не находил AppControl, и не находил намного дольше, 30 минут, после этого я сделал принудительную остановку SD Maid. Обычно если сразу после установки/удаления приложения сделать сканирование с помощью AppControl, AppControl показывает изменения без задержки.

Возможно #4444 связано с #4254, там аналогичная проблема, но после удаления приложения. То есть AppControl в отдельных случаях не фиксирует изменения среди установленных приложений .

Ingood5 avatar Dec 23 '20 04:12 Ingood5

SD Maid only has a single "in-memory cache" for the list of installed apps. It is used by all of SD Maids functions. There is logic to force a data refresh for certain operations, maybe there is a bug that cause the refresh to not work.

I need to check if uninstalling an app triggers a forced refresh... I think it would make sense :thinking:

d4rken avatar Dec 27 '20 19:12 d4rken

I need to check if uninstalling an app triggers a forced refresh...

В связи с появлением проблемы #4444 нужно проверить это и после установки приложения.

Ingood5 avatar Dec 28 '20 10:12 Ingood5