[Webkit-unassigned] [Bug 107929] New: [Qt]Non-blocking sockets don't get notified when network status is down in QtWebKit page reloading
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Jan 25 02:42:37 PST 2013
https://bugs.webkit.org/show_bug.cgi?id=107929
Summary: [Qt]Non-blocking sockets don't get notified when
network status is down in QtWebKit page reloading
Product: WebKit
Version: 528+ (Nightly build)
Platform: Unspecified
OS/Version: Linux
Status: UNCONFIRMED
Severity: Normal
Priority: P2
Component: Page Loading
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: chenzx at cn.fujitsu.com
Steps to reproduce this problem:
(1)Must use Linux, Windows has no problem(doesn't know why yet);
(2)Setup a local apache html page, use the below .htacces file:
ExpiresActive On
Header set Cache-Control "no-cache, no-store, must-revalidate, max-age=0, proxy-revalidate, no-transform"
Header set Pragma "no-cache"
Also, ensure your test html page contains resources num > 6, (css, js, images, etc)
(3)Use Qt's demos/browser to access it in the normal way, then ```disable network```, do a reloading;
(4)You will observe that the loading procedure may hang sometimes (not always)
Reason I guess:
1、Qt-4.8.x use non-blocking sockets and seems to maintain a ```connection pool```;
2、When network status is down, there objects in connection pool may not be notified, they still think network is OK
3、So when page reloading, the read request from these non-blocking sockets gets no response, the GUI seems to hang.
Apply the patch of bug 106761, the GUI will get read timeout error in at most 30s, but this is not perfect —— better to display network connection error at once.
So, how to clear out the ```connection pool``` when do page reloading?
Also I know the normal F5 reloading may use data in cache(this seems to be a common spec for all modern browsers), If use Shift + F5, reloading should not use any cache, or any connection from the ```connection pool```. I doubt Qt code may not provide such mechanism, or somewhere needs a fix.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list