HaveAGitGat / Tdarr

Tdarr - Distributed transcode automation using FFmpeg/HandBrake + Audio/Video library analytics + video health checking (Windows, macOS, Linux & Docker)
Other
2.94k stars 92 forks source link

UI freezes loading report, when browser unfreezes the page is refreshed closing the report modal window #1084

Open quadcom opened 4 days ago

quadcom commented 4 days ago

During configuring a flow viewing the reports are a big necessity. Since v2.25.01 I have started getting FF freezing up while trying to load the report modal window. Doesn't matter where, could be the active node process or the tab lists below.

I've tried looking through logs to figure out something for you to go on but there's nothing (that I can see) that would jump out to me. I took a peek with dev-tools and FF prompted me to debug main.0f32903a.js. There were some hang ups in there that could be the cause. But I'm not a JS Phd so I can't debug it further.

Describe the bug Clicking the report button opens the modal which causes FF to freeze. Once it wakes up the whole UI page refreshes stopping the ability to view the modal contents.

To Reproduce Not sure how to reproduce. It could be something with regards to a file being processed multiple times (during testing) which creates multiple reports (as listed on the left of the modal).

Expected behavior There is no Freeze and the ability to read the report so we can debug a flow.

Screenshots https://github.com/user-attachments/assets/1b9a499e-f171-4567-b5d7-55ce2fc61088

Please provide the following information:

HaveAGitGat commented 4 days ago

If you open the same report in 2.24.05 does it open fine? There wasn't a change to the report UI between versions so just checking that. You can see the job reports in the JobReports folder in the server data folder.

quadcom commented 4 days ago

Aside from downgrading the install (hopefully nothing gets trashed) I don't have another way to test this out.

I will say that I did not run into this with 2.24x.

HaveAGitGat commented 4 days ago

Yeah downgrading should be fine as there weren't any db changes between versions. Other way is to post/dm me the report from the JobReports and I can try open it.

quadcom commented 11 hours ago

I blew my installation, including the DB (inadvertently) and spun up a 2.24 container.

I rebuilt the library and luckily, had an export of my flow.

Unfortunately I am seeing the same behaviour as before. Certain reports cause FF and CH to freeze, regardless of it being in incognito/private browsers with no addons running.

I'm curious if this is a result of how BG data is refreshed from the webserver as when the Status table or Staging Section DIVs are expanded, continuous POST requests are made approx 2-3 per second. But when they are collapsed, those requests don't happen and job report loading is quicker (in testing so far)

Another thought; with every request, very little change in data, if any at all, is returned in the response. I wonder if there is another, more effective, less resource intensive way to refresh the table data. Since not much changes in the tables within 10s-30min, could the refresh be triggered by the completion of a job or the start of a new job, rather than a constant ping 2-3 times per second for updates? Perhaps the initial data returned could also be reduced and more detailed results pulled if requested by DIV expansion or a button click?

As for my DB and already processed files. My flow appended metadata to the files when processed so I can filter though them at the start of the flow. What I have lost is the previous statistics.

HaveAGitGat commented 11 hours ago

Someone else messaged me with the same issue and sent me a report. Issue is caused by a 3rd party component json-viewer taking a long time to render the UI because the file has 39 streams which causes it struggle rendering all the data. Files with fewer streams don't have that issue. Looking into a solution.

HaveAGitGat commented 11 hours ago

Fixed for next version.