Details
Description
In trying to replicate a separate issue, I was running AuctionMonitor and opening two browser windows from the same browser. Going back and forth between them, I couldn't get the issue to happen so I opened a 3rd browser window. This appeared to cause the first 2 browser windows to start having communication issues. The behaviour is that the asynch communication appears to get an invalid response and re-open the connection, which generates another invalid response and repeats very quickly.
I was able to replicate the behaviour on Firefox, IE, and Safari. It would happen after 3 browser windows were opened but sometimes it would require 4 or 5. The typical output from the malfunctioning browser windows is as follows:
Firebug in Firefox shows this:
POST http://localhost:8080/auctionMonitor/block/receive-updated-views (46ms)icefaces-d2d.js (line 2219)
[window.vjZR#1.async-connection.blocking] [6997550] : receive [200] OKicefaces-d2d.js (line 2017)
[window] Parsing erroricefaces-d2d.js (line 2029)
POST http://localhost:8080/auctionMonitor/block/receive-updated-views (69ms)icefaces-d2d.js (line 2219)
[window] XML Parsing Error: no element found Location: http://localhost:8080/auctionMonitor/block/receive-updated-views Line Number 1, Column 1:icefaces-d2d.js (line 2029)
[window.vjZR#1.async-connection] receive broadcast failed TypeError: sourceNode is null message=sourceNode is null
Our own bridge console in Safari shows this:
[window.Dpp9#2.async-connection] : receive broadcast failed
TypeError: Null value
Our own bridge console in IE 7 shows this:
[window.NH1C#6.async-connection] : receive broadcast failed
[object Error]
There is nothing on the server side to indicate that anything is wrong (the server logs don't show any stack traces or errors) and you can still generally interact with the application but due to the rapidity of the communication cycle, CPU usage tends to go up pretty dramatically.
I was able to replicate the behaviour on Firefox, IE, and Safari. It would happen after 3 browser windows were opened but sometimes it would require 4 or 5. The typical output from the malfunctioning browser windows is as follows:
Firebug in Firefox shows this:
POST http://localhost:8080/auctionMonitor/block/receive-updated-views (46ms)icefaces-d2d.js (line 2219)
[window.vjZR#1.async-connection.blocking] [6997550] : receive [200] OKicefaces-d2d.js (line 2017)
[window] Parsing erroricefaces-d2d.js (line 2029)
POST http://localhost:8080/auctionMonitor/block/receive-updated-views (69ms)icefaces-d2d.js (line 2219)
[window] XML Parsing Error: no element found Location: http://localhost:8080/auctionMonitor/block/receive-updated-views Line Number 1, Column 1:icefaces-d2d.js (line 2029)
[window.vjZR#1.async-connection] receive broadcast failed TypeError: sourceNode is null message=sourceNode is null
Our own bridge console in Safari shows this:
[window.Dpp9#2.async-connection] : receive broadcast failed
TypeError: Null value
Our own bridge console in IE 7 shows this:
[window.NH1C#6.async-connection] : receive broadcast failed
[object Error]
There is nothing on the server side to indicate that anything is wrong (the server logs don't show any stack traces or errors) and you can still generally interact with the application but due to the rapidity of the communication cycle, CPU usage tends to go up pretty dramatically.
Issue Links
Activity
- All
- Comments
- History
- Activity
- Remote Attachments
- Subversion
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #15982 | Mon Mar 10 12:11:39 MDT 2008 | mircea.toma | Fix XMLHttpRequest callbacks. ICE-2805, |
Files Changed | ||||
MODIFY
/icefaces/trunk/icefaces/bridge/lib/ajax.js
|
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #15968 | Fri Mar 07 11:43:24 MST 2008 | mircea.toma | Ignore 'pong' commands in bridge instances that don't own the bridge. |
Files Changed | ||||
MODIFY
/icefaces/trunk/icefaces/bridge/src/connection.async.js
|
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #15967 | Fri Mar 07 11:31:22 MST 2008 | mircea.toma | Avoid invoking receive callbacks on empty responses. |
Files Changed | ||||
MODIFY
/icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/SendUpdatedViews.java
MODIFY /icefaces/trunk/icefaces/bridge/src/connection.async.js MODIFY /icefaces/trunk/icefaces/bridge/lib/ajax.js |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #15961 | Thu Mar 06 17:08:07 MST 2008 | mircea.toma | Mark empty responses that are supposed to terminate the blocking connection (as opposed to empty responses randomly sent by some app. servers). |
Files Changed | ||||
MODIFY
/icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/SendUpdatedViews.java
MODIFY /icefaces/trunk/icefaces/bridge/src/connection.async.js |