The Lagom team has released Lagom 1.4.4.
(we are skipping 1.4.3 due to a small mistake in the release process)
This release provides a fix for #1250.
#1250 only affects Lagom projects making usage of JDBC persistence layer, being it for the journal and/or for read-side tables.
Dependencies upgrades
- Slick 3.2.1 -> 3.2.3
- akka-persistence-jdbc 3.1.0 -> 3.3.0
Slick 3.2.3 special note
Since Slick 3.2.2, the maxConnections
must equal numThreads
. This is to prevent some situations where a deadlock could occur. A warning will be emitted in case maxConnections > numThreads
and a runtime exception will be thrown if maxConnections < numThreads
. Therefore the best possible configuration is maxConnections == numThreads
. See slick/slick#1855 for detailed information.
These values are configured by Lagom automatically under the configuration key db.default.async-executor
.
db.default {
async-executor {
# number of objects that can be queued by the async executor
queueSize = 10000
# 5 * number of cores
numThreads = 20
# same as number of threads
minConnections = 20
# same as number of threads
maxConnections = 20
}
}
If you haven’t changed the settings for your async-executor
, you have nothing to do. However, if you have configured your aync-executor
with other values, you should review it and make sure that maxThreads == maxConnections
.
See GitHub for the full list of commits and the issues and pull requests assigned to the 1.4.4 milestone.
Credits
Thanks to the community for their detailed bug reports and contributions.
Thanks to Lightbend for their continued sponsorship of the Lagom core team’s efforts. Lightbend offers commercial support for Lagom.