Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Subtree doesn't shrink #247

Open
sujanchegu opened this issue Jan 16, 2021 · 3 comments
Open

[BUG] Subtree doesn't shrink #247

sujanchegu opened this issue Jan 16, 2021 · 3 comments
Assignees
Labels
bug Something isn't working

Comments

@sujanchegu
Copy link

sujanchegu commented Jan 16, 2021

Describe the bug

I believe there's a feature to shrink the child-tree of a process and make it to report all of it's subtree as one entry in the proc table.
I confirmed with one of my friend that this works flawlessly on his system. However, it seems to be broken on my system. I've tried it on terminator and gnome-terminal. It's the same on both. Even though the mark [+] toggles [-] and back, the subtree doesn't shrink at all in either of states.

To Reproduce

  1. In the proc table, highlight a process that has a subtree.
  2. Press space.
  3. Check if the subtree shrinks to show only the parent process as a single-entry.

Expected behavior

The subtree should shrink to report the selected parent process as a single-whole entity with the memory usage being reported being the sum of the memory usage of all the children.

These are screenshots that I received from my friend:

image

Toggled state:
image (1)

Screenshots
Look at how the highlighted process is toggled between [+] and [-] but the subtree doesn't shrink.

image

Toggled:
image

Info (please complete the following information):

  • bpytop version: 1.0.57
  • psutil version: 5.7.2
  • (Linux) Linux distribution and version: Fedora 33
  • (Kernel: 5.10.6-200.fc33.x86_64
  • Terminal used: Both terminator and gnome-terminal
  • Font used: Monospace
  • Python version: Python 3.9.1

Additional context

contents of ~/.config/bpytop/error.log

16/01/21 (18:58:19) | ERROR: <urlopen error [Errno -2] Name or service not known>
Traceback (most recent call last):
  File "/usr/lib64/python3.9/urllib/request.py", line 1342, in do_open
    h.request(req.get_method(), req.selector, req.data, headers,
  File "/usr/lib64/python3.9/http/client.py", line 1255, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/lib64/python3.9/http/client.py", line 1301, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/lib64/python3.9/http/client.py", line 1250, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/lib64/python3.9/http/client.py", line 1010, in _send_output
    self.send(msg)
  File "/usr/lib64/python3.9/http/client.py", line 950, in send
    self.connect()
  File "/usr/lib64/python3.9/http/client.py", line 1417, in connect
    super().connect()
  File "/usr/lib64/python3.9/http/client.py", line 921, in connect
    self.sock = self._create_connection(
  File "/usr/lib64/python3.9/socket.py", line 822, in create_connection
    for res in getaddrinfo(host, port, 0, SOCK_STREAM):
  File "/usr/lib64/python3.9/socket.py", line 953, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -2] Name or service not known

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/bpytop.py", line 4600, in _checker
    with urllib.request.urlopen("https://github.com/aristocratos/bpytop/raw/master/bpytop.py", timeout=5) as source: # type: ignore
  File "/usr/lib64/python3.9/urllib/request.py", line 214, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/lib64/python3.9/urllib/request.py", line 517, in open
    response = self._open(req, data)
  File "/usr/lib64/python3.9/urllib/request.py", line 534, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
  File "/usr/lib64/python3.9/urllib/request.py", line 494, in _call_chain
    result = func(*args)
  File "/usr/lib64/python3.9/urllib/request.py", line 1385, in https_open
    return self.do_open(http.client.HTTPSConnection, req,
  File "/usr/lib64/python3.9/urllib/request.py", line 1345, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [Errno -2] Name or service not known>

@sujanchegu sujanchegu added the bug Something isn't working label Jan 16, 2021
@sujanchegu sujanchegu changed the title [BUG] Cumulative sum of the memory used by child processes not working [BUG] Subtree doesn't shrink Jan 16, 2021
@aristocratos
Copy link
Owner

@sujanchegu
It will currently not work when filtering (the tree depth gets messed up by the filter).
If you clear your filter brave it should work as expected.

There is no easy way to fix it without ruining the performance when a filter is entered, but will look into it when I've got some time.

@sujanchegu
Copy link
Author

Oh, I did not know that. Thanks.

@aristocratos
Copy link
Owner

aristocratos commented Jan 16, 2021

@sujanchegu

Oh, I did not know that.

Yeah, I hadn't even realized it could be an issue until you pointed out it wasn't working :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants