Erlang/OTP 23.1.1

This release of Erlang/OTP can be built from source or installed using pre-built packages for your OS or third-party tools (such as kerl or asdf).

docker run -it erlang:23.1.1
Patch Package OTP 23.1.1
Git Tag OTP-23.1.1
Date 2020-10-02
Issue Id
ERIERL-532
ERIERL-534
System OTP
Release 23
Application

OTP-23.1.1 #

OTP-16903
Application(s):
otp
Related Id(s):
ERL-1362

Fixed the missing redistribution file in the windows installers.

compiler-7.6.4 #

The compiler-7.6.4 application can be applied independently of other applications on a full OTP 23 installation.

OTP-16895
Application(s):
compiler
Related Id(s):
ERL-1359

Fixed a performance bug that could be triggered by tuple matching in very large functions.

Full runtime dependencies of compiler-7.6.4: crypto-3.6, erts-11.0, hipe-3.12, kernel-7.0, stdlib-3.13

erts-11.1.1 #

The erts-11.1.1 application can be applied independently of other applications on a full OTP 23 installation.

OTP-16847
Application(s):
erts
Related Id(s):
ERL-1301

inet:setopts([{active,once}]) wakes up IO polling thread unnecessarily, leading to lock contention and visibly higher CPU utilization.

OTP-16870
Application(s):
erts

Two bugs in the ERTS internal thread wakeup functionality have been fixed. These bugs mainly hit when all threads in the system tried to go to sleep. When the bugs were triggered, certain operations were delayed until a thread woke up due to some other reason. Most important operations effected were code loading, persistent term updates, and memory deallocation.

OTP-16874
Application(s):
erts
Related Id(s):
ERL-1356 , PR-2763

Fixed bug in ets:select_replace/2 on compressed tables that could produce faulty results or VM crash. Bug exists since OTP 20.

OTP-16892
Application(s):
erts

When compiling Erlang/OTP on macOS using Xcode 12, the performance of the BEAM interpreter would be degraded.

OTP-16856
Application(s):
erts

As of OTP 22, the allocator specific memory carrier pools were replaced by a node global carrier pool. This unfortunately caused substantial memory fragmentation in some cases due to long lived data being spread into carriers used by allocators mainly handling short lived data.

A new command line argument +M<S>cp has been introduced with which one can enable the old behavior as well as configuring other behaviors for the carrier pools. In order to configure the old behavior, with allocator specific carrier pools for all allocators, pass +Mucp : (including the colon character) as a command line argument to erl when starting the Erlang system.

The default configuration for carrier pools will be changed to +Mucp : some time in the future, but not in this patch.

Full runtime dependencies of erts-11.1.1: kernel-7.0, sasl-3.3, stdlib-3.13

os_mon-2.6.1 #

The os_mon-2.6.1 application can be applied independently of other applications on a full OTP 23 installation.

OTP-16906
Application(s):
os_mon
Related Id(s):
ERIERL-532

The configuration parameter memsup_improved_system_memory_data has been introduced. It can be used to modify the result returned by memsup:get_system_memory_data(). For more information see the memsup documentation.

Note that the configuration parameter is intended to be removed in OTP 24 and the modified result is intended to be used as of OTP 24.

Full runtime dependencies of os_mon-2.6.1: erts-6.0, kernel-3.0, sasl-2.4, stdlib-2.0

public_key-1.9.1 #

The public_key-1.9.1 application can be applied independently of other applications on a full OTP 23 installation.

OTP-16902
Application(s):
public_key
Related Id(s):
ERIERL-534

Fix the issue that pem_decode will crash with an invalid input.

Full runtime dependencies of public_key-1.9.1: asn1-3.0, crypto-3.8, erts-6.0, kernel-3.0, stdlib-3.5

ssh-4.10.2 #

The ssh-4.10.2 application can be applied independently of other applications on a full OTP 23 installation.

OTP-16904
Application(s):
ssh

Fix decoder bug.

Full runtime dependencies of ssh-4.10.2: crypto-4.6.4, erts-9.0, kernel-5.3, public_key-1.6.1, stdlib-3.4.1