Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Potential AnnexParseUtil Thread Safety #1146
While using OSATE(with the graphical editor), the user interface hung. Two thread dumps are attached. They are taken from the same event. Multiple dumps were taken to allow looking for changes in the thread's state.
From my perspective, it looks like the issue is in AnnexParseUtil's usage of the parseResults hash map internally. The main thread is stuck in a loop in WeakHashMap while trying to put an entry into the map. I believe this indicates that the data structure is corrupted since the thread doesn't block and is in a seemingly endless loop. I suspect that synchronizing the usage of the map would fix the issue. However, I'm not aware of what could have triggered such behavior. I suspect it is Xtext performing a rebuild while the graphical editor is opening a resource. Unable to confirm.
Steps to Reproduce
Unable to reliable reproduce. As the time it occurred I performing small changes and saves to various resources and selecting various Eclipse views.