[kasts] [Bug 519232] Some episodes are broken after update

2026-05-14 Thread Iizuki
https://bugs.kde.org/show_bug.cgi?id=519232

Iizuki  changed:

   What|Removed |Added

 CC||[email protected]

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-29 Thread Jennifer C J Radtke
https://bugs.kde.org/show_bug.cgi?id=519232

--- Comment #18 from Jennifer C J Radtke  ---
Thank you, I really appreciate you looking at this so quickly and taking the
time to write such clear explanations :) that all makes sense to me and the
solution for the next update sounds good. I appreciate that it is tricky for
all the reasons you mention.

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-29 Thread bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=519232

[email protected] changed:

   What|Removed |Added

  Latest Commit|https://invent.kde.org/mult |https://invent.kde.org/mult
   |imedia/kasts/-/commit/72428 |imedia/kasts/-/commit/29cbd
   |08bd84e3aecee1d6bdab16d7cc4 |35f2c2ad23bed781ed044a636ca
   |038db138|0a40c745

--- Comment #17 from [email protected] ---
Git commit 29cbd35f2c2ad23bed781ed044a636ca0a40c745 by Bart De Vries.
Committed on 29/04/2026 at 08:50.
Pushed by bdevries into branch 'release/26.04'.

Some more fixes to clean up and avoid db corruption

This fix/patch is still related to the potential database corruption bug
519232. At startup we now look for entries with hasEnclosure==1 but that
don't actually have an associated enclosure.
We also reset the lastHashes on each startup to make the first full
refresh update all RSS feeds, and not only the ones that have been
changed since last update.

M  +20   -0src/database.cpp

https://invent.kde.org/multimedia/kasts/-/commit/29cbd35f2c2ad23bed781ed044a636ca0a40c745

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-29 Thread bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=519232

[email protected] changed:

   What|Removed |Added

  Latest Commit|https://invent.kde.org/mult |https://invent.kde.org/mult
   |imedia/kasts/-/commit/8ad6b |imedia/kasts/-/commit/72428
   |8eb1c1491d0e8e92b5ffe5bbdb4 |08bd84e3aecee1d6bdab16d7cc4
   |85c0633b|038db138

--- Comment #16 from [email protected] ---
Git commit 7242808bd84e3aecee1d6bdab16d7cc4038db138 by Bart De Vries.
Committed on 29/04/2026 at 08:27.
Pushed by bdevries into branch 'master'.

Some more fixes to clean up and avoid db corruption

This fix/patch is still related to the potential database corruption bug
519232. At startup we now look for entries with hasEnclosure==1 but that
don't actually have an associated enclosure.
We also reset the lastHashes on each startup to make the first full
refresh update all RSS feeds, and not only the ones that have been
changed since last update.

M  +20   -0src/database.cpp

https://invent.kde.org/multimedia/kasts/-/commit/7242808bd84e3aecee1d6bdab16d7cc4038db138

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-29 Thread bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=519232

--- Comment #15 from [email protected] ---
(In reply to Jennifer C J Radtke from comment #14)
> Thanks for looking at this :) 
> 
> I've enabled "Update existing episode data on refresh" and I am seeing
> sensible timings come back as podcasts update. I know that some will not
> update though (eg it was a series that has finished/paused) so it would be
> helpful if it was possible to fix the corrupted database. 

As mentioned before, the best way to minimize the data corruption is by
starting again from the v11 database version (by copying that one over the
current database.db3 file; don't forget to make a backup).  As long as you
don't do a refresh with that option switched off, then there should be no
episodes with strange time signatures.

If you don't want to go back to the v11 backup, then you might/will suffer some
data loss with episodes that have since disappeared from the RSS feed.  As you
mentioned, I noticed that you have quite a few feeds that drop older episodes
(i.e. the feed carries only the most recent 5 to 10 episodes).  If the original
feed doesn't have those episodes anymore, then there's no way to retrieve them.
 I noticed that quite a few of those feeds have also removed the mp3 files for
such dropped episodes from their server.  So that could also explain the
numerous download errors that you mentioned.
To make this more clear, I think I will implement an indicator on the episode
delegates to show that an episode is no longer available through the feed.

BTW, for 26.04.1 I will make the app force update all feeds after every cold
startup.  This should help retrieving lost enclosure metadata for feeds that
only very sporadically publish updates (since Kasts will only process a feed if
the RSS feed hash is different from the last update).

> I am still seeing download errors on some episodes even where the feed has
> updated and the timings are fixed - "Error code: 299 - Error transferring
> [url]". So far, it seems like this is related to an 'incomplete' download -
> so the episode page offers both "Download" and "Delete download". The file
> does appear to be present on disk. Deleting the download through kasts and
> then downloading again seems to fix this, at least where the file is still
> available for download. In my database, Americast episodes from 13/4 and
> 15/4 are two examples. Thankfully it doesn't seem to be affecting many
> episodes, so I think I can go through the affected episodes and re-download
> them manually.

Yeah, I recognize this.  The incomplete download is mainly due to RSS feed
inconsistencies: quite a lot of feeds have a wrong filesize mentioned in the
RSS feed for the enclosures.  Kasts stores the actual filesize in the database
once the files has been fully downloaded.  However, if the database entry
somehow gets removed (as with this corruption bug), then the database will have
the original filesize from the RSS feed again.  Since this doesn't match the
filesize of the file on disk (which the app tries to recover), it will complain
about an incomplete download.  But of course, resuming the download will not
work because the file *is* complete.  So, indeed, removing the file and
re-downloading it is the proper solution.
I didn't want the app to auto-delete local files if this happens because people
usually don't wan to have their files removed without warning.  But it is
indeed not entirely clear what to do if this happens...

For the other case, see above: for some episodes the original download is
simply not available anymore. In that case, even if you have the file stored on
disk, the app will never find it again because it doesn't know where to look.


All of this stuff is very tricky, not helped by the fact that a lot of the data
in the RSS feeds is incorrect or incomplete, and that online data can disappear
at any given moment.  I feel bad about having introduced such a stupid, trivial
bug with such widespread consequences.
Thank you for reporting it very quickly.

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-28 Thread Jennifer C J Radtke
https://bugs.kde.org/show_bug.cgi?id=519232

--- Comment #14 from Jennifer C J Radtke  ---
Thanks for looking at this :) 

I've enabled "Update existing episode data on refresh" and I am seeing sensible
timings come back as podcasts update. I know that some will not update though
(eg it was a series that has finished/paused) so it would be helpful if it was
possible to fix the corrupted database. 

I am still seeing download errors on some episodes even where the feed has
updated and the timings are fixed - "Error code: 299 - Error transferring
[url]". So far, it seems like this is related to an 'incomplete' download - so
the episode page offers both "Download" and "Delete download". The file does
appear to be present on disk. Deleting the download through kasts and then
downloading again seems to fix this, at least where the file is still available
for download. In my database, Americast episodes from 13/4 and 15/4 are two
examples. Thankfully it doesn't seem to be affecting many episodes, so I think
I can go through the affected episodes and re-download them manually.

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-22 Thread bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=519232

[email protected] changed:

   What|Removed |Added

  Latest Commit|https://invent.kde.org/mult |https://invent.kde.org/mult
   |imedia/kasts/-/commit/450fd |imedia/kasts/-/commit/8ad6b
   |f7b9835732d24e6c7d13be15805 |8eb1c1491d0e8e92b5ffe5bbdb4
   |3bbe446c|85c0633b
 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #13 from [email protected] ---
Git commit 8ad6b8eb1c1491d0e8e92b5ffe5bbdb485c0633b by Bart De Vries.
Committed on 22/04/2026 at 18:38.
Pushed by bdevries into branch 'master'.

Fix doing quick feed updates

After the big refactor the quick feed update routine was broken. This
was due to the fact that the update routine would not check the
enclosures and authors of episodes that already existed in the database.
Therefore, these enclosures and authors would stay marked as
"deleted".  (Deleted is the default state; it's only changed after the
enclosure or author has been found in the RSS feed, which is exactly
what gets skipped in a quick update.)  This would then lead to
corruption of the database.

M  +1-0src/datamanager.cpp
M  +25   -21   src/utils/updatefeedjob.cpp

https://invent.kde.org/multimedia/kasts/-/commit/8ad6b8eb1c1491d0e8e92b5ffe5bbdb485c0633b

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-22 Thread bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=519232

[email protected] changed:

   What|Removed |Added

 Status|REPORTED|ASSIGNED
 Ever confirmed|0   |1

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-22 Thread bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=519232

[email protected] changed:

   What|Removed |Added

 Status|RESOLVED|REPORTED
 Resolution|FIXED   |---
 Ever confirmed|1   |0

--- Comment #12 from [email protected] ---
I'll keep this one open until there is confirmation that it's fixed and until I
think of a way to fix all the potentially corrupted databases that could be out
there.

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-22 Thread bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=519232

[email protected] changed:

   What|Removed |Added

  Latest Commit||https://invent.kde.org/mult
   ||imedia/kasts/-/commit/450fd
   ||f7b9835732d24e6c7d13be15805
   ||3bbe446c
 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #11 from [email protected] ---
Git commit 450fdf7b9835732d24e6c7d13be158053bbe446c by Bart De Vries.
Committed on 22/04/2026 at 18:07.
Pushed by bdevries into branch 'release/26.04'.

Fix doing quick feed updates

After the big refactor the quick feed update routine was broken. This
was due to the fact that the update routine would not check the
enclosures and authors of episodes that already existed in the database.
Therefore, these enclosures and authors would stay marked as
"deleted".  (Deleted is the default state; it's only changed after the
enclosure or author has been found in the RSS feed, which is exactly
what gets skipped in a quick update.)  This would then lead to
corruption of the database.

