From 05f11890bdfec4bfc3a78e191a87e70a937ffc54 Mon Sep 17 00:00:00 2001 From: Erlang/OTP Date: Mon, 25 Feb 2013 19:23:54 +0100 Subject: Prepare release --- erts/doc/src/notes.xml | 329 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 329 insertions(+) (limited to 'erts/doc') diff --git a/erts/doc/src/notes.xml b/erts/doc/src/notes.xml index 0363f0237e..7fc61517a8 100644 --- a/erts/doc/src/notes.xml +++ b/erts/doc/src/notes.xml @@ -30,6 +30,335 @@

This document describes the changes made to the ERTS application.

+
Erts 5.10.1 + +
Fixed Bugs and Malfunctions + + +

+ Threads created internally in the runtime system by + vanilla, fd, and spawn drivers on Windows systems could + make thread unsafe calls to driver_select().

+

+ Own Id: OTP-10802

+
+ +

+ Threads created internally in the runtime system by the + vanilla, fd, and spawn drivers on Windows systems could + make unsafe memory accesses to driver data after port had + terminated.

+

+ Own Id: OTP-10803

+
+ +

+ The runtime system could crash when flushing data to + standard out or standard error on Windows.

+

+ Own Id: OTP-10807

+
+ +

Bugs due to the port optimizations introduced in + erts-5.10/OTP-R16A have been fixed:

+ Memory leak when terminating ports + Memory leak when reaching the system limit of + maximum amount of concurrently existing ports + Crashs due to missing, or late test of bad port + handle The newly introduced driver API + function erl_drv_busy_msgq_limits() could not be + used by dynamically linked in drivers on Windows + +

+ Own Id: OTP-10809 Aux Id: OTP-10336

+
+ +

+ Fix {packet,httph} header capitalization for + unrecognized header fields longer than 20 charachters + such as Sec-Websocket-Version. The limit is simply + raised from 20 to 50 characters with the hope that valid + headers longer than 50 are not used.

+

+ Own Id: OTP-10824

+
+ +

+ Fix rounding issues in float_to_list/1,2. Thanks to Serge + Aleynikov

+

+ Own Id: OTP-10837

+
+ +

+ Fix memory leak in file driver introduced in R16A.

+

+ Own Id: OTP-10841

+
+ +

A bug in an ERTS internal queue implementation could + cause the loss of a wake up signal to a consumer thread. + This has now been fixed.

+

The effect of this bug, when triggered, was often only + a small or even no delay of certain operations. This + since, threads often are woken due to other unrelated + reasons. However, if the consumer thread was not woken + due to other reasons when the bug was triggered, these + operations could be left hanging, potentially for ever. + Such effects seems to have been very rare, but we have on + at least one occasion gotten a report about such an + issue.

+

Operations potentially effected by this bug:

+ Inspection of memory allocation + status The Erlang process calling + erlang:memory/[0,1], or + erlang:system_info({allocator|allocator_sizes, _}) + could potentially hang waiting for responses from + involved threads. Async thread pool + jobs An async thread pool job request and/or + reply could potentially be left hanging. In OTP this only + effected file operations, but user implemented drivers + using the async thread pool were also effected. In the + file operation case, this would typically translate into + an Erlang process potentially hanging on the file + operation. Shutting down the runtime + system Due to the issue with the async thread + pool mentioned above, flushing of I/O while terminating + the runtime system could also potentially hang. + ETS memory deallocation Scheduled jobs + handling deallocation of the main structure of an ETS + table could potentially hang. This more or less only + translates into minor memory leaks. Shutting + down distribution The distribution shutdown + phase used when manually shutting down the distribution, + i.e., when calling net_kernel:stop(), could + potentially hang. +

+ Own Id: OTP-10854

+
+ +

+ OS X Snow Leopard now only uses write, as writev does not + work properly on very large files.

+

+ Own Id: OTP-10858

+
+ +

+ Fixed a bug where line oriented file I/O using read_ahead + was very slow for files with very large difference in + line length.

+

+ Own Id: OTP-10859

+
+ +

+ In erts-5.10 (R16A) faulty hashvalues were produced for + non-ASCII atoms (characters in byte-range 128..255). This + has now been fixed and hashvalues conforms to previous + OTP releases.

+

+ Own Id: OTP-10860

+
+ +

+ Fixes of memory accesses that might be thread unsafe when + the runtime system has been linked against third-party + libraries for atomic memory operations during the build. + Most builds are uneffected by this bug. If triggered, the + runtime system will most likely crash more or less + immediately.

+

+ Own Id: OTP-10875 Aux Id: OTP-10854

