Upgrading Lucee whilst using this.sessioncluster=true

I thought I’d post about our experiences with an upgrade from 5.0.0 (or prior) to 5.2.1… maybe someone in the know can verify our observations and anyone attempting the same can be prepared.

The data written to the cf_session_data table in your session data store appears to have changed in recent versions and the one version will throw an error if it reads a record created by the other version. This is relevant where you have a cluster of servers and upgrade them one at a time. My advice… wait for a quiet time, switch off the old version, delete all records from your cf_session_data table, switch on the new version.

The old version gives errors like this (misleading as this isn’t the case):

datasource [sessions] is not enabled to be used as session/client storage, you have to enable it in the Lucee administrator or define key “storage=true” for datasources defined in the application event handler

Version 5.2 gives errors including:

can’t decode the the base64 input string [{“LOCATION”:“10”,“timecreated”:createDateTime(2017 … truncated], because the input string has an invalid length

and:

Illegal characters in the sequence to be decoded: [{, ", t, i]

I have updated ticket LDEV-1207 with these details and linked it to LDEV-1089, which I believe was the same issue.

Simon