Bug 1694846
| Summary: | long file cat seems to hang playback in the browser | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 8 | Reporter: | Scott Poore <spoore> | ||||
| Component: | cockpit-session-recording | Assignee: | jstephen | ||||
| Status: | CLOSED DUPLICATE | QA Contact: | Ondrej Moriš <omoris> | ||||
| Severity: | medium | Docs Contact: | |||||
| Priority: | medium | ||||||
| Version: | 8.0 | CC: | omoris | ||||
| Target Milestone: | rc | ||||||
| Target Release: | 8.0 | ||||||
| Hardware: | All | ||||||
| OS: | Linux | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2020-05-26 18:31:11 UTC | Type: | Bug | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Embargoed: | |||||||
| Bug Depends On: | 1751783 | ||||||
| Bug Blocks: | |||||||
| Attachments: |
|
||||||
|
Description
Scott Poore
2019-04-01 20:24:44 UTC
FYI, this seems to affect other cases where there's a lot of output fast such as: find / Created attachment 1550743 [details]
journal export
Generated this journal export with:
journalctl -xel _EXE=/usr/bin/tlog-rec-session --since 14:55:20 --until 14:55:40 --lines=all -o export > /tmp/tlog-long_file_cat.export
You should be able to test with import like:
cat /tmp/tlog-long_file_cat.export | /usr/lib/systemd/systemd-journal-remote -o /var/log/journal/remote/remote-192.168.122.80.journal -
I just tested this on my side and I am definitely confirming the problem. My first idea about how to fix this is to replace old term.js with xterm.js. I already tried this and it worked faster without hanging browser, but resizing feature might be compromised in case of such replacement. Nevertheless, I believe this will be a right way to do, since Cockpit migrate to xterm.js already. One more thing. So for xterm test I used session recording on my host, but doing the same - cat /usr/share/dict/linux.words. But xterm solution with xterm has no effect on the attached session in BZ. Could it be somehow related to some of the tlog params? It is definitely problem of cockpit-session-recording, but just would like to know. No idea. I could re-test on my system if you can create a scratch build with xterm.js. See if it's still reproducible. This is easily reproducible with any recording containing commands like 'find /' or 'cat /usr/share/dict/linux.words' I replaced term.js with xterm.js upstream as we want to use the maintained xtermjs component anyway. However, it alleviates the problem described in this BZ only slightly. The playback no longer immediately hangs the page, however... 1. The player page does still eventually hang 2. Playback often produces slow, poor latency output 3. Playback hangs and does not reproduce all logged output when the cockpit journal.journalctl method does not stream all entries to our calling code For item #1 and #2, I will need to investigate these problems as performance issues more closely. I created a ticket with the cockpit team for item #3, we are retrieving journal entries from the cockpit journal API: https://github.com/cockpit-project/cockpit/issues/12580 The performance issues with the player page itself have been fixed upstream: - https://github.com/Scribery/cockpit-session-recording/commit/7c1585844479a0218987a32f7094495649461d11 - https://github.com/Scribery/cockpit-session-recording/commit/feed483646e2e1cfc1d3d123f842729832ccb56f - https://github.com/Scribery/cockpit-session-recording/commit/811b80fa279fbfe2bea697f8772d6b8160d998cc We are just waiting on the cockpit BZ https://bugzilla.redhat.com/show_bug.cgi?id=1751783 to completely close out this problem. Is this really still broken in cockpit-session-recording-3-1.el8, cockpit-211.3-1.el8? It looks like I cannot reproduce it anymore. In my testing, a command like 'find /' is still not playing back the complete output. We made some changes to alleviate this issue on our side, but the fix on the cockpit side(1751783) is blocking us from completely resolving this problem. This was fixed by the cockpit team in https://bugzilla.redhat.com/show_bug.cgi?id=1751783 *** This bug has been marked as a duplicate of bug 1793594 *** |