Age | Commit message (Collapse) | Author |
|
If the driver queue is empty, or the user is requesting a 'read'
shutdown, then the shutdown() syscall is performed synchronously, as
per the old version of shutdown/2.
However, if the user is requesting a 'write' or 'read_write' shutdown,
and there is data in the driver queue for the socket, then the
shutdown() syscall is delayed and handled asynchronously when the
driver queue is written out.
This version of shutdown solves a number of issues with the old
version. The two main solutions it offers are:
* It doesn't block when the TCP peer is idle or slow. This is the
expected behaviour when shutdown() is called: the caller needs
to be able to continue reading from the socket, not be prevented
from doing so.
* It doesn't truncate the output. The current version of
gen_tcp:shutdown/2 will truncate any outbound data in the driver
queue after about 10 seconds if the TCP peer is idle of slow. Worse
yet, it doesn't even inform anyone that the data has been
truncated: 'ok' is returned to the caller; and a FIN rather than
an RST is sent to the TCP peer.
For a detailed description of all the problems with the old version
of shutdown, please see the EEP Light that was written to justify
this patch.
|
|
* bjorn/asn1/doc:
asn1_spec: Correct obsolete details about compiler options
Update asn1 documentation
|
|
* richcarl/md5-fixes:
Set module_info md5 for native modules properly
Add module_info entry for native code
Gracefully handle empty md5 field in module_info
Remove 'imports' key from spec of get_module_info()
|
|
* bruce-yinhe/fixed_typo_in_maps_doc:
Fixed a typo in Maps doc
|
|
|
|
* horvand/filtermap-doc-comma-fix:
Delete superfluous comma from `filtermap' example
|
|
The code explaining the behaviour of `filtermap/2` had a syntax error and wouldn't compile
|
|
* hb/typer/erl_anno_fix:
typer: Properly extract annotations
|
|
The addition of the erl_anno module, OTP-12195, also modified v3_core
so that functions with line number zero are regarded as compiler
generated.
|
|
* michaelklishin/patch-1:
Fix a typo
|
|
|
|
* fishcakez/ct_test_dirs:
Fix parsing list of one test directory in ct:run_test/1
|
|
* nox/test_server-lines:
Undocument the line macro in test_server
|
|
* aronisstav/dialyzer-inv-mult:
Fix a bug related to constraints generated for erlang:'*'/2
OTP-12725
|
|
* hb/document_identifier_type/OTP-11306:
dialyzer: document the type identifier()
|
|
|
|
* lars/remove_now/OTP-12687:
[orber, cos*] Remove usage of erlang:now() in test suites
[orber] Use rand instead of random
[orber, cos*] Bump versions and update dependencies in app file
[orber, cos*] Remove usage of erlang:now()
|
|
|
|
|
|
|
|
|
|
|
|
* bjorn/stdlib/fix-filename-split/OTP-12716:
Correct filename:split(<<"">>)
|
|
* bjorn/kernel/code-loading:
code: Make load_native_code_for_all_loaded/0 comply to spec
|
|
* nox/compiler/parse_transform-undef/OTP-12723:
Properly report unknown parse transforms
|
|
There is now only one BER back-end, and there is no 'optimize'
option.
|
|
Language cleaned up by the technical writers xsipewe and tmanevik
from Combitech. Proofreading and corrections by Björn Gustavsson.
|
|
* dgud/stdlib/rand/OTP-12586:
stdlib: Document and add normal distributed random value function
stdlib: Add new random functionality/module
|
|
* lars/erl_docgen/extra_first_page_info/OTP-12722:
[erl_docgen] Add the extra front page info to pdf
[erl_docgen] Update style for extra front page info
[erl_docgen] Add possibility to add extra ino line on front page
|
|
|
|
|
|
|
|
* lars/xmerl/fix-warnings/OTP-12689:
[xmerl] Fix compiler warnings
|
|
|
|
* hans/eldap/prepare_release:
eldap: update vsn.mk to 1.2
|
|
|
|
* egil/fix-pos-zero-opt:
erts: Don't let the compiler optimize pos. zero fix
|
|
* egil/fix-ts_install-hook:
test_server: Fix install_hook
|
|
7309ff4c38325 introduced a mismatch between
load_native_code_for_all_loaded/0 and its spec. We could just delete
spec, but it is cleaner to ensure that the function always returns
'ok'.
Noticed-by: Tuncer Ayaz
|
|
Use the md5 of the native code chunk instead of the Beam code md5.
|
|
|
|
|
|
|
|
* henrik/update-javaversion:
update java version
OTP-12715
|
|
|
|
* ia/ssh/extra-logout:
ssh: Hadle shell that sends two logout messages
|
|
* hans/ssh/prepare_release:
ssh: update vsn.mk to 4.0
|
|
|
|
|
|
* sverk/hipe_match_wbin/OTP-12667:
erts: Add debug assertions for match state sanity
hipe: Add test for matching of writable binary
erts,hipe: Optimize away calls to emasculate_binary
erts,hipe: Fix bug in binary matching of writable binary
Conflicts:
erts/emulator/hipe/hipe_bif0.c
|