2.0.0.Final
Release Notes - mod_cluster - Version 2.0.0.Final
Sub-task
- [MODCLUSTER-666] - Enforce https:// on modcluster.io and update links
- [MODCLUSTER-668] - Migrate legacy mod_cluster releases to GitHub releases
- [MODCLUSTER-669] - Migrate documentation to http://docs.modcluster.io
- [MODCLUSTER-670] - Enforce https:// on docs.modcluster.io and update links
- [MODCLUSTER-672] - Publish apidocs (JavaDoc)
Feature Request
- [MODCLUSTER-282] - Add JGroups support
- [MODCLUSTER-303] - Discovery protocol based on mod-cluster
- [MODCLUSTER-318] - Allow mod_cluster connector address to be configurable
- [MODCLUSTER-449] - Implement ramp-up when starting new nodes
- [MODCLUSTER-450] - Reenable testMulticastSocketNoCrossTalk test
- [MODCLUSTER-457] - Expose Tomcat configuration to explicitly specify a connector to register with the proxy
- [MODCLUSTER-479] - Add support for Tomcat 9
- [MODCLUSTER-493] - Add support for Tomcat 8.5
- [MODCLUSTER-502] - Upgrade MulticastSocket to MulticastChannel
- [MODCLUSTER-539] - Support JDK9 build 9-ea+139
- [MODCLUSTER-562] - Support configuring SocketFactory for MCMP to integrate with Elytron-provided SSLContext
- [MODCLUSTER-564] - Introduce configuration builder API
- [MODCLUSTER-574] - Allow custom LoadMetric implementations to put node into error state (load of -1)
- [MODCLUSTER-575] - Create a Load SPI module
- [MODCLUSTER-607] - Support floating-point numerals for decay factor
- [MODCLUSTER-642] - Support JDK10 build 10+44
- [MODCLUSTER-715] - Add support for Tomcat 10.0
- [MODCLUSTER-720] - Allow mod_cluster listener to register at <Service> level rather than <Server> level
- [MODCLUSTER-739] - Leverage dependabot for automatic dependency management including Tomcat dependencies
Bug
- [MODCLUSTER-385] - "MODCLUSTER000033: Failed to interrupt socket reception.: java.io.IOException: Invalid argument" on shutdown with IPv6
- [MODCLUSTER-397] - StickySessions don't work for ProxyPass from unenabled context
- [MODCLUSTER-432] - Multicast discovery does not work on Mac OS X, fails with "Can't assign requested address"
- [MODCLUSTER-445] - Documentation: update docs SetHandler mod_cluster-manager (as opposed to mod_cluster_manager)
- [MODCLUSTER-460] - Silence superflous "MODCLUSTER000033: Failed to interrupt socket reception" on shutdown
- [MODCLUSTER-463] - UpperCase Alias never matches any context
- [MODCLUSTER-469] - Tomcat 8 container integration does not add jvm-route to JSESSIONID when generated by UUIDJvmRouteFactory
- [MODCLUSTER-470] - Documentation states stickySessionForce defaults to true in modcluster subsystem and defaults to false in Proxy Configuration
- [MODCLUSTER-480] - Tomcat 8 Context#isDistributable implementation needs to consult the underlying context instead of the manager
- [MODCLUSTER-497] - ModClusterConfig#setAdvertiseInterface(java.lang.String) should not have been deprecated as it's used by Tomcat modeller
- [MODCLUSTER-509] - Excluded contexts which are not specific to a host should be excluded on all hosts
- [MODCLUSTER-511] - run-demo.sh script fails in most cases
- [MODCLUSTER-529] - MBeans descriptions are not loaded in JMX for ModClusterListener
- [MODCLUSTER-534] - Httpd Camel case balancer name not found
- [MODCLUSTER-550] - Failover targets should be chosen deterministically
- [MODCLUSTER-566] - Exclusion list cannot be pre-populated in init()
- [MODCLUSTER-572] - Normalize hostnames in MCMP messages
- [MODCLUSTER-581] - Session draining with non-positive timeout may wait indefinitely
- [MODCLUSTER-582] - mod_cluster segfaults in process_info() due to wrongly generated assembler instruction movslq
- [MODCLUSTER-584] - httpd Host header validation check with IPv6 address in MCMP requests
- [MODCLUSTER-585] - mod_cluster excluded-contexts doesn't exclude slash prefixed /contexts; should perform normalization
- [MODCLUSTER-596] - mod_cluster stop/stop-context operations do not send STOP-* in when session draining was unsuccessful
- [MODCLUSTER-612] - Test DefaultMCMPRequestFactoryTestCase#createConfigRequest fails on Windows OS with other than lowercase hostname
- [MODCLUSTER-622] - segfault in process_info
- [MODCLUSTER-625] - Automatically allocated function local variable address overwrites function parameter
- [MODCLUSTER-633] - AdvertiseListenerImplTestCase fails intermittently
- [MODCLUSTER-638] - Mod_cluster listener doesn't start: misleading docs
- [MODCLUSTER-639] - proxy reset requests can allow for other MCMPs to bad proxy
- [MODCLUSTER-643] - Misleading JavaDoc for SPI Container Engine
- [MODCLUSTER-653] - mod_cluster DefaultMCMPHandler should handle "Connection: close" response header and close a connection
- [MODCLUSTER-662] - Upgrade jboss-parent to 29
- [MODCLUSTER-663] - mod_cluster reports "Starting to drain 1 active sessions from (...) in 0 seconds." even when it waits indefinitely
- [MODCLUSTER-680] - TomcatConnector#getType should not consult "secure" for HTTPS connectors
- [MODCLUSTER-695] - fix build error "user id is too big" - set tarLongFileMode to posix
- [MODCLUSTER-700] - mod_cluster doesn't consider parallel deployment while removing context
- [MODCLUSTER-711] - Using "connectorPort" property fails if multiple services are configured in Tomcat
- [MODCLUSTER-714] - support secret="secret" in AJP nodes
- [MODCLUSTER-718] - mod_cluster does not properly disable session stickiness
- [MODCLUSTER-721] - Setting smax results in very small max connection pool on mod_cluster
- [MODCLUSTER-728] - Proxy configured by a hostname caches resolved address indefinitely
- [MODCLUSTER-731] - Adding a non-started context should register the context in stopped stage
- [MODCLUSTER-743] - Building using JDK 11 but running on JDK 8 yields java.lang.NoSuchMethodError: java.nio.ByteBuffer.flip()Ljava/nio/ByteBuffer;
Task
- [MODCLUSTER-396] - Clean up docs build
- [MODCLUSTER-420] - Drop support for httpd older than 2.4
- [MODCLUSTER-439] - Overhaul distribution profile
- [MODCLUSTER-481] - Revise dependencies in container/catalina/pom.xml for building Tomcat common classes (Catalina)
- [MODCLUSTER-482] - Drop Tomcat 6 and JBoss Web support
- [MODCLUSTER-485] - Move CI to Travis
- [MODCLUSTER-494] - Split mod_cluster code base into container integration and native repositories
- [MODCLUSTER-496] - Drop support for legacy JBoss AS 5/6 versions (sar module)
- [MODCLUSTER-498] - Extract Tomcat modeler specific methods from ModClusterConfig into separate Tomcat-specific class
- [MODCLUSTER-500] - Consider dropping base container module; copy container integration code to every integration
- [MODCLUSTER-516] - Move /container-spi module into /container/spi module
- [MODCLUSTER-518] - Support JDK9 build 9-ea (June 2016)
- [MODCLUSTER-519] - Keep Tomcat dependency versions on latest released versions
- [MODCLUSTER-531] - Eliminate automagic (tracker)
- [MODCLUSTER-559] - Support JDK9 build 9-ea+160
- [MODCLUSTER-571] - Maven generates an empty distribution tarball on first execution
- [MODCLUSTER-599] - Update maven-assembly-plugin goal to 'single'
- [MODCLUSTER-611] - Add maven-checkstyle-plugin to the Maven build
- [MODCLUSTER-614] - Disable "Unable to locate Source XRef to link to" warnings in Maven build
- [MODCLUSTER-615] - Fix compiler warnings in demo compilation
- [MODCLUSTER-616] - Fix Javadoc issues
- [MODCLUSTER-617] - Drop legacy "site-mod_cluster" scripting
- [MODCLUSTER-620] - Travis CI: workaround dropping openjdk6/oraclejdk7 on stable/trusty
- [MODCLUSTER-628] - Travis CI: Add oraclejdk9 to the matrix
- [MODCLUSTER-631] - Maven pushes only one tomcat distribution archive on deploy
- [MODCLUSTER-646] - Remove deprecation compiler warnings for MCMPHandler#addProxy(java.net.InetSocketAddress) usage
- [MODCLUSTER-649] - Support JDK11 build build 11-ea+3
- [MODCLUSTER-650] - Travis CI: Expand build matrix to JDK10 and JDK11
- [MODCLUSTER-652] - Documentation 2.0: living docs
- [MODCLUSTER-654] - Documentation 2.0: remove documentation sources from the main repository
- [MODCLUSTER-656] - Remove *-javadoc.jar from distribution profiles
- [MODCLUSTER-661] - Define license in pom.xml
- [MODCLUSTER-671] - Drop support for JDKs prior to 8
- [MODCLUSTER-674] - Contributor Code of Conduct
- [MODCLUSTER-683] - CI: Support JDK12 and JDK13
- [MODCLUSTER-686] - Change use of HTTP download locations to HTTPS
- [MODCLUSTER-687] - Ban non-https repositories
- [MODCLUSTER-688] - Integrate Maven Wrapper
- [MODCLUSTER-689] - Reproducible containerized builds
- [MODCLUSTER-704] - Setup dependabot on master branch
- [MODCLUSTER-716] - Refactor core and SPI modules in preparation for Servlet 5.0
- [MODCLUSTER-727] - Drop support for Tomcat 8.0
- [MODCLUSTER-729] - CI: migrate container integration to use GitHub Workflow
- [MODCLUSTER-735] - Drop support for Tomcat 7.0
- [MODCLUSTER-738] - Remove service loader mechanism which was in place to support code sharing between Tomcat modules
- [MODCLUSTER-740] - Switch build to require JDK 11 and compile into 1.8 target
- [MODCLUSTER-742] - CI: Build using JDK 11 but test with a set of supported JDKs
- [MODCLUSTER-745] - CI: Optionally test building with JDK 17 as well
Component Upgrade
- [MODCLUSTER-517] - Upgrade jboss-parent to 21
- [MODCLUSTER-520] - Upgrade jboss-logging/tools to 3.3.0.Final and 2.0.1.Final respectively
- [MODCLUSTER-560] - Upgrade mockito to 2.5.2
- [MODCLUSTER-561] - Upgrade maven-war-plugin to version compatible with JDK 9-ea+149 and higher
- [MODCLUSTER-586] - Upgrade jboss-parent to 22
- [MODCLUSTER-597] - Upgrade jboss-parent to 24 (to support jdk-9+175)
- [MODCLUSTER-598] - Include building the distribution profile in CI
- [MODCLUSTER-604] - Upgrade jboss-logging to 3.3.1.Final
- [MODCLUSTER-605] - Upgrade jboss-logging-processor to 2.0.2.Final
- [MODCLUSTER-629] - Upgrade jboss-parent to 25
- [MODCLUSTER-630] - Upgrade junit to 4.12
- [MODCLUSTER-647] - Upgrade jboss-logging-processor to 2.1.0.Final
- [MODCLUSTER-648] - Upgrade jboss-logging to 3.3.2.Final
- [MODCLUSTER-651] - Upgrade jboss-parent to 26
- [MODCLUSTER-659] - Upgrade jboss-parent to 28
- [MODCLUSTER-664] - Upgrade org.apache.httpcomponents:httpclient to 4.3.6
- [MODCLUSTER-677] - Upgrade com.puppycrawl.tools:checkstyle to version 8.18 or later
- [MODCLUSTER-678] - Upgrade org.wildfly.checkstyle-config to 1.0.7.Final
- [MODCLUSTER-685] - Upgrade jboss-parent to 34
- [MODCLUSTER-691] - Upgrade jboss-logging to 3.4.0.Final
- [MODCLUSTER-692] - Upgrade jboss-logging-processor to 2.2.0.Final
- [MODCLUSTER-693] - Upgrade jboss-parent to 35
- [MODCLUSTER-705] - Bump mockito-core from 2.5.2 to 3.2.0
- [MODCLUSTER-706] - Bump httpclient from 4.3.6 to 4.5.10
- [MODCLUSTER-707] - Bump jboss-parent from 35 to 36
- [MODCLUSTER-708] - Upgrade Maven Checkstyle Plugin to 3.1.0
- [MODCLUSTER-709] - Bump junit from 4.12 to 4.13
- [MODCLUSTER-710] - Bump mockito-core from 3.2.0 to 3.2.4
Enhancement
- [MODCLUSTER-528] - Re-think catalina/tomcat dependencies so as it is possible to build without tomcat7 API