ICEfaces
  1. ICEfaces
  2. ICE-4000

Failover support for Post requests

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Invalid
    • Affects Version/s: 1.8DR#2
    • Fix Version/s: None
    • Component/s: Framework
    • Labels:
      None
    • Environment:
      ICEfaces + cluster environment

      Description

      One outstanding issue with ICEfaces failover support is the in memory Views structure maintained between several objects in the ICEfaces framework, most notably the views member variable in MainSessionBoundServlet

      The entries in this Map are keyed by viewNumber, a parameter that is passed to/from the client via the ice.view parameter. Firstly, we have no support for duplicating the contents of this map between nodes in the cluster as the View object is not serializable and the reference graph is large. Secondly, in the case of the internal ice.session map entries the approach has been taken of runtime creation of the in memory structures but this approach is difficult with the views structure because of the view numbering.

      If a user joins an application and opens up 5 tabs viewing the application, the viewNumbers 1-5 will be created and valid. If the user closes tab 2 and 4, the views map will contain entries for views 1, 3, and 5. Consider what happens on failover in this case. The user is entering values in a form and submits the page. JSF StateSaving supports restoring the state using a key supplied in the request coupled with the state saved in the session and ICEfaces could support this as well except the views map on the secondary server is a) empty, and b) any runtime creation of new Views have to support the original ViewNumbering already created on the old primary server. The 'ordinal' values of viewNumber requests (1, 3, 5) are 1, 2, 3 which wont map to the correct StateSaving keys as they have been stored in the session.

        Activity

        Hide
        Ken Fyten added a comment -

        Marking as Closed / Invalid as part of legacy ICEfaces 1.x, 2.x JIRA cleanup.

        Note: This issue may be resolved in a newer ICEfaces release, available here: http://www.icesoft.org/java/downloads/icefaces-downloads.jsf

        If the issue persists with the current ICEfaces release, please create a new JIRA for it.

        Show
        Ken Fyten added a comment - Marking as Closed / Invalid as part of legacy ICEfaces 1.x, 2.x JIRA cleanup. Note: This issue may be resolved in a newer ICEfaces release, available here: http://www.icesoft.org/java/downloads/icefaces-downloads.jsf If the issue persists with the current ICEfaces release, please create a new JIRA for it.

          People

          • Assignee:
            Unassigned
            Reporter:
            Greg Dick
          • Votes:
            1 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: