The ResourceLoadStatistics data store is not being set to a unique path when running tests, causing multiple processes to interact with the same file on disk. This is causing crashes in the test system.
<rdar://problem/32442251>
Created attachment 311863 [details] Patch
Comment on attachment 311863 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=311863&action=review > Source/WebKit2/UIProcess/API/APIProcessPoolConfiguration.cpp:71 > + configuration->m_resourceLoadStatisticsDirectory = legacyConfiguration.resourceLoadStatisticsDirectory; Do we need this same change in ProcessPoolConfiguration::createWithLegacyOptions?
Comment on attachment 311863 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=311863&action=review >> Source/WebKit2/UIProcess/API/APIProcessPoolConfiguration.cpp:71 >> + configuration->m_resourceLoadStatisticsDirectory = legacyConfiguration.resourceLoadStatisticsDirectory; > > Do we need this same change in ProcessPoolConfiguration::createWithLegacyOptions? ProcessPoolConfiguration::createWithLegacyOptions() calls ProcessPoolConfiguration::create(), which will call the default constructor of ProcessPoolConfiguration which initializes m_resourceLoadStatisticsDirectory to WebsiteDataStore::defaultResourceLoadStatisticsDirectory() (in my patch). So it looks fine to me. Am I missing something? I don't think we have a legacy path for resource statistics so I assume using the default one is fine?
Comment on attachment 311863 [details] Patch Clearing flags on attachment: 311863 Committed r217743: <http://trac.webkit.org/changeset/217743>
All reviewed patches have been landed. Closing bug.
Comment on attachment 311863 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=311863&action=review >>> Source/WebKit2/UIProcess/API/APIProcessPoolConfiguration.cpp:71 >>> + configuration->m_resourceLoadStatisticsDirectory = legacyConfiguration.resourceLoadStatisticsDirectory; >> >> Do we need this same change in ProcessPoolConfiguration::createWithLegacyOptions? > > ProcessPoolConfiguration::createWithLegacyOptions() calls ProcessPoolConfiguration::create(), which will call the default constructor of ProcessPoolConfiguration which initializes m_resourceLoadStatisticsDirectory to WebsiteDataStore::defaultResourceLoadStatisticsDirectory() (in my patch). So it looks fine to me. Am I missing something? I don't think we have a legacy path for resource statistics so I assume using the default one is fine? You are right: we have no legacy data to worry about here.