ICEfaces
  1. ICEfaces
  2. ICE-2817

Async applications with concurrentDomViews true can misbehave when more than 2 browser windows are used.

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.7Beta1
    • Fix Version/s: 1.7RC1, 1.7
    • Component/s: Bridge, Framework
    • Labels:
      None
    • Environment:
      concurrentDomViews=true synchronousUpdate=false

      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.

        Issue Links

          Activity

          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, ICE-2817, ICE-2776, ICE-1919
          Files Changed
          Commit graph 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.
          ICE-2817
          Files Changed
          Commit graph 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.
          ICE-2817
          Files Changed
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/SendUpdatedViews.java
          Commit graph MODIFY /icefaces/trunk/icefaces/bridge/src/connection.async.js
          Commit graph 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).
          ICE-2817
          Files Changed
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/core/SendUpdatedViews.java
          Commit graph MODIFY /icefaces/trunk/icefaces/bridge/src/connection.async.js

            People

            • Assignee:
              Unassigned
              Reporter:
              Deryk Sinotte
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: