Closed
Description
A lot of tests in this suite directly or indirectly instantiate third-party controls whose constructors call LicenseManager.Validate. I'm not thrilled with having to disable parallelization for these tests.
System.InvalidOperationException : Hashtable insert failed. Load factor too high. The most common cause is multiple threads writing to the Hashtable simultaneously.
/LicenseManager.cs#L267-L327
This is also reported through https://xamarin.github.io/bugzilla-archives/45/45991/bug.html.
at System.Collections.Hashtable.Insert(Object key, Object nvalue, Boolean add)
at System.ComponentModel.LicenseManager.CacheProvider(Type type, LicenseProvider provider)
at System.ComponentModel.LicenseManager.ValidateInternalRecursive(LicenseContext context, Type type, Object instance, Boolean allowExceptions, License& license, String& licenseKey)
at System.ComponentModel.LicenseManager.Validate(Type type, Object instance)
at DevExpress.XtraEditors.Repository.RepositoryItemTreeListLookUpEdit..ctor()
You can see the hash tables being accessed without a lock and with non-atomic operations spread across several accesses: