Skip to content

Race condition when two distributed in-memory client processes are using the same server #159

@ValHayot

Description

@ValHayot

Describe the problem.

When two dim client processes are using the same server, and one of them calls close(), the server terminates leaving the other without a server to communicate/retrieve data from.

Possible solutions:

  1. Simple reference counting, ensuring that the reference gets decremented either in close or __del__ but not both.
  2. A list of client references, in which every time close or __del__ is called, the reference gets removed from the list. If the reference does not exist in the list, do nothing. Should the list be empty, terminate the server.

How did you install ProxyStore?

pip install proxystore

ProxyStore Version

v0.3.1

Python Version

3.10

OS and Platform

all platforms

Metadata

Metadata

Assignees

Labels

bugError, flaw, or fault that causes unexpected behavior

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions