mirror of
https://github.com/ceph/ceph
synced 2025-03-25 11:48:05 +00:00
cephadm: Fix trucated output of mgr dump
In case the process has terminated, we have to make sure to read till EOF, otherwise we might skip some bytes. Fixes: https://tracker.ceph.com/issues/44642 Co-authored-by: Tim Serong <tserong@suse.com> Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
This commit is contained in:
parent
037a68d76e
commit
6a6759eef0
@ -640,6 +640,12 @@ def call(command, # type: List[str]
|
||||
message = message_b.decode('utf-8')
|
||||
if isinstance(message_b, str):
|
||||
message = message_b
|
||||
if stop and message:
|
||||
# process has terminated, but have more to read still, so not stopping yet
|
||||
# (os.read returns '' when it encounters EOF)
|
||||
stop = False
|
||||
if not message:
|
||||
continue
|
||||
if fd == process.stdout.fileno():
|
||||
out += message
|
||||
message = out_buffer + message
|
||||
|
Loading…
Reference in New Issue
Block a user