C9Glax / tranga

Docker-Container to monitor (Manga) Scanlation-Sites for download new chapters.
GNU General Public License v3.0
157 stars 15 forks source link

[It broke]: Fatal crash when Parsing chapters from MangaKatana #83

Closed darR3Ke closed 1 year ago

darR3Ke commented 1 year ago

What is broken?

At random times with random Manga the API engine gets an NullReferenceException. This causes the API to restart and then the first Manga will experience the same issue a couple of times, but resolves after a couple of reboots of the API.

I presume some time-out or delay when retrieving the chapters passes on an empty object

Log-output

-- Random Manga at a ramdom time example --

 [11/12/2023 03:57:48.993]       JobBoss | Next job in -19673.03:57:48.9935964 Tranga.Jobs.DownloadChapter-ZGFpZGFyazIwMjM=-43
 [11/12/2023 03:57:49.93 ]   MangaKatana | Getting new Chapters for Publication Majo to Yajuu (Satake Kousuke) bWFqb3RveWFqdXVzYXRha2Vrb3VzdWtlMjAyMw==
 [11/12/2023 03:57:49.93 ]   MangaKatana | Getting chapters Publication Majo to Yajuu (Satake Kousuke) bWFqb3RveWFqdXVzYXRha2Vrb3VzdWtlMjAyMw==
 Unhandled exception. System.NullReferenceException: Object reference not set to an instance of an object.
    at Tranga.MangaConnectors.MangaKatana.ParseChaptersFromHtml(Manga manga, String mangaUrl) in /src/Tranga/MangaConnectors/MangaKatana.cs:line 187
    at Tranga.MangaConnectors.MangaKatana.GetChapters(Manga manga, String language) in /src/Tranga/MangaConnectors/MangaKatana.cs:line 156
    at Tranga.MangaConnectors.MangaConnector.GetNewChapters(Manga manga, String language) in /src/Tranga/MangaConnectors/MangaConnector.cs:line 64
    at Tranga.Jobs.DownloadNewChapters.ExecuteReturnSubTasksInternal() in /src/Tranga/Jobs/DownloadNewChapters.cs:line 46
    at Tranga.Jobs.Job.ExecuteReturnSubTasks() in /src/Tranga/Jobs/Job.cs:line 89
    at Tranga.Jobs.JobBoss.CheckJobs() in /src/Tranga/Jobs/JobBoss.cs:line 240
    at Tranga.Tranga.<StartJobBoss>b__10_0() in /src/Tranga/Tranga.cs:line 74

-- Random Manga at a ramdom time example --

 [11/12/2023 04:00:45.650]       JobBoss | Next job in -19673.04:00:45.6504360 Tranga.Jobs.DownloadChapter-ZGFpZGFyazIwMjM=-43
 [11/12/2023 04:00:45.750]   MangaKatana | Getting new Chapters for Publication Make the Exorcist Fall in Love bWFrZXRoZWV4b3JjaXN0ZmFsbGlubG92ZTIwMjM=
 [11/12/2023 04:00:45.750]   MangaKatana | Getting chapters Publication Make the Exorcist Fall in Love bWFrZXRoZWV4b3JjaXN0ZmFsbGlubG92ZTIwMjM=
 [11/12/2023 04:00:45.750] HttpDownloadC | Waiting 0.4063145 seconds
 Unhandled exception. System.NullReferenceException: Object reference not set to an instance of an object.
    at Tranga.MangaConnectors.MangaKatana.ParseChaptersFromHtml(Manga manga, String mangaUrl) in /src/Tranga/MangaConnectors/MangaKatana.cs:line 187
    at Tranga.MangaConnectors.MangaKatana.GetChapters(Manga manga, String language) in /src/Tranga/MangaConnectors/MangaKatana.cs:line 156
    at Tranga.MangaConnectors.MangaConnector.GetNewChapters(Manga manga, String language) in /src/Tranga/MangaConnectors/MangaConnector.cs:line 64
    at Tranga.Jobs.DownloadNewChapters.ExecuteReturnSubTasksInternal() in /src/Tranga/Jobs/DownloadNewChapters.cs:line 46
    at Tranga.Jobs.Job.ExecuteReturnSubTasks() in /src/Tranga/Jobs/Job.cs:line 89
    at Tranga.Jobs.JobBoss.CheckJobs() in /src/Tranga/Jobs/JobBoss.cs:line 240
    at Tranga.Tranga.<StartJobBoss>b__10_0() in /src/Tranga/Tranga.cs:line 74

-- Loopback to the first Manga in the Job list (in my case Sakamoto Days) --

 [11/12/2023 04:00:48.244]   MangaKatana | Getting new Chapters for Publication Sakamoto Days c2FrYW1vdG9kYXlzMjAyMw==
 [11/12/2023 04:00:48.245]   MangaKatana | Getting chapters Publication Sakamoto Days c2FrYW1vdG9kYXlzMjAyMw==
 [11/12/2023 04:00:48.251]        Server | Listening on http://*:6531/
 Unhandled exception. System.NullReferenceException: Object reference not set to an instance of an object.
    at Tranga.MangaConnectors.MangaKatana.ParseChaptersFromHtml(Manga manga, String mangaUrl) in /src/Tranga/MangaConnectors/MangaKatana.cs:line 172
    at Tranga.MangaConnectors.MangaKatana.GetChapters(Manga manga, String language) in /src/Tranga/MangaConnectors/MangaKatana.cs:line 155
    at Tranga.MangaConnectors.MangaConnector.GetNewChapters(Manga manga, String language) in /src/Tranga/MangaConnectors/MangaConnector.cs:line 59
    at Tranga.Jobs.DownloadNewChapters.ExecuteReturnSubTasksInternal() in /src/Tranga/Jobs/DownloadNewChapters.cs:line 36
    at Tranga.Jobs.Job.ExecuteReturnSubTasks() in /src/Tranga/Jobs/Job.cs:line 87
    at Tranga.Jobs.JobBoss.CheckJobs() in /src/Tranga/Jobs/JobBoss.cs:line 256
    at Tranga.Tranga.<StartJobBoss>b__10_0() in /src/Tranga/Tranga.cs:line 74

Additional stuff

No response

C9Glax commented 1 year ago

Closing as it seems to be fixed