[bugfix][distributed] fix multi-node bug for shared memory (#6597)
This commit is contained in:
@@ -108,8 +108,14 @@ class ShmRingBuffer:
|
|||||||
# created by the process. The following patch is a workaround.
|
# created by the process. The following patch is a workaround.
|
||||||
with patch("multiprocessing.resource_tracker.register",
|
with patch("multiprocessing.resource_tracker.register",
|
||||||
lambda *args, **kwargs: None):
|
lambda *args, **kwargs: None):
|
||||||
|
try:
|
||||||
self.shared_memory = shared_memory.SharedMemory(name=name)
|
self.shared_memory = shared_memory.SharedMemory(name=name)
|
||||||
assert self.shared_memory.size == self.total_bytes_of_buffer
|
assert self.shared_memory.size == self.total_bytes_of_buffer # noqa
|
||||||
|
except FileNotFoundError:
|
||||||
|
# we might deserialize the object in a different node
|
||||||
|
# in this case, this object is not used,
|
||||||
|
# and we should suppress the error
|
||||||
|
pass
|
||||||
|
|
||||||
def __reduce__(self):
|
def __reduce__(self):
|
||||||
return (
|
return (
|
||||||
|
|||||||
Reference in New Issue
Block a user