Details
Description
Upon closing a browser window/tab a dispose-views request is send by the Bridge to the Core in order to clean-up the View structure. As a Bridge instance can have multiple connections to the Core and uses the Heartbeat mechanism to check the connection health, it could happen that a ping and a dispose-views are received by the Core out of order: dispose-views and then ping. When the ping is handled the associated View structure has already been cleaned up. As a result no response was send to the ping request and due to the Thread Blocking environment the thread got blocked and never got unblocked as the ping request is a non-blocking request.
Basically, when a Ping request is received while it's ICEfaces ID is still valid but has no Views associated to it it should send back a Close response. Currently it does not send back anything causing it to be in a blockUntilRespond state, which it cannot get out of as it is a non-blocking Ping request.
Basically, when a Ping request is received while it's ICEfaces ID is still valid but has no Views associated to it it should send back a Close response. Currently it does not send back anything causing it to be in a blockUntilRespond state, which it cannot get out of as it is a non-blocking Ping request.
Activity
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #19034 | Fri Jul 03 14:58:46 MDT 2009 | jack.van.ooststroom | Fixed JIRA |
Files Changed | ||||
MODIFY
/icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/ReceivePing.java
|
Jack Van Ooststroom
created issue -
Jack Van Ooststroom
made changes -
Field | Original Value | New Value |
---|---|---|
Assignee | Jack Van Ooststroom [ jack.van.ooststroom ] |
Jack Van Ooststroom
made changes -
Salesforce Case | [] | |
Fix Version/s | 1.8.2 [ 10190 ] |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #19041 | Tue Jul 07 16:34:48 MDT 2009 | jack.van.ooststroom | Fixed JIRA |
Files Changed | ||||
MODIFY
/icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/ReceivePing.java
|
Jack Van Ooststroom
made changes -
Status | Open [ 1 ] | In Progress [ 3 ] |
Jack Van Ooststroom
made changes -
Jack Van Ooststroom
made changes -
Status | In Progress [ 3 ] | Resolved [ 5 ] |
Resolution | Fixed [ 1 ] |
Jack Van Ooststroom
made changes -
Salesforce Case | [] | |
Description | When a Ping request is received while its ICEfaces ID is still valid but has no Views associated to it it should send back a Close response. Currently it does not send back anything causing it to be in a blockUntilRespond state, which it cannot get out of as it is a Ping request. |
Upon closing a browser window/tab a dispose-views request is send by the Bridge to the Core in order to clean-up the View structure. As a Bridge instance can have multiple connections to the Core and uses the Heartbeat mechanism to check the connection health, it could happen that a ping and a dispose-views are received by the Core out of order: dispose-views and then ping. When the ping is handled the associated View structure has already been cleaned up. As a result no response was send to the ping request and due to the Thread Blocking environment the thread got blocked and never got unblocked as the ping request is a non-blocking request. Basically, when a Ping request is received while it's ICEfaces ID is still valid but has no Views associated to it it should send back a Close response. Currently it does not send back anything causing it to be in a blockUntilRespond state, which it cannot get out of as it is a non-blocking Ping request. |
Jack Van Ooststroom
made changes -
Ken Fyten
made changes -
Fix Version/s | 1.8.2-RC1 [ 10210 ] |
Ken Fyten
made changes -
Status | Resolved [ 5 ] | Closed [ 6 ] |
Changed Fix Version(s) to 1.8.2