Adding @Kanikdale, Sameer<mailto:[email protected]> in the thread
From: Srivastav, Tushar Sent: Tuesday, November 11, 2025 9:03 AM To: '[email protected]' <[email protected]> Subject: FW: Breaking Change in Tomcat 11.0.12+ – HTTP Header Casing Affects Cluster Synchronization Hi Team, I’d like to bring attention to a breaking change we’ve encountered in our ThingWorx clustered deployment following a recent Tomcat upgrade. Background: - We run ThingWorx in cluster mode, with two containers listening on ports 9080 and 9081. - Recently, we upgraded from Tomcat 11.0.10 to Tomcat 11.0.13 (the issue began from 11.0.12). - When making an update request via Postman, the change would correctly reflect on container 9080, but the update would not sync to container 9081. Root Cause: - After investigation, we discovered the sync issue related to how Tomcat processes HTTP request headers. * We are using a header to propagate and synch the changes in our application - We were sending a custom header (e.g., `ABC_XYZ`) in uppercase. This worked correctly in Tomcat 11.0.10. - In Tomcat 11.0.12 and later, unless the custom header is sent in lowercase (`abc_xyz`), the update does not properly propagate across the cluster. Tomcat Code Change: - This behavior change maps directly to a Tomcat commit: [https://github.com/apache/tomcat/commit/09e30aeb68edfd3ae79bfc5e8ba3211d884aeb4c#diff- 1115e493b03a0e9c02f350ca5835b67463e4a2b652c33c400027868c7e35d7c7](https://github.com/apache/tomcat/commit/09e30aeb68edfd3ae79bfc5e8ba3211d884aeb4c#diff-1115e493b03a0e9c02f350ca5835b67463e4a2b652c33c400027868c7e35d7c7) This commit remove the conversion of header from uppercase to lower case - Any custom header sent in uppercase (e.g., `ABC_XYZ`) will no longer be recognized for same operations in Tomcat 11.0.12+. - This affects ThingWorx deployments specifically when custom headers are used for critical operations, resulting in inconsistent state across clustered containers. Let me know if further technical details are needed. Best regards, Tushar
