I am sponsoring this case for Jeff Trawick, timeout set to 11/11. The project updates the mod_fcgid version from 2.2 to 2.3.4.
Template Version: @(#)sac_nextcase 1.68 02/23/09 SMI This information is Copyright 2009 Sun Microsystems 1. Introduction 1.1. Project/Component Working Name: Update mod_fcgid to 2.3.4 in OpenSolaris 1.2. Name of Document Author/Supplier: Author: Jeff Trawick 1.3 Date of This Document: 04 November, 2009 4. Technical Description Update mod_fcgid to 2.3.4 in OpenSolaris 1. Introduction 1.1. Project/Component Working Name: Update mod_fcgid to 2.3.4 in OpenSolaris 1.2. Name of Document Author/Supplier: Author: Jeff Trawick (jeffrey.trawick at sun.com) 1.3 Date of This Document: 4 November 2009 2. Summary 2.1. Update mod_fcgid to 2.3.4 mod_fcgid is a popular module for Apache HTTP Server 2.0 and above which can manage FastCGI application processes and route requests to them. The current mod_fcgid version in OpenSolaris is 2.2, and is the final release that was developed outside of the Apache Software Foundation. Integration of that version is covered by ARC case PSARC/2008/090. [1] In 2009 the project moved to the Apache Software Foundation (ASF) as a subproject of Apache HTTP Server [2], and with the permission of the authors it was relicensed from GPL to ASL 2.0. As a subproject of Apache HTTP Server, mod_fcgid is distributed stand-alone and on a separate release cycle from Apache HTTP Server. 2.3.4 is the first GA release of the module after the move to the ASF (and also, the first release since 2007), and is considered stable for production use. The old mod_fcgid documentation was not part of the 2.2 software distribution, so it was not installed with mod_fcgid on OpenSolaris. This documentation also was not part of the donated, relicensed mod_fcgid software, and has been replaced by a new reference guide [3]. It will will be installed with the updated mod_fcgid on OpenSolaris. Version 2.3.4 includes a number of bug fixes, particularly in the area of configuration. Additionally, new names have been given to all directives to be more consistent with existing httpd practices. (Existing directives are still supported.) The "FcgidCmdOptions" directive has been added. [4] The mod_fcgid 2.3.4 change log can be found here: http://svn.apache.org/viewvc/httpd/mod_fcgid/tags/2.3.4/ CHANGES-FCGID?revision=823075&view=markup 3. Technical Description 3.1. New Configuration Directives These are documented in the mod_fcgid reference manual. [3] 3.1.1. FcgidCmdOptions This directive provides a way to associate application-related settings with a particular FastCGI application, providing an alternative to applying these settings to all applications. 3.1.2. New names for existing directives Refer to the list in section 4.1.1. 3.2. Default Configuration Currently mod_fcgid delivers a sample Apache HTTP Server configuration file in etc/apache2/2.2/samples-conf.d/fcgid.conf which the user can then copy to etc/apache2/2.2/conf.d/fcgid.conf and possibly modify in order to activate. The configuration philosophy for Apache HTTP Server modules is that installing the module (e.g., installing SUNWapch22m-fcgid in the case of mod_fcgid) should activate it, as long as a meaningful configuration can be delivered and license restrictions don't preclude automatic integration. This project will implement this level of integration for mod_fcgid. The existing fcgid.conf file currently installed as a sample to the etc/apache2/2.2/samples-conf.d directory will instead be installed to etc/apache2/2.2/conf.d so that it is processed by default. (The new directive names FcgidProcessTableFile and FcgidIPCDir should be used instead of the obsolete names SharememPath and SocketPath.) The file will be installed as renamenew so that if a user has already copied fcgid.conf to the active configuration directory (and potentially modified it), then the new file won't overwrite it or be activated. (Only *.conf files in that directory are activated.) 3.3. Effect of Bug Fixes on Existing Configurations Most existing mod_fcgid configurations are expected to continue to work without modification. However, some of the bug fixes in the handling of configuration can cause some existing configurations to be rejected or to work differently. mod_fcgid 2.2 would allow some directives to be placed inside <VirtualHost ...> but not respect the setting; with 2.3.4, some of these settings are now respected and the rest result in a configuration error. mod_fcgid 2.2 had some defects in the inheritance of configuration settings within nested scopes which resulted in unexpected processing for some configurations. It is possible that the resulting behavior was desired, and that changes would need to be made to the configuration to achieve the same behavior with mod_fcgid 2.3.4. These issues are described in an upgrade section of the mod_fcgid readme file. [5] Product documentation should either include that information or refer to it. 4. Interfaces 4.1. Exported Interfaces 4.1.1. Configuration directives These are new names for existing directives, except for the new FcgidCmdOptions directive. NAME STABILITY NOTES FcgidAccessChecker Uncommitted mod_fcgid configuration directive FcgidAccessCheckerAuthoritative Uncommitted mod_fcgid configuration directive FcgidAuthenticator Uncommitted mod_fcgid configuration directive FcgidAuthenticatorAuthoritative Uncommitted mod_fcgid configuration directive FcgidAuthorizer Uncommitted mod_fcgid configuration directive FcgidAuthorizerAuthoritative Uncommitted mod_fcgid configuration directive FcgidBusyScanInterval Uncommitted mod_fcgid configuration directive FcgidBusyTimeout Uncommitted mod_fcgid configuration directive FcgidCmdOptions Uncommitted mod_fcgid configuration directive FcgidConnectTimeout Uncommitted mod_fcgid configuration directive FcgidErrorScanInterval Uncommitted mod_fcgid configuration directive FcgidFixPathinfo Uncommitted mod_fcgid configuration directive FcgidIdleScanInterval Uncommitted mod_fcgid configuration directive FcgidIdleTimeout Uncommitted mod_fcgid configuration directive FcgidInitialEnv Uncommitted mod_fcgid configuration directive FcgidIOTimeout Uncommitted mod_fcgid configuration directive FcgidIPCDir Uncommitted mod_fcgid configuration directive FcgidMaxProcesses Uncommitted mod_fcgid configuration directive FcgidMaxProcessesPerClass Uncommitted mod_fcgid configuration directive FcgidMaxRequestInMem Uncommitted mod_fcgid configuration directive FcgidMaxRequestLen Uncommitted mod_fcgid configuration directive FcgidMaxRequestsPerProcess Uncommitted mod_fcgid configuration directive FcgidMinRequestsPerProcess Uncommitted mod_fcgid configuration directive FcgidMinProcessesPerClass Uncommitted mod_fcgid configuration directive FcgidOutputBufferSize Uncommitted mod_fcgid configuration directive FcgidPassHeader Uncommitted mod_fcgid configuration directive FcgidProcessLifeTime Uncommitted mod_fcgid configuration directive FcgidProcessTableFile Uncommitted mod_fcgid configuration directive FcgidSpawnScore Uncommitted mod_fcgid configuration directive FcgidSpawnScoreUpLimit Uncommitted mod_fcgid configuration directive FcgidTerminationScore Uncommitted mod_fcgid configuration directive FcgidTimeScore Uncommitted mod_fcgid configuration directive FcgidWrapper Uncommitted mod_fcgid configuration directive FcgidZombieScanInterval Uncommitted mod_fcgid configuration directive These existing directive names are deprecated and slated for removal after the mod_fcgid 2.3.x branch: BusyScanInterval Obsolete Uncommitted config directive BusyTimeout Obsolete Uncommitted config directive DefaultInitEnv Obsolete Uncommitted config directive DefaultMaxClassProcessCount Obsolete Uncommitted config directive DefaultMinClassProcessCount Obsolete Uncommitted config directive ErrorScanInterval Obsolete Uncommitted config directive FastCgiAccessChecker Obsolete Uncommitted config directive FastCgiAccessCheckerAuthoritative Obsolete Uncommitted config directive FastCgiAuthenticator Obsolete Uncommitted config directive FastCgiAuthenticatorAuthoritative Obsolete Uncommitted config directive FastCgiAuthorizer Obsolete Uncommitted config directive FastCgiAuthorizerAuthoritative Obsolete Uncommitted config directive FCGIWrapper Obsolete Uncommitted config directive IdleScanInterval Obsolete Uncommitted config directive IdleTimeout Obsolete Uncommitted config directive IPCCommTimeout Obsolete Uncommitted config directive IPCConnectTimeout Obsolete Uncommitted config directive MaxProcessCount Obsolete Uncommitted config directive MaxRequestInMem Obsolete Uncommitted config directive MaxRequestLen Obsolete Uncommitted config directive MaxRequestsPerProcess Obsolete Uncommitted config directive OutputBufferSize Obsolete Uncommitted config directive PassHeader Obsolete Uncommitted config directive PHP_Fix Obsolete Uncommitted config directive ProcessLifeTime Obsolete Uncommitted config directive SharememPath Obsolete Uncommitted config directive SocketPath Obsolete Uncommitted config directive SpawnScore Obsolete Uncommitted config directive SpawnScoreUpLimit Obsolete Uncommitted config directive TerminationScore Obsolete Uncommitted config directive TimeScore Obsolete Uncommitted config directive ZombieScanInterval Obsolete Uncommitted config directive The mod_fcgid reference guide has a table which maps the old names to new names. [6] 4.1.2. Configuration files added etc/apache2/2.2/conf.d/fcgid.conf Uncommitted httpd configuration file to load mod_fcgid and provide default configuration; delivered as renamenew 4.1.3. Configuration files no longer delivered etc/apache2/2.2/samples-conf.d/fcgid.conf 5. References [1] http://arc.opensolaris.org/caselog/PSARC/2008/090/ [2] http://httpd.apache.org/mod_fcgid/ [3] http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html [4] http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html#fcgidcmdoptions [5] section "Incompatible configuration changes" of http://svn.apache.org/viewvc/httpd/mod_fcgid/trunk/README-FCGID ?revision=822576&view=markup [6] http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html#upgrade 6. Resources and Schedule 6.4. Steering Committee requested information 6.4.1. Consolidation C-team Name: sfw 6.5. ARC review type: FastTrack 6.6. ARC Exposure: open