-
Notifications
You must be signed in to change notification settings - Fork 14
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
ToolsAPI: add SHM clean up on session end #404
Comments
In case of FairMQ it is not as simple as giving a list of names. We use a number of different boost shared memory objects of different types. Current list is:
(The Each of these types have their own removal methods according to boost docs, for example I tested if all of the above can be removed simply via Alternatively, do not call any boost API to remove these objects at all (unless you know which type is which somehow...), and simply Another point is - where exactly should this registration happen? FairMQ core has no dependency on DDS Tools API, and this registration certainly should not always be done, but only in cases where it is desired. One option would be to make it a configurable setting in the ODC plugin. FairMQ core shmem could provide a static list of names, ODC plugin would read this list and give it to DDS and DDS would then call rm for each. In my opinion the cleanest way would be to call Whatever the solution will be, it must be flexible enough that a new FairMQ version can change the names, types and the number of these files if it needs to, without requiring update anywhere else. |
Actually a static list will not work, because the sessionid/shmid us dynamic, but also the number of segments and regions and their IDs will vary depending on runtime configuration. A regex/wildcards would do the trick, something like |
Extend Tools API with a possibility to register shared memory names. Those SHM segments must be removed, if exists, on DDS session shutdown, i.e. on the agent's clean up.
The text was updated successfully, but these errors were encountered: