LDEV-4358 - Resource leak in DatasourceConnectionPool 5.3.10 LDEV-4550 - Upgrading to v5.4.0.65 failed due to Felix installation
Code Changes
Extensions Bundled
AXIS and Search are no longer bundled due to CVEs, but can still be manually installed
Lucee needs financial Support
If you are building your career and/or business on Lucee, please support the developers working on the project. With your support, we can make Lucee even better and quicker, both in terms of performance and release cycles!
Release Roadmap
TL;DR due to CVE in java libraries used in 5.3, 5.3 is EOL aside from security fixes
The one caveat is we haven’t upgraded Hibernate from 3.5.5 to 5.4 yet in Lucee 5.4
Yesterday I upgraded the production server with no issues. All applications seem to work fine.
CentOS Linux 7.9.2009 (Core)
Tomcat 9.0.31 and Java 11
Lucee run under Plesk Obsidian 18.0.53 update 1.
Well done to the development team.
Thanks
it has been addressed in the 5.4.1.2 and 6.0.0.487 SNAPSHOTS
The old version of HSQLDB was 1.8.0, from 2009, so there maybe some changes in behaviour we can’t change. HSQLDB is used for any QoQ with multiple tables, native QoQ only works on a single table
Maybe related… ? We have some complex/very old QoQ joins failing in 5.4 (works in 5.3). Feel free to split to a separate thread.
My attempts to create an easy repro case has been unsuccessful.
I have updated details below to include the accurate query and the error.
Short version:
We have two queries via MSSQL.
QoQ does this:
SELECT qry1.stateCode, qry1.description, qry2.exempt
FROM qry1, qry2
WHERE cast(qry1.stateCode as varchar) = qry2.stateCode
Error Message:
length must be specified in type definition: VARCHAR
ErrorCode: 0
NativeErrorCode: -5599
SQLState: 42599
Stack:
lucee.runtime.exp.DatabaseException: length must be specified in type definition: VARCHAR at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source) at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source) at org.hsqldb.jdbc.JDBCStatement.fetchResult(Unknown Source) at org.hsqldb.jdbc.JDBCStatement.execute(Unknown Source) at lucee.runtime.type.util.QueryUtil.execute(QueryUtil.java:320) at lucee.runtime.type.QueryImpl.execute(QueryImpl.java:287) at lucee.runtime.type.QueryImpl.<init>(QueryImpl.java:235) at lucee.runtime.db.HSQLDBHandler.__execute(HSQLDBHandler.java:345) at lucee.runtime.db.HSQLDBHandler._execute(HSQLDBHandler.java:310) at lucee.runtime.db.HSQLDBHandler.execute(HSQLDBHandler.java:294) at lucee.runtime.tag.Query.executeQoQ(Query.java:1111) at lucee.runtime.tag.Query._doEndTag(Query.java:681) at lucee.runtime.tag.Query.doEndTag(Query.java:566) at ...
Removing the CAST causes this error:
Message: incompatible data types in combination
ErrorCode: 0
NativeErrorCode: -5562
SQLState: 42562
Stack:
lucee.runtime.exp.DatabaseException: incompatible data types in combination at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source) at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source) at org.hsqldb.jdbc.JDBCStatement.fetchResult(Unknown Source) at org.hsqldb.jdbc.JDBCStatement.execute(Unknown Source) at lucee.runtime.type.util.QueryUtil.execute(QueryUtil.java:320) at lucee.runtime.type.QueryImpl.execute(QueryImpl.java:287) at lucee.runtime.type.QueryImpl.<init>(QueryImpl.java:235) at lucee.runtime.db.HSQLDBHandler.__execute(HSQLDBHandler.java:345) at lucee.runtime.db.HSQLDBHandler._execute(HSQLDBHandler.java:310) at lucee.runtime.db.HSQLDBHandler.execute(HSQLDBHandler.java:294) at lucee.runtime.tag.Query.executeQoQ(Query.java:1111) at lucee.runtime.tag.Query._doEndTag(Query.java:681) at lucee.runtime.tag.Query.doEndTag(Query.java:566) at ...
please always include the top of the stack trace!!!
I’m working on the QoQ regressions, basically the problem is it used to be a lot slacker in terms of what is allowed and HSQLDB has become stricter since 2009
just fixing a S3 ACL issue and they will also be on forge box
What’s the issue for that ? I was just updating our dev Docker images from 5.3 to 5.4 to start testing, and if I’m just gonna have to do it again I may as well hold off a day or two.
( please don’t direct me to Jira, it’s impossible to use even if I guess where the login button is and moans at me about dark mode every time I open it )
I want the latest released 5.4.1. Above it was stated “QoQ regressions” are fixed in 5.4.1.4 so I thought that that would be a non-snapshot.
It seems like instead I need to watch the 5.4.1 Backlog list at the link you kindly gave (stands at 4 at present, including the QoQ fixes) and when that hits 0 there’ll be a 5.4.1.something RC and then a release ? E.g. 5.4.1.4 will never be a release, only ever snapshot ?
Sorry if this seems like silly questions, I really don’t follow how Lucee releases relate to Jira “fix versions” and then on to Docker tags.
Question: Will the update process erase old jars with CVEs? I would assume it will just use the newest if an older is also there? What is the “preferred” method. My Tomcat and JDK are updated to latest already.