+
+ +

+ Fixed a bug where it was longer possible to give the +sws + proposal flag to non-smp emulators.

+

+ Own Id: OTP-10881 Aux Id: seq12258

+
+ +

+ Faulty type to bytes read for ReadFile on Windows. This + could cause windows systems to misbehave. The correct + type is now used.

+

+ Own Id: OTP-10890

+
+ +

+ Change default max ports for Windows to 8192. Having a + too large value caused Windows to not be able to recover + properly. If you want to use another value, pass +Q + Value to erl or werl.

+

+ Own Id: OTP-10892

+
+ +

+ Fix rare crash on halfword vm during code loading.

+

+ Own Id: OTP-10896

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

+ Tuple funs (deprecated in R15B) are no longer supported.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-10170

+
+ +

+ Added four new bifs, erlang:binary_to_integer/1,2, + erlang:integer_to_binary/1, + erlang:binary_to_float/1 and + erlang:float_to_binary/1,2. These bifs work + similarly to how their list counterparts work, except + they operate on binaries. In most cases converting from + and to binaries is faster than converting from and to + lists.

+

+ These bifs are auto-imported into erlang source files and + can therefore be used without the erlang prefix.

+

+ Own Id: OTP-10300 Aux Id: kunagi-74 [74]

+
+ +

+ The experimental support for packages has been removed.

+

+ Own Id: OTP-10348 Aux Id: kunagi-316 [227]

+
+ +

The driver API function erl_drv_consume_timeslice(), + and the NIF API function enif_consume_timeslice() + have been introduced.

+

These functions are provided in order to better + support co-operative scheduling, improve system + responsiveness, and to make it easier to prevent + misbehaviors of the VM due to a process or port + monopolizing a scheduler thread. They can be used when + dividing lengthy work into a number of repeated calls + without the need to use threads.

+

+ Own Id: OTP-10810

+
+ +

+ The list_to_integer/2 bif has been optimized when used + with bases other than 10.

+

+ Own Id: OTP-10834 Aux Id: kunagi-74 [74]

+
+ +

+ The git commit sha of the HEAD commit is now added to the + Erlang shell when compiling a non-released Erlang + version.

+

+ Own Id: OTP-10838

+
+ +

Change caching policy for memory segment allocator. + For instance, prefer sbc segments over mbc segments, + caching policy is time-arrow aware, evicting older cached + segments to store newer segments.

The default + number of cachable segment has been increased from five + to ten segments. This can be modified, same as before, + with the command line option +MMmcs 5

+

Impact: Increased speed for processing on larger + objects, e.g. binaries. Slight increase of mapped and + resident memory. Tune your system with memory options to + erl for best performance.

+

+ Own Id: OTP-10840

+
+ +

+ Updated config.sub and config.guess to latest version + from gnu.org

+

+ Own Id: OTP-10848

+
+ +

+ Add an xcomp file for Blue Gene/Q. Thanks to Kostis + Sagonas.

+

+ Own Id: OTP-10849

+
+ +

+ Cleanup of documentation of the type language. Thanks to + Kostis Sagonas.

+

+ Own Id: OTP-10850

+
+ +

+ Change the return value of hipe_bifs:remove_refs_from/1. + Thanks to Kostis Sagonas.

+

+ Own Id: OTP-10851

+
+ +

+ As of ERTS-5.10/OTP-R16A node names passed in the EPMD + protocol are required to be encoded in UTF-8. Since EPMD + previously accepted latin1 encoded node names this is an + incompatibility. However, since Erlang nodes always have + required characters in node names to be 7-bit ASCII + characters (and still do require this), this + incompatibility should not effect anyone using EPMD as an + Erlang Port Mapper Daemon.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-10872 Aux Id: OTP-10753

+
+ +

+ The +pc flag to erl can be used to set the range of + characters considered printable. This affects how the + shell and io:format("~tp",...) functionality does + heuristic string detection. More can be read in STDLIB + users guide.

+

+ Own Id: OTP-10884

+
+ +

+ Fix a number of type cast errors related to formatted + printing on Win64 that can potentially cause problem when + the Erlang VM exceeds 4 GB of ram. (Thanks to Blaine + Whittle for the original patch)

+

+ Own Id: OTP-10887

+
+ +

+ The effect of the deprecated environment variable + ERL_MAX_PORTS had been removed premeturely. It has now + been readded. Note that this is still scheduled to be + released in R17B.

+

+ Own Id: OTP-10895

+
+
+
+ +
+
Erts 5.10
Fixed Bugs and Malfunctions -- cgit v1.2.3