ICEfaces
  1. ICEfaces
  2. ICE-5149

Configurable update coalescing

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.8.2
    • Fix Version/s: 1.8.2-EE-GA, 1.8.3
    • Component/s: Framework
    • Labels:
      None
    • Environment:
      ICEfaces
    • Affects:
      Documentation (User Guide, Ref. Guide, etc.)

      Description

      When several updates are available for a particular element, ICEfaces will coalesce these (based on the element ID) into the latest update. This is a performance optimization that avoids overwhelming clients that are unable to retrieve updates as quickly as the server can generate them. In some cases, however (such as for a component that records changes from the last time it was rendered) this update coalescing should not be performed.

      Then intent of this JIRA is to provide a configuration parameter for turning off update coalescing. A more fully-featured implementation might allow coalescing to be configured selectively for different components or regions of the page.

        Activity

        Hide
        Ted Goddard added a comment -

        Note that this optimization is not directly relevant to ICEfaces 2.0. ICEfaces 2.0 applies a notify/refresh strategy, so a full render pass takes place once the notification has been accepted (updates are not queued up on the server waiting for the client). In this case the coalescing occurs prior to rendering via redundant notifications being handled via a single refresh. There should be no problem with non-idempotent component output under the notify/refresh strategy.

        Show
        Ted Goddard added a comment - Note that this optimization is not directly relevant to ICEfaces 2.0. ICEfaces 2.0 applies a notify/refresh strategy, so a full render pass takes place once the notification has been accepted (updates are not queued up on the server waiting for the client). In this case the coalescing occurs prior to rendering via redundant notifications being handled via a single refresh. There should be no problem with non-idempotent component output under the notify/refresh strategy.
        Hide
        Ted Goddard added a comment - - edited

        Set coalesceUpdates to false to turn off the update coalescing optimization. This is useful for custom components that make non-idempotent changes to the DOM (changes that depend on previous renders, not just the current state of the component).

        <context-param>
        <param-name>com.icesoft.faces.coalesceUpdates</param-name>
        <param-value>false</param-value>
        </context-param>

        Show
        Ted Goddard added a comment - - edited Set coalesceUpdates to false to turn off the update coalescing optimization. This is useful for custom components that make non-idempotent changes to the DOM (changes that depend on previous renders, not just the current state of the component). <context-param> <param-name>com.icesoft.faces.coalesceUpdates</param-name> <param-value>false</param-value> </context-param>

          People

          • Assignee:
            Unassigned
            Reporter:
            Ted Goddard
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: