IBM Support

PH16818: FILE DESCRIPTOR LEAK IN DEFAULTFACELETFACTORY

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

APAR status

  • Closed as program error.

Error description

Local fix

  • Set javax.faces.FACELETS_REFRESH_PERIOD to -1 or 0
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  Users of JavaServer Faces (JSF) in          *
    *                  WebSphere Application Server versions       *
    *                  8.5.5.14-8.5.5.16 and all releases of 9.0,  *
    *                  as well as WebSphere Liberty users of       *
    *                  jsf-2.0 in releases 17.0.0.4-19.0.0.9 and   *
    *                  jsf-2.2 in all releases.                    *
    ****************************************************************
    * PROBLEM DESCRIPTION: JSF can leak files in                   *
    *                      org.apache.myfaces.view.facelets.impl.D *
    *                      efaultFaceletFactory                    *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    PI88850 introduced a regression where URLConnections opened in
    org.apache.myfaces.view.facelets.impl.DefaultFaceletFactory.need
    sToBeRefreshed() are not properly closed. This can cause those
    connections to leak, leading to a "Too Many Open Files"
    exception:
    java.io.FileNotFoundException: <file_path> (Too many open
    files)
    at java.io.FileInputStream.open(Native Method)
    This leak can only occur in applications that explicitly set
    the web context parameter
    "javax.faces.FACELETS_REFRESH_PERIOD" to a value greater than
    zero.  The default value of this parameter is "-1", which
    configures JSF to only check or updates to facelet files at
    application startup time.
    

Problem conclusion

Temporary fix

Comments

APAR Information

  • APAR number

    PH16818

  • Reported component name

    WEBS APP SERV N

  • Reported component ID

    5724H8800

  • Reported release

    850

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2019-09-12

  • Closed date

    2019-10-09

  • Last modified date

    2019-10-09

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    WEBS APP SERV N

  • Fixed component ID

    5724H8800

Applicable component levels



Document information

More support for: WebSphere Application Server
General

Software version: 850

Reference #: PH16818

Modified date: 09 October 2019