From 745b99ab510ed85ce7ff4b77c83f6c501b24c5cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn-Egil=20Dahlberg?= Date: Fri, 19 Feb 2010 11:39:38 +0000 Subject: Update release notes --- erts/doc/src/notes.xml | 417 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 417 insertions(+) (limited to 'erts') diff --git a/erts/doc/src/notes.xml b/erts/doc/src/notes.xml index 70f2d95103..65b836fc45 100644 --- a/erts/doc/src/notes.xml +++ b/erts/doc/src/notes.xml @@ -30,6 +30,423 @@

This document describes the changes made to the ERTS application.

+
Erts 5.7.5 + +
Fixed Bugs and Malfunctions + + +

+ Fix binary_to_term crash on compressed term with + corrupt size field.

+

+ Own Id: OTP-8336

+
+ +

+ Processes and/or ports could get stuck on a blocked + scheduler when erlang:system_flag(multi_scheduling, + block) was used.

+

+ Processes and/or ports could get stuck on an offline + scheduler when schedulers online were reduced using + erlang:system_flag(schedulers_online, + SchedulersOnline).

+

+ Own Id: OTP-8342

+
+ +

Building on Windows will now work if the paths to + mc.exe and rc.exe contain spaces. The + README.win32 file has been updated with some information + about building using Visual Studio 2008. (Thanks to + Andrew Thompson.)

+

+ Own Id: OTP-8345

+
+ +

+ EPMD now correctly handles the extra data field which can + be given in the ALIVE2_REQ request and retrieved in the + PORT2_RESP response. (Thanks to Klas Johansson.)

+

+ Own Id: OTP-8361

+
+ +

+ The configure test for reliable floating point exceptions + has been update to work on modern versions of Mac OS X. + (Thanks to Trannie Carter.)

+

+ Own Id: OTP-8368

+
+ +

