Erlang/OTP 23.3.4.12

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.3.4.12
Patch Package OTP 23.3.4.12
Git Tag OTP-23.3.4.12
Date 2022-03-24
Issue Id
ERIERL-732
ERIERL-750
ERIERL-757
ERIERL-780
System OTP
Release 23
Application

Highlights #

OTP-17843
Application(s):
erts, kernel
Related Id(s):
ERIERL-732 , PR-5611

By default global does not take any actions to restore a fully connected network when connections are lost due to network issues. This is problematic for all applications expecting a fully connected network to be provided, such as for example mnesia, but also for global itself. A network of overlapping partitions might cause the internal state of global to become inconsistent. Such an inconsistency can remain even after such partitions have been brought together to form a fully connected network again. The effect on other applications that expects that a fully connected network is maintained may vary, but they might misbehave in very subtle hard to detect ways during such a partitioning.

In order to prevent such issues, we have introduced a prevent overlapping partitions fix which can be enabled using the prevent_overlapping_partitions kernel(6) parameter. When this fix has been enabled, global will actively disconnect from nodes that reports that they have lost connections to other nodes. This will cause fully connected partitions to form instead of leaving the network in a state with overlapping partitions. Note that this fix has to be enabled on all nodes in the network in order to work properly. Since this quite substantially changes the behavior, this fix is currently disabled by default. Since you might get hard to detect issues without this fix you are, however, strongly advised to enable this fix in order to avoid issues such as the ones described above. As of OTP 25 this fix will become enabled by default.

common_test-1.20.2.3 #

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

OTP-17888
Application(s):
common_test

OTP internal test fix.

Full runtime dependencies of common_test-1.20.2.3: compiler-6.0, crypto-3.6, debugger-4.1, erts-7.0, ftp-1.0.0, inets-6.0, kernel-4.0, observer-2.1, runtime_tools-1.8.16, sasl-2.4.2, snmp-5.1.2, ssh-4.0, stdlib-3.5, syntax_tools-1.7, tools-2.8, xmerl-1.3.8

erts-11.2.2.11 #

Note! The erts-11.2.2.11 application *cannot* be applied independently of other applications on an arbitrary OTP 23 installation. On a full OTP 23 installation, also the following runtime dependency has to be satisfied: -- kernel-7.3.1.5 (first satisfied in OTP 23.3.4.12)

OTP-17843
Application(s):
erts, kernel
Related Id(s):
ERIERL-732 , PR-5611

*** HIGHLIGHT ***

By default global does not take any actions to restore a fully connected network when connections are lost due to network issues. This is problematic for all applications expecting a fully connected network to be provided, such as for example mnesia, but also for global itself. A network of overlapping partitions might cause the internal state of global to become inconsistent. Such an inconsistency can remain even after such partitions have been brought together to form a fully connected network again. The effect on other applications that expects that a fully connected network is maintained may vary, but they might misbehave in very subtle hard to detect ways during such a partitioning.

In order to prevent such issues, we have introduced a prevent overlapping partitions fix which can be enabled using the prevent_overlapping_partitions kernel(6) parameter. When this fix has been enabled, global will actively disconnect from nodes that reports that they have lost connections to other nodes. This will cause fully connected partitions to form instead of leaving the network in a state with overlapping partitions. Note that this fix has to be enabled on all nodes in the network in order to work properly. Since this quite substantially changes the behavior, this fix is currently disabled by default. Since you might get hard to detect issues without this fix you are, however, strongly advised to enable this fix in order to avoid issues such as the ones described above. As of OTP 25 this fix will become enabled by default.

OTP-17904
Application(s):
erts
Related Id(s):
ERIERL-757

Fix memory leak when tracing on running on a process that only handle system tasks or non-message signals (for example process_info requests).

Full runtime dependencies of erts-11.2.2.11: kernel-7.3.1.5, sasl-3.3, stdlib-3.13

jinterface-1.11.1.1 #

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

OTP-17887
Application(s):
jinterface
Related Id(s):
ERIERL-750 , PR-5640

Fix bug in OtpOutputStream.write_pid/4 and write_ref/3 causing faulty encodig. Bug exists since OTP 23.0.

kernel-7.3.1.5 #

Note! The kernel-7.3.1.5 application *cannot* be applied independently of other applications on an arbitrary OTP 23 installation. On a full OTP 23 installation, also the following runtime dependency has to be satisfied: -- erts-11.2.2.11 (first satisfied in OTP 23.3.4.12)

OTP-17843
Application(s):
erts, kernel
Related Id(s):
ERIERL-732 , PR-5611

*** HIGHLIGHT ***

By default global does not take any actions to restore a fully connected network when connections are lost due to network issues. This is problematic for all applications expecting a fully connected network to be provided, such as for example mnesia, but also for global itself. A network of overlapping partitions might cause the internal state of global to become inconsistent. Such an inconsistency can remain even after such partitions have been brought together to form a fully connected network again. The effect on other applications that expects that a fully connected network is maintained may vary, but they might misbehave in very subtle hard to detect ways during such a partitioning.

In order to prevent such issues, we have introduced a prevent overlapping partitions fix which can be enabled using the prevent_overlapping_partitions kernel(6) parameter. When this fix has been enabled, global will actively disconnect from nodes that reports that they have lost connections to other nodes. This will cause fully connected partitions to form instead of leaving the network in a state with overlapping partitions. Note that this fix has to be enabled on all nodes in the network in order to work properly. Since this quite substantially changes the behavior, this fix is currently disabled by default. Since you might get hard to detect issues without this fix you are, however, strongly advised to enable this fix in order to avoid issues such as the ones described above. As of OTP 25 this fix will become enabled by default.

OTP-17979
Application(s):
kernel
Related Id(s):
ERIERL-780

Fix failed accepted connection setup after previous established connection from same node closed down silently.

OTP-17905
Application(s):
kernel
Related Id(s):
ERIERL-732 , PR-5740

A net_tickintensity kernel parameter has been introduced. It can be used to control the amount of ticks during a net_ticktime period.

A new net_kernel:start/2 function has also been introduced in order to make it easier to add new options. The use of net_kernel:start/1 has been deprecated.

Full runtime dependencies of kernel-7.3.1.5: erts-11.2.2.11, sasl-3.0, stdlib-3.13