M  +1-0src/datamanager.cpp
M  +25   -21   src/utils/updatefeedjob.cpp

https://invent.kde.org/multimedia/kasts/-/commit/450fdf7b9835732d24e6c7d13be158053bbe446c

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-22 Thread Bug Janitor Service
https://bugs.kde.org/show_bug.cgi?id=519232

--- Comment #10 from Bug Janitor Service  ---
A possibly relevant merge request was started @
https://invent.kde.org/multimedia/kasts/-/merge_requests/335

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-22 Thread bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=519232

[email protected] changed:

   What|Removed |Added

 Status|CONFIRMED   |ASSIGNED

--- Comment #9 from [email protected] ---
Ok, I understand it now.  It's just a stupid bug introduced by the major
refactor.  I didn't properly test disabling that particular setting.  With that
thing disabled, it will incorrectly delete the enclosures (=audio file data)
and episode authors of existing episodes from the database on any feed that you
refresh.  That why anything related to audio size, length or download url was
completely screwed up in your database. :-(

It's probably best to enable that setting and keep it enabled for now to avoid
any further corruption.

I will create an MR with a fix asap; probably still today.

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-22 Thread bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=519232

[email protected] changed:

   What|Removed |Added

 Status|REPORTED|CONFIRMED
 Ever confirmed|0   |1

--- Comment #8 from [email protected] ---
Thanks for the files. I've been able to reproduce the issue.

I still don't fully understand why the database corruption is happening, but I
definitely know where to look now: it's definitely tied to the disable "Update
existing episode data on refresh" setting.  So thanks for that clue.

With what I understand of the bug, the corruption should disappear if you
re-enable that setting (and the RSS feed itself also gets updated because kasts
will not update if the hash of the file is the same as last update).  Anyway, I
definitely need to solve the source of corruption first.
I'll keep you updated.

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-21 Thread Jennifer C J Radtke
https://bugs.kde.org/show_bug.cgi?id=519232

--- Comment #7 from Jennifer C J Radtke  ---
(In reply to bart from comment #6)
> It would probably help if you are willing to share your database (both
> migrated and saved v11 version) for further debugging.
> You don't have to if you don't want to share; I would fully understand.

That makes sense - I will see if I can send them to you via email, either
attached or as a link.

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-21 Thread bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=519232

--- Comment #6 from [email protected] ---
It would probably help if you are willing to share your database (both migrated
and saved v11 version) for further debugging.
You don't have to if you don't want to share; I would fully understand.

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-21 Thread bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=519232

--- Comment #5 from [email protected] ---
Thanks for the additional info. I'll look into it.

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-21 Thread Jennifer C J Radtke
https://bugs.kde.org/show_bug.cgi?id=519232

--- Comment #4 from Jennifer C J Radtke  ---
Thanks, I've been able to reproduce it now. 

Steps:
1. Update kasts
2. Disable "Update existing episode data on refresh" (? Not sure if this is
strictly required)
3. Refresh podcast(s)
4. Inspect podcasts - some episodes may be broken
5. Restart kasts
6. Many episodes will be broken - see screenshot

I was able to reproduce this just refreshing one podcast at a time. The
unrefreshed podcasts seem to remain in a sensible state. I also noticed that it
isn't the same episode(s) affected at step 4 each time. Step 6 leaves things
pretty thoroughly broken. 

(fyi I may not be able to reply again for a few days)

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-21 Thread Jennifer C J Radtke
https://bugs.kde.org/show_bug.cgi?id=519232

--- Comment #3 from Jennifer C J Radtke  ---
Created attachment 191697
  --> https://bugs.kde.org/attachment.cgi?id=191697&action=edit
Many episodes broken after restart

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-21 Thread bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=519232

--- Comment #2 from [email protected] ---
Mmm, that doesn't look good.  That's an integer overflow if I ever saw one.
Strange that I've not seen this pop up anywhere on my side.  But I can't test
all podcasts, of course.

Well, you could probably reproduce it, because I added a feature to take a
snapshot of the database before doing a migration.  There should be a backup
saved as ~/.local/share/KDE/kasts/database.db3.v11.
In principle you could overwrite the migrated database (database.db3) with this
file (make sure to remove the other "wal" and "shm" files if there are any) and
start kasts again.  This will trigger another attempt to migrate the database.
Of course, you will lose your progress since the first migration, so you should
probably make a copy of the current database.

-- 
You are receiving this mail because:
You are watching all bug changes.

[kasts] [Bug 519232] Some episodes are broken after update

2026-04-21 Thread Jennifer C J Radtke
https://bugs.kde.org/show_bug.cgi?id=519232

--- Comment #1 from Jennifer C J Radtke  ---
(I suppose I strictly haven't reproduced it, since I didn't think to take a
copy of my data before updating)

-- 
You are receiving this mail because:
You are watching all bug changes.