+ ERTS makefiles used to detect the use of a gcc C compiler + by checking if CC equaled gcc. That is, the makefiles + failed to detect gcc C compilers with other command line + names than gcc. `configure' now substitute GCC into the + makefiles. If CC is a gcc C compiler, GCC will have the + value yes. (Thanks to Jean-Sébastien Pédron)

+

+ Own Id: OTP-8373

+
+ +

+ ETS bug causing the memory counter from + ets:info for ordered_set's to sometimes get out of + synch and absurdly high.

+

+ Own Id: OTP-8377 Aux Id: seq11442

+
+ +

+ Immediately repeated multi-scheduling block/unblock + cycles using erlang:system_flag(multi_scheduling, + block | unblock) could deadlock the runtime system.

+

+ Own Id: OTP-8386

+
+ +

A number of bugs concerning re and unicode are + corrected:

+

re:compile no longer looses unicode option, which also + fixes bug in re:split.

+

re:replace now handles unicode charlist replacement + argument

+

re:replace now handles unicode RE charlist argument + correctly

+

re:replace now handles binary unicode output correctly + when nothing is replaced.

+

Most code, testcases and error isolation done by Rory + Byrne.

+

+ Own Id: OTP-8394

+
+ +

+ The loading of native code was not properly atomic in the + SMP emulator, which could cause crashes. Also a per-MFA + information table for the native code has now been + protected with a lock since it turns that it could be + accessed concurrently in the SMP emulator. (Thanks to + Mikael Pettersson.)

+

+ Own Id: OTP-8397

+
+ +

+ Fix processes in exiting status that are about to be + scheduled, to not be allowed to garbage collect.

+

+ Own Id: OTP-8420

+
+ +

Removed bogus "\011" character sequence in + documentation.

+

+ Own Id: OTP-8422

+
+ +

+ The resolver routines failed to look up the own node name + as hostname, if the OS native resolver was erroneously + configured, bug reported by Yogish Baliga, now fixed.

+

+ The resolver routines now tries to parse the hostname as + an IP string as most OS resolvers do, unless the native + resolver is used.

+

+ The DNS resolver inet_res and file resolver inet_hosts + now do not read OS configuration files until they are + needed. Since the native resolver is default, in most + cases they are never needed.

+

+ The DNS resolver's automatic updating of OS configuration + file data (/etc/resolv.conf) now uses the 'domain' + keyword as default search domain if there is no 'search' + keyword.

+

+ Own Id: OTP-8426 Aux Id: OTP-8381

+
+ +

+ The re module: A regular expression with an option change + at the start of a pattern that had top-level alternatives + could cause overwriting and/or a crash. (Thanks to + Michael Santos.)

+

+ Own Id: OTP-8438

+
+ +

+ Harmless buffer overflow by one byte in asn1 and + ram_file_drv.

+

+ Own Id: OTP-8451

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

+ Improved GC performance after BIF/NIF call when a lot of + heap fragments was created. This will mainly benefit NIFs + that return large compound terms.

+

+ Own Id: OTP-8240

+
+ +

Incompatible changes in the experimental NIF + feature.

Changed the NIF function + prototypes in order to allow more than 3 function + arguments. enif_get_data renamed as + enif_priv_data. + enif_make_string got a third argument for + character encoding. The return value of + erlang:load_nif/2 on error changed. +

Read more in the documentation of erl_nif and + erlang:load_nif/2

. +

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-8304

+
+ +

Cross compilation improvements and other build system + improvements.

+

Most notable:

Lots of cross + compilation improvements. The old cross compilation + support was more or less non-existing as well as broken. + Please, note that the cross compilation support should + still be considered as experimental. Also note that old + cross compilation configurations cannot be used without + modifications. For more information on cross compiling + Erlang/OTP see the $ERL_TOP/INSTALL-CROSS.md file. + Support for staged install using DESTDIR. + The old broken INSTALL_PREFIX has also been fixed. + For more information see the $ERL_TOP/INSTALL.md + file. Documentation of the release + target of the top Makefile. For more information + see the $ERL_TOP/INSTALL.md file. + make install now by default creates relative + symbolic links instead of absolute ones. For more + information see the $ERL_TOP/INSTALL.md file. + $ERL_TOP/configure --help=recursive + now works and prints help for all applications with + configure scripts. Doing make + install, or make release directly after + make all no longer triggers miscellaneous + rebuilds. Existing bootstrap system is now + used when doing make install, or make + release without a preceding make all. + The crypto and ssl + applications use the same runtime library path when + dynamically linking against libssl.so and + libcrypto.so. The runtime library search path has + also been extended. The configure + scripts of erl_interface and odbc now + search for thread libraries and thread library quirks the + same way as erts do. The + configure script of the odbc application + now also looks for odbc libraries in lib64 and + lib/64 directories when building on a 64-bit + system. The config.h.in file in the + erl_interface application is now automatically + generated in instead of statically updated which reduces + the risk of configure tests without any effect. + +

(Thanks to Henrik Riomar for suggestions and + testing)

+

(Thanks to Winston Smith for the AVR32-Linux cross + configuration and testing)

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-8323

+
+ +

NIF improvements:

Driver API for + multi-threading made available for NIFs. + Support for mempory managed (garbage collected) resource + objects. A way to pass "pointers" to native data + structures between C and Erlang in a safe way. + Support for references, floats and term + comparison. Various new functions, like + enif_inspect_iolist_as_binary, + enif_make_sub_binary, enif_get_string, + enif_get_atom, enif_make_tuple_from_array, + enif_make_list_from_array, + enif_make_existing_atom. +

+ Own Id: OTP-8335

+
+ +

+ Minor alignment adjustments of scheduler specific data.

+

+ Own Id: OTP-8341

+
+ +

The documentation is now possible to build in an open + source environment after a number of bugs are fixed and + some features are added in the documentation build + process.

+

- The arity calculation is updated.

+

- The module prefix used in the function names for + bif's are removed in the generated links so the links + will look like + "http://www.erlang.org/doc/man/erlang.html#append_element-2" + instead of + "http://www.erlang.org/doc/man/erlang.html#erlang:append_element-2".

+

- Enhanced the menu positioning in the html + documentation when a new page is loaded.

+

- A number of corrections in the generation of man + pages (thanks to Sergei Golovan)

+

- The legal notice is taken from the xml book file so + OTP's build process can be used for non OTP + applications.

+

+ Own Id: OTP-8343

+
+ +

+ There is new erlang:binary_to_term/2 BIF that + takes an option list. The option safe can be used + to prevent creation of resources that are not garbage + collected (such as atoms). (Thanks to Jayson Vantuyl.)

+

+ Own Id: OTP-8367

+
+ +

+ The default settings for garbage collection of binaries + has been adjusted to be less aggressive than in R13B03. + It is now also possible configure the settings for binary + GC. See the documentation for spawn_opt/2-5, + erlang:system_info/1, erlang:system_flag/2, + process_flag/2-3, erlang:trace/3, and the + documenation for erl for the new command line + options +hms and +hmbs.

+

+ Own Id: OTP-8370

+
+ +

+ A bug causing memory corruption in re:run() has been + corrected. (Thanks to Yamashina Hio.)

+

+ Own Id: OTP-8375

+
+ +

+ The -Werror option for erlc and the + compiler option warnings_as_errors will cause + warnings to be treated as errors. (Thanks to Christopher + Faulet.)

+

+ Own Id: OTP-8382

+
+ +

+ Explicit top directories in archive files are now + optional.

+

+ For example, if an archive (app-vsn.ez) just contains an + app-vsn/ebin/mod.beam file, the file info for the app-vsn + and app-vsn/ebin directories are faked using the file + info from the archive file as origin. The virtual + direcories can also be listed. For short, the top + directories are virtual if they does not exist.

+

+ Own Id: OTP-8387

+
+ +

+ An unnecessary lock operation in os:timestamp/0 has been + eliminated, making it slightly more efficient. (Thanks to + Jonas Falkevik and Tuncer Ayaz.)

+

+ Own Id: OTP-8390

+
+ +

+ There is a new +t emulator option for changing the + maximum number of atoms. (Thanks to Julien Barbot.)

+

+ Own Id: OTP-8405

+
+ +

+ Fixed numerous compiler warnings generated by gcc 4.4.1 + and tile-cc 2.0.1.78377 when compiling the runtime + system.

+

+ Own Id: OTP-8412

+
+ +

+ configure learned the option + --enable-m32-build to force the building of a + 32-bit run-time on systems where the default C compiler + generates 64-bit executables by default.

+

+ Own Id: OTP-8415

+
+ +

+ HiPE now works in the 64-bit emulator on Mac OS X. + (Thanks to Geoff Cant.)

+

+ Own Id: OTP-8416

+
+ +

+ Improved handling of symbolic links to escripts

+

+ Own Id: OTP-8417

+
+ +

+ Add lock profiling tool.

+

+ The Lock profiling tool, lcnt, can make use of the + internal lock statistics when the runtime system is built + with this feature enabled.

+

+ This provides a mechanism to examine potential lock + bottlenecks within the runtime itself.

+

+ - Add erts_debug:lock_counters({copy_save, bool()}). This + option enables or disables statistics saving for + destroyed processes and ets-tables. Enabling this might + consume a lot of memory.

+

+ - Add id-numbering for lock classes which is otherwise + undefined.

+

+ Own Id: OTP-8424

+
+ +

+ Removed spurious options to the emulator from escript.

+

+ Own Id: OTP-8427

+
+ +

+ Minor documentation fixes. Mainly anchor adjustments.

+

+ Own Id: OTP-8457

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