Download: https://download.lucee.org/
Full Changelog: Lucee Server Changelogs - 6.2
Lucee 6.2.5.48 is the stable LTS release following two release candidates. This release focuses heavily on datasource connection pool reliability, classloader / memory, MSSQL compatibility, session management, and admin/extension improvements.
We are still addressing a few last issues with Lucee 7.0.2, it’s almost stable!.
Docker and Installers Bundle
- Java 21.0.10+7-LTS ( 6.2 supports up to Java 24 , Java 25 requires Lucee 7 )
- Tomcat 11.0.18
Support Lucee
Firstly, huge shout out to everyone in the community who has been collaborating with the Lucee Team with great bug reports, testing and feedback!
Changelog
Datasource & Connection Pool
A major focus of this release was overhauling the datasource connection pool behaviour, fixing several critical bugs that could cause connection leaks, deadlocks, and thread starvation.
- LDEV-5962 - Connection pool config defaults cause
connectionLimitto be ignored, causing threads to block indefinitely - LDEV-5963 -
idleTimeoutandconnectionTimeoutwere ignored due to the pool evictor being disabled - LDEV-5964 - Session datasource connections could deadlock
- LDEV-5965 - Datasource connection validation exceptions should reject the connection rather than silently reuse it
- LDEV-5966 - Request timeout could leave phantom connections in the pool
- LDEV-5991 - Datasource
idleTimeoutdefault of 1 minute was too aggressive, causing unnecessary connection churn - LDEV-6051 - Default
maxIdletoconnectionLimitfor better connection reuse - LDEV-6057 - NullPointerException when a datasource defined in CFConfig.json is missing
hostorport - LDEV-6066 - Streamlined
verifyDatasourceinternals
MSSQL
- LDEV-5970 - MSSQL JDBC 13.2.1 throws “result set is closed” when using
lucee.datasource.mssql.modern=true - LDEV-5972 - Fix MSSQL Modern Mode properly
Session Management
- LDEV-6046 -
sessionInvalidate()failed to deactivate the old session when using database session storage - LDEV-6026 - Added system property
lucee.session.scope.complex.warnto control the session scope complex values warning logging (also in 6.2.4.24)
Cache
- LDEV-6020 -
cachedWithinFlush()returned false with struct arguments on multi-argument functions - LDEV-6021 -
cacheGetDefaultCacheName()did not recognise application-level default caches
Admin & Extensions
- LDEV-6065 - Admin should not allow null support to be overridden via Application.cfc
- LDEV-6067 - Added admin update notification test
- LDEV-6068 - Refactored admin update version handling
- LDEV-6069 - Extension update check incorrectly reported a downgrade as an upgrade due to inconsistent version padding
- LDEV-6073 - Page
/lucee/formtag-form.cfmmissing with form extension since Lucee 6.2.4 (form tag regression) - LDEV-6120 - Added support for
jakarta-tag-classandjavax-tag-classin TLD files, allowing a single extension to target both Lucee 6 (javax) and Lucee 7 (jakarta) servlet APIs
Bug Fixes
- LDEV-5903 - Repeated class loading issues causing memory leaks in Lucee 6
- LDEV-6043 -
DecimalFormatreturned wrong values for numbers >= 10,000,000 due to silent scientific notation conversion - LDEV-6048 - Lucee loader version checks had inverted logic and confusing error messages
- LDEV-6063 -
cfflushforcedConnection: close, breaking HTTP keep-alive - LDEV-6097 -
StackOverflowErrorwhen duplicating aCatchBlockwith a cause chain - LDEV-5976 - Error merging
cfconfig.json - LDEV-6056 - Fix regression: invalid
PageSourceequals check and mapping comparison causing incorrect page resolution - LDEV-6072 -
PageSourceImplmissinghashCode()override causing incorrect equality checks
Extensions Bundled
Upgrading
This is a drop-in upgrade for Lucee 6.2.x. Download from https://download.lucee.org/
If you are running a datasource-heavy application, review your connection pool settings after upgrading — several defaults have been corrected and you may want to tune idleTimeout, connectionLimit, and maxIdle explicitly.
