0
0
Fork 0
mirror of https://github.com/bitcoin/bitcoin.git synced 2025-02-21 12:22:50 -05:00

test: expect that files may disappear from /proc/PID/fd/

`get_socket_inodes()` calls `os.listdir()` and then iterates on the
results using `os.readlink()`. However a file may disappear from the
directory after `os.listdir()` and before `os.readlink()` resulting in a
`FileNotFoundError` exception.

It is expected that this may happen for `bitcoind` which is running and
could open or close files or sockets at any time. Thus ignore the
`FileNotFoundError` exception.
This commit is contained in:
Vasil Dimov 2025-01-07 11:40:05 +01:00
parent 433412fd84
commit b2e9fdc00f
No known key found for this signature in database
GPG key ID: 54DF06F64B55CBBF

View file

@ -37,9 +37,12 @@ def get_socket_inodes(pid):
base = '/proc/%i/fd' % pid
inodes = []
for item in os.listdir(base):
target = os.readlink(os.path.join(base, item))
if target.startswith('socket:'):
inodes.append(int(target[8:-1]))
try:
target = os.readlink(os.path.join(base, item))
if target.startswith('socket:'):
inodes.append(int(target[8:-1]))
except FileNotFoundError:
pass
return inodes
def _remove_empty(array):