Jays2Kings / tachiyomiJ2K

Free and open source manga reader for Android
Apache License 2.0
4.71k stars 224 forks source link

[Bug] Update List Get Mess when Too Many Chapters #877

Open LenKiMo opened 3 years ago

LenKiMo commented 3 years ago

Device information

Steps to reproduce

  1. Open Update Tab in Recent Menu
  2. Slide chapters to mark as read

Expected behavior

The list should stop at where it is.

Actual behavior

The list would jump up and the order would changes.

Other details

When there are a large number of unread chapters in the update list, and the chapter is marked as read by swiping, the update list automatically jumps up to a position in front of it after swiping, and the sorting within the update list changes. This results in the need to find the location of unread chapters again. The screenshot below shows this, with the comics below the same comic changing after each swipe. image

Full Screen Record: https://pan.lun.im/index.php/s/MBjxJRtFAG8dg2Y

LenKiMo commented 3 years ago

For more background information on this issue.

This issue is related to a specific extension (DMZJ), where the problem of updating the list in a confusing order occurs after a specific point in time.

On the DMZJ website, the manga chapters are divided into two sections: "Serials" and "Other Series". The serials section is updated normally, but for the other series section, J2K repeatedly pulls the sections that are part of the "other series" and marks them as unread when they are automatically updated. (I have both the Tachiyomi upstream version installed on my device, but I can never catch this repeated pulling and marking as unread)

As a result, when J2K repeatedly pulls these manga chapters, it adds over a hundred chapter records to the update list, which causes a number of problems. When I go to a comic detail page, mark dozens of chapters that have been re-marked as unread as read, and then return to the update list, the update list screen refreshes and reorders. This is in essence

Even stranger, when I return to the update list after exiting the program for a while, I find that the duplicate updated chapters that were re-marked as unread and then re-marked as read have disappeared from the update list.

Since there are so many parts involved, it is difficult for me to determine what causes the update list to be constantly refreshed. So I can only try to describe the situation to help pinpoint the problem.

Since this situation does not involve a crash of the program, no useful information seems to be left in the dump log. Also since the re-crawling of these old chapters as unread chapters occurs at an indeterminate time, I was unable to deploy logcat in advance to capture possible logs.