From a2ca3bd78fc002dd1e6533c191e44092cc3aa949 Mon Sep 17 00:00:00 2001 From: Erlang/OTP Date: Mon, 10 Dec 2018 11:07:05 +0100 Subject: Prepare release --- erts/doc/src/notes.xml | 195 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 195 insertions(+) (limited to 'erts/doc/src/notes.xml') diff --git a/erts/doc/src/notes.xml b/erts/doc/src/notes.xml index 2a823d9fe7..a34b3edd7a 100644 --- a/erts/doc/src/notes.xml +++ b/erts/doc/src/notes.xml @@ -31,6 +31,201 @@

This document describes the changes made to the ERTS application.

+
Erts 10.2 + +
Fixed Bugs and Malfunctions + + +

+ When a process was waiting for a TCP socket send + operation to complete, and another process closed the + socket during that send, the sending process could hang. + This bug has now been corrected.

+

+ Own Id: OTP-12242 Aux Id: ERL-561

+
+ +

+ Document bit_size in match specifications and + allow it in ets:fun2ms.

+

+ Own Id: OTP-15343 Aux Id: PR-1962

+
+ +

+ Fixed bug in ets:select_replace when called with a + fully bound key could cause a following call to + ets:next or ets:prev to crash the emulator + or return invalid result.

+

+ Own Id: OTP-15346

+
+ +

When a module has been purged from memory, any + literals belonging to that module will be copied to all + processes that hold references to them. The max heap size + limit would be ignored in the garbage collection + initiated when copying literals to a process. If the max + heap size was exceeded, the process would typically be + terminated in the following garbage collection. Corrected + to terminate the process directly if copying a literal + would exceed the max heap size.

+

+ Own Id: OTP-15360

+
+ +

+ Fix compilation of run_erl on Solaris 11.4 and later.

+

+ Own Id: OTP-15389

+
+ +

Fixed a bug where lists:reverse/1-2 could use + far too many reductions. This bug was introduced in + OTP 21.1.

+

+ Own Id: OTP-15436

+
+ +

Fixed a bug where a dirty scheduler could stay awake + forever if a distribution entry was removed as part of a + dirty GC.

+

+ Own Id: OTP-15446 Aux Id: PR-2024

+
+ +

+ Fix microstate accounting handing in various places. Most + importantly the GC states when the GC is run on a dirty + scheduler are now managed correctly.

+

+ Own Id: OTP-15450 Aux Id: ERIERL-229

+
+ +

+ Fixed bug in file:sendfile when the send operation + failed. For sockets in active modes it could cause + emulator crash or a hanging call. For sockets with + {active,false} an unexpected {inet_reply, _, + _} message could be sent to the calling process. The + bug exists since OTP-21.0.

+

+ Own Id: OTP-15461 Aux Id: ERL-784

+
+ +

+ The erts configure script has been updated to reject any + CFLAGS that does not have -O. This in order to + prevent the common mistake of forgetting to add + -O2 to custom CFLAGS.

+

+ Own Id: OTP-15465

+
+ +

+ Fix reduction count in lists:member/2

+

+ Own Id: OTP-15474 Aux Id: ERIERL-229

+
+
+
+ + +
Improvements and New Features + + +

+ New counters and atomics modules supplies + access to highly efficient operations on mutable fixed + word sized variables.

+

+ Own Id: OTP-13468

+
+ +

There is a new module persistent_term that + implements a term storage suitable for terms that are + frequently used but never or infrequently updated. + Lookups are done in constant time without copying the + terms.

+

+ Own Id: OTP-14669 Aux Id: PR-1989

+
+ +

+ A function inet:getifaddrs/1 that takes a list + with a namespace option has been added, for platforms + that support that feature, for example Linux (only?).

+

+ Own Id: OTP-15121 Aux Id: ERIERL-189, PR-1974

+
+ +

Added the nopush option for TCP sockets, which + corresponds to TCP_NOPUSH on *BSD and + TCP_CORK on Linux.

+

This is also used internally in file:sendfile + to reduce latency on subsequent send operations.

+

+ Own Id: OTP-15357 Aux Id: ERL-698

+
+ +

List subtraction (The -- operator) will now + yield properly on large inputs.

+

+ Own Id: OTP-15371

+
+ +

+ Optimize handling of send_delay for tcp sockes to better + work with the new pollthread implementation introduced in + OTP-21.

+

+ Own Id: OTP-15471 Aux Id: ERIERL-229

+
+ +

+ Optimize driver_set_timer with a zero timeout to + short-circuit and not create any timer structure, but + instead schedule the timer immediately.

+

+ Own Id: OTP-15472 Aux Id: ERIERL-229

+
+ +

+ Add erl_xcomp_code_model_small as a cross + configure variable in order to let the emulator be build + with the assumption that a small code model will be used + on the target machine.

+

+ Own Id: OTP-15473 Aux Id: ERIERL-229

+
+ +

+ Add a new pollset that is made to handle sockets that use + {active, true} or {active, N}. The new + pollset will not be polled by a pollthread, but instead + polled by a normal scheduler.

+

+ This change was made because of the overhead associated + with constantly having to re-apply the ONESHOT mechanism + on fds that all input events were interesting.

+

+ The new pollset is only active on platforms that support + concurrent kernel poll updates, i.e. Linux and BSD.

+

+ Own Id: OTP-15475 Aux Id: ERIERL-229

+
+ +

+ Fix bug where emulator would segfault if a literal + message was sent when sequence tracing was enabled.

+

+ Own Id: OTP-15478 Aux Id: ERL-741

+
+
+
+ +
+
Erts 10.1.3
Improvements and New Features -- cgit v1.2.3