Commit 72fad65
Fix potential hang that occurs while retreiving the Exec_DefinitionRegistry
singleton.
This is a follow-up to a recent change where clients now wait for the
definition registry to be fully initialized before attempting to look up
computation definitions. There was a chance that a thread could enter the
wait state immediately after the condition variable had been notified, thus
missing the notification and will wait forever.
The registry now holds a mutex while updating the flag, so that all other
threads are either awaiting notification, or have yet to read the new flag
value.
(Internal change: 2365783)1 parent 8d4d538 commit 72fad65
2 files changed
+28
-11
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
57 | | - | |
58 | | - | |
| 57 | + | |
59 | 58 | | |
60 | 59 | | |
61 | 60 | | |
| |||
71 | 70 | | |
72 | 71 | | |
73 | 72 | | |
74 | | - | |
75 | | - | |
76 | | - | |
77 | | - | |
78 | | - | |
79 | | - | |
80 | | - | |
81 | | - | |
82 | | - | |
| 73 | + | |
83 | 74 | | |
84 | 75 | | |
85 | 76 | | |
| |||
328 | 319 | | |
329 | 320 | | |
330 | 321 | | |
| 322 | + | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
331 | 344 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
123 | 123 | | |
124 | 124 | | |
125 | 125 | | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
126 | 130 | | |
127 | 131 | | |
128 | 132 | | |
| |||
0 commit comments