Age | Commit message (Collapse) | Author |
|
The file module communicates with a file io server with the following
protocol for file operations:
> {file_request,From,ReplyAs,Request}
< {file_reply,ReplyAs,Reply}
The ReplyAs value is sent by the client side to match against when
receiving the reply and is otherwise left untouched and passed as is by
the server.
This commit enables receive optimizations by using the reference of the
server monitor, changing the protocol to:
> {file_request,From,MonitorRef,Request}
< {file_reply,MonitorRef,Reply}
As the shape of the messages is not changed, backwards compatibility is
not a concern.
|
|
|
|
* sverk/dets_remove_test_otp_9607:
stdlib: Fix unstable testcase ets_SUITE:delete_large_named_table
stdlib: Remove obsolete testcase dets_SUITE:otp_9607
|
|
* ks/hipe-cleanup-escaping/OTP-11031:
Loosen the assumptions of code that handles escaping functions
|
|
* mar/cover-fix/OTP-11028:
Delete ets tables when stopped
fix a race condition when there're several applications in apps directory
|
|
* sa/dialyzer-bitstring-fixes/OTP-11027:
Minor refactorings
Fix minor error in natively compiled module list
Fix notification for duplicate modules
Fix an error in the type inference of bitstring data
|
|
A service process maintains a table keyed on watchdog process pids. When
a watchdog process dies the corresponding entry should be removed but
this was broken in commit f115a9f7, causing entries with watchdog state
DOWN to accumulate.
Watchdog processes die as a result of diameter:remove_transport/2, or
when a peer reestablishes a connection in the listening case. Neither is
typically a frequent occurrence.
The fault manifests itself in the return value of
diameter:service_info(SvcName, transport), which displays entries for
watchdog processes that are no longer alive.
|
|
|
|
* atj/atj-fix-message_que_len-typo/OTP-11024:
Fix typo in type: erlang:process_info_item()
|
|
* siri/common_test/unexpected_io/OTP-10494:
[common_test] Add test for unexpected I/O
[common_test] Send unexpected logging to test_server's unexpected_io.log
[test_server] Add test_server_io:print_unexpected/1
|
|
|
|
* fredrik/stdlib/fix_broken_link:
Fixed broken links in sys.html
|
|
* hb/debugger/strings/OTP-10899:
Ignore JPG files
|
|
|
|
* anders/diameter/service_config/OTP-11017:
Fix handling of unknown options to diameter:start_service/2
|
|
* anders/diameter/release_notes/OTP-11014:
Fix faulty capitalization in generated release notes
|
|
* fredrik/ssh/ssh_daemon_pass_arg/OTP-10975:
ssh: If not valid expression, rather than generate a error, try to use the cmd.
|
|
* siri/cuddle-with-tests:
[reltool] Clean up work dir after test
[observer] Add debug printouts in ttb_SUITE
|
|
|
|
If it could not be decided which test case a certain log printout
belonged to, the common test framework log was earlier used. Such
printouts are now instead sent to unexpected_io.log in test_server so
that there is only one place to look for "missing" printouts.
|
|
To use from any process to print a string in the unexpected_io.log.
|
|
|
|
Even though dialyzer_typesig is the module doing most of the work, compiling it
to native code twice will not make it faster than the rest. :-)
|
|
Dialyzer fails when asked to analyze multiple modules with the same name, but
the error message was erroneous. With this patch Dialyzer generates a correct
error message.
Bug reported and patch submitted by Maxim Treskin.
|
|
Dialyzer was constraining bitstring data used in the construction of other
bitstring values too much. These constraints have now been relaxed.
|
|
* hb/remove_unused_ps_files/OTP-11016:
Remove unused Postscript files
|
|
|
|
* ia/ssl/crypto/PSK-SRP/doc:
ssl & crypto: Documentation enhancements
|
|
'message_que_len' should be 'message_queue_len'.
|
|
Diameter = the protocol
diameter = the Erlang application
|
|
{error, Reason} is now returned, instead of the options being ignored.
Note that diameter:add_transport/2 purposely ignores unknown options and
that the behaviour is documented. This is historic: some users depend on
it in order to store their own options for identifying transport config,
instead of using the reference returned by add_transport.
|
|
Conflicts:
erts/vsn.mk
|
|
|
|
|
|
OTP-10450
|
|
|
|
* hb/remove_unused_xml_files:
Remove unused XML files
|
|
|
|
* egil/r16/fix-delete_element/OTP-10932:
erts: Refactor erlang:insert_element/3 for clarity
erts: Fix copy error in erlang:delete_element/2
|
|
* rickard/sys-flags/OTP-11000:
Fix `+sws' and `+swt' system flags
|
|
* rickard/thr_prgr_later_op/OTP-10994:
Make port close not be delayed
Be less eager requesting wakeup for cleanup jobs
|
|
* rickard/is_process_alive/OTP-10926:
Fix erlang:is_process_alive/1
|
|
Drivers are dereferenced when the port is completely gone, in the operation
scheduled with erts_schedule_thr_prgr_later_op. If we use
erts_schedule_thr_prgr_later_cleanup_op, it may not happen
for a long time and the driver can not be unloaded.
We can not dereference the driver before the thread_progress_later
thing, because references to the driver may exist in other threads, so
the unloading of the driver may free locks held by other schedulers and
whatnot.
|
|
incompatible.xml and highlights.xml haven't been included anywhere
for a long time.
|
|
* siri/test_server/hanging-io-request/OTP-10991:
[test_server] Don't hang due to invalid io request
|
|
* siri/common_test/force_stop-skip_rest/OTP-10856:
[common_test] Document '-force_stop skip_rest' option to ct_run
[common_test] Add tests for repeated testruns
[common_test] Add support for testing repeated testruns
[common_test] Add -force_stop skip_rest option when repeating tests
|
|
* sv/stdlib/sys-get-state/OTP-11013:
Removed ?line macro
add sys:get_state/1,2 and sys:replace_state/2,3
update sys:get_status/2,3 documentation for gen_event
|
|
In rest_for_one and one_for_all supervisors one child dying can cause
multiple children to be restarted. Previously if the child that caused
the restart is started successfully but another child fails to start,
the supervisor would not terminate this child with the other
successfully restarted children as no record of the pid was kept. Thus
the supervisor would try to start this child again. This could lead to
multiples of the same child or if the child is registered cause repeated
attempts at starting this child - until the max restart threshold was
reached.
Now the child that failed to start becomes the restarting child, instead
of staying with the same child, for the next restart attempt. This has
the following side effects:
1) In one_for_all the new version of the child that original died is
terminated before a restart attempt is made.
2) In rest_for_one all succesfully restarted children are not terminated
and restarting continues from the child that failed to start.
|
|
|
|
* fredrik/erts/to_erl_handshake/OTP-11012:
Changed handshake from to_erl to run_erl, on behalf of shell search
|