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

NEST Name mechanism is not thread-safe under insertion #722

Closed
heplesser opened this Issue May 16, 2017 · 0 comments

Comments

Projects
None yet
3 participants
@heplesser
Contributor

heplesser commented May 16, 2017

NEST uses a global Name table to accelerate name lookup and comparison in dictionaries. Inserting into this table in a thread-parallel context can corrupt the name table. This can happen if new names are introduced as strings in parallel context, in particular during set_status()/get_status() calls.

Measures:

  1. Assert that Name::insert() is only executed in thread-serial context.
  2. Replace all remaining strings in dictionary accesses by Name objects.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment