Kernel Release Notes
Kernel 2.8.0
Fixed errors and malfunctions
-
A race condition in dist_ac has been removed.
The documentation
didn't clearly state that all distributed applications depend on (at
least) kernel and stdlib (kernel and stdlib should be part of
"applications" in the .app file). This has now been added to the app(4)
manual page.
The following has also been changed in the system
documentation (not shipped with patches): PREVIOUSLY: When distributed
applications are specified, it is advised that the sync_nodes
functionality in the kernel application is used. If not used, and
several nodes are started at the same time, the node that comes up
first will start all applications, and the other nodes will take over
the applications when they come up.
NOW: When distributed
applications are specified, it is required that the sync_nodes
functionality in the kernel application (see kernel(6)) is used to
synchronize all involved nodes. If not used, the distribution mechanism
for distributed applications will not function correctly.
(Own Id: OTP-3509)
(Aux Id: Seq 4408)
-
The spawn bifs didn't fail with badarg as they should if the argument
list wasn't a list; instead, the spawned process immediately exited.
All spawn BIFs now fail with badarg if they are passed a bad argument
as argument list.
spawn BIFs which take funs as arguments and
remote spawn BIFs could fail with other errors than badarg when passed
bad arguments. All spawn BIFs now fail with badarg when they fail due
to bad arguments.
(Own Id: OTP-4185)
-
A bug in
disk_log:unblock/1
that could cause messages to
be processed in wrong order has been fixed. Write errors no longer
terminate the disk log process.
(Own Id: OTP-4191)
-
The application module list is now properly updated after a code
change.
(Own Id: OTP-4342)
-
A deadlock could occur if distributed disk logs were opened
simultaneously on different nodes. This bug has been fixed.
(Own Id: OTP-4405)
(Aux Id: seq7275)
-
os:find_executable/1 would return wrong return values ({ok,Name} or
error) if given an absolute path name instead of the documented values
(Name or false).
(*** POTENTIAL INCOMPATIBILITY ***)
(Own Id: OTP-4476)
Improvements and new features
-
The spawn_opt/[2,3,5] BIFs has been added. That is, spawn_opts that
takes a fun as argument, and spawn_opts that spawn a process on a
remote node.
(Own Id: OTP-4180)
-
The sasl application variable 'log_utc' can be set to 'true' to make
ordinary sasl logs as well as report browser output appear with
Universal Coordinated Time instead of local time.
(Own Id: OTP-4245)
(Aux Id: Seq7242)
-
The set_net_ticktime/[1,2] and get_net_ticktime/0 functions has been
added to the net_kernel module (see net_kernel(3)) which makes it
possible to change the net_tick time during operation.
(Own Id: OTP-4255)
(Aux Id: SEQ-7249)
-
There are new functions
bchunk/2,3
in the
disk_log
module that are to be used like
chunk/2,3
but return objects as binaries.
(Own Id: OTP-4327)
-
The loading of BEAM code at start-up of embedded systems has been
optimized: if the thread pool is non-empty (see the system flag
+A
in erl(3)
) and files are read from a file
system (the default, see the value efile
of the
-loader
flag in erl(3)
) disk seek times have
been reduced.
(Own Id: OTP-4372)
-
There is a new configuration parameter 'shutdown_func' to application
kernel that allows you to register a function to be called when
application_controller shuts down. See the man page for 'kernel'.
(Own Id: OTP-4424)
(Aux Id: seq7520)
-
The module 'erlang' is now preloaded. Customized start scripts have to
be rebuilt.
(*** POTENTIAL INCOMPATIBILITY ***)
(Own Id: OTP-4433)
-
The option
compressed
to file:open/2
has now
been documented.
(Own Id: OTP-4513)
Kernel 2.8.0
Known problems
-
code:is_loaded/1
doesn't type check its arguments.
(Own Id: OTP-2607)
-
If more than 1024 bytes of text are pasted into the shell, and this
text consists of more than one expression sequence (each ending with a
period), text after the first 1024 bytes may be lost.
(Own Id: OTP-3041)
There are also release notes for
older versions.