||FraOrolo, jeff.allen, zyasoft
|Marked as misclassified
Ok, had some time for experiments:
* I tried to use less PySystemStates, this makes it worse. One thread with Jython needs a separate SystemState
* Im still not sure how the synchronization in PyType.Registry.classToType.computeValue() can be missed.
I see a problem in the fact, that there is no control for insertion into the classValue. I'm feeling unsure about the fact that multiple threads will re-create the PyType wrapping, because they are waiting in front of the lock and do not check if the first import and wrapping was successful.
But in principle this should be fine, just more PyJavaType wrappings are created.
* Interesting for me is: our Java Utitility classes are not referenced by other Java classes that would make them prone to concurrent recursive JavaType wrapping. The class that errors is not referenced by any other Java class.
|2019-12-17 11:20:26||FraOrolo||set||messageid: <email@example.com>|
+ FraOrolo, zyasoft, jeff.allen|
|2019-12-17 11:20:26||FraOrolo||link||issue2834 messages|