rssguard icon indicating copy to clipboard operation
rssguard copied to clipboard

[BUG]: Starring an item fails silently when updating feeds

Open slalaurette opened this issue 1 year ago • 3 comments

Brief description of the issue

Starring an article while the program is updating feeds fails without warning.

This can lead to losing important articles inadvertently when performing a cleanup, because you are confident that you aren't automatically deleting starred articles, but some articles you thought you had marked as starred actually aren't.

How to reproduce the bug?

  1. Wait for RSS Guard to start updating the feeds (status bar shows progress).
  2. Star an article.
  3. Switch to another feed.
  4. Switch back to the feed where you starred the article.

What was the expected result?

I expected the article to be starred.

What actually happened?

The article is not starred.

Debug log

//www.diariolamanana.com.ar/?p=160819' is already present in DB and has DB ID '83236'. time=" 35.454" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.diariolamanana.com.ar/?p=160813' is present in DB. time=" 35.552" type="debug" -> database: Message with custom ID 'https://www.diariolamanana.com.ar/?p=160813' is already present in DB and has DB ID '82830'. time=" 35.552" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.diariolamanana.com.ar/?p=160807' is present in DB. time=" 35.661" type="debug" -> database: Message with custom ID 'https://www.diariolamanana.com.ar/?p=160807' is already present in DB and has DB ID '82566'. time=" 35.661" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.diariolamanana.com.ar/?p=160801' is present in DB. time=" 35.761" type="debug" -> database: Message with custom ID 'https://www.diariolamanana.com.ar/?p=160801' is already present in DB and has DB ID '82539'. time=" 35.761" type="debug" -> database: Checking if message with feed-specific custom ID 'https://www.diariolamanana.com.ar/?p=160797' is present in DB. time=" 35.801" type="debug" -> network: Destroying Downloader instance. time=" 35.801" type="debug" -> network: Destroying SilentNetworkAccessManager instance. time=" 35.835" type="debug" -> feed-downloader: Downloaded 16 messages for feed ID '126',operation took 1477769 microseconds. time=" 35.837" type="debug" -> database: SQLite connection 'db_connection_1104' is already active. time=" 35.838" type="debug" -> database: SQLite database connection 'db_connection_1104' to file 'C:/bin/inet/RSSG

Operating system and version

  • OS: Windows 10
  • RSS Guard version: 4.4.1

slalaurette avatar Aug 05 '23 11:08 slalaurette

The log does not actually show anything suspicious. Do you have precise set of steps for me to reproduce the issue?

martinrotter avatar Aug 07 '23 18:08 martinrotter

What I did was just press Ctrl+S (the keyboard shortcut assigned to starring an article) while the status bar shows that the feeds are updating. It looks like the article was starred, but if you switch to another feed and then back, you realize it wasn't.

I've realized that generally, edit operations are disabled (greyed out) while the feeds are updating. For example, the issue came up here: https://github.com/martinrotter/rssguard/discussions/1013. Maybe this is related to it?

The big problem in this case is that when you use a keyboard shortcut, there's no indicator that what you're trying to do can't be done.

slalaurette avatar Aug 07 '23 19:08 slalaurette

In general, DB is NOT locked when updating feeds. General FEED operations are blocked for couple of different reasons, but ARTICLE operations should not fail. Only in VEEEEEEEERY rare occasions they could faill, certainly not regularly.

martinrotter avatar Sep 05 '23 11:09 martinrotter