Erlang/OTP 21.3.8.21

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:21.3.8.21
Patch Package OTP 21.3.8.21
Git Tag OTP-21.3.8.21
Date 2021-02-19
Issue Id
System OTP
Release 21
Application

OTP-21.3.8.21 #

OTP-16779
Application(s):
otp
Related Id(s):
ERL-1305 , PR-2700

Changes in build system to make it build for macOS 11.0 with Apple Silicon. Also corrected execution of match specs to work on Apple Silicon.

erts-10.3.5.16 #

Note! The erts-10.3.5.16 application *cannot* be applied independently of other applications on an arbitrary OTP 21 installation. On a full OTP 21 installation, also the following runtime dependencies have to be satisfied: -- kernel-6.1 (first satisfied in OTP 21.1) -- sasl-3.3 (first satisfied in OTP 21.2)

OTP-17185
Application(s):
erts

Fixed a bug that could cause some work scheduled for execution on scheduler threads to be delayed until other similar work appeared. Beside delaying various cleanup of internal data structures also the following could be delayed:

-- Termination of a distribution controller process

-- Disabling of the distribution on a node

-- Gathering of memory allocator information using the instrument module

-- Enabling, disabling, and gathering of msacc information

-- Delivery of 'CHANGE' messages when time offset is monitored

-- A call to erlang:cancel_timer()

-- A call to erlang:read_timer()

-- A call to erlang:statistics(io | garbage_collection | scheduler_wall_time)

-- A call to ets:all()

-- A call to erlang:memory()

-- A call to erlang:system_info({allocator | allocator_sizes, _})

-- A call to erlang:trace_delivered()

The bug existed on runtime systems running on all types of hardware except for x86/x86_64.

Full runtime dependencies of erts-10.3.5.16: kernel-6.1, sasl-3.3, stdlib-3.5