|Summary:||REGRESSION(r186025): [SOUP] NetworkCache gets blocked in traverse since r186025|
|Product:||WebKit||Reporter:||Carlos Garcia Campos <cgarcia>|
|Severity:||Normal||CC:||commit-queue, koivisto, svillar|
|Priority:||P2||Keywords:||Gtk, Regression, Soup|
|Version:||528+ (Nightly build)|
Description Carlos Garcia Campos 2015-07-02 05:34:41 PDT
In r186025 the readSync method used when traversing the cache files was removed in favor of using parallel async reads to speed up the traverse. The approach used doesn't work for soup, because the IO operations are async, but run their callbacks in the current thread. The network cache now runs up to 5 async reads in the io work queue thread, and waits for them to finish, and those asycn reads never finish for the soup backend because the thread is blocked waiting for them. We need to use a different thread to run those reads.
Comment 2 WebKit Commit Bot 2015-07-02 05:40:53 PDT
Attachment 256006 [details] did not pass style-queue: ERROR: Source/WebKit2/NetworkProcess/cache/NetworkCacheIOChannel.h:63: Extra space before ( in function call [whitespace/parens]  ERROR: Source/WebKit2/NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp:183: Extra space before ( in function call [whitespace/parens]  Total errors found: 2 in 3 files If any of these errors are false positives, please file a bug against check-webkit-style.