Age | Commit message (Collapse) | Author |
|
* rickard/alloc-opt/OTP-7775:
Optimize memory allocation
Conflicts:
erts/aclocal.m4
erts/emulator/hipe/hipe_bif_list.m4
erts/preloaded/ebin/erl_prim_loader.beam
erts/preloaded/ebin/erlang.beam
erts/preloaded/ebin/init.beam
erts/preloaded/ebin/otp_ring0.beam
erts/preloaded/ebin/prim_file.beam
erts/preloaded/ebin/prim_inet.beam
erts/preloaded/ebin/prim_zip.beam
erts/preloaded/ebin/zlib.beam
|
|
A number of memory allocation optimizations have been implemented. Most
optimizations reduce contention caused by synchronization between
threads during allocation and deallocation of memory. Most notably:
* Synchronization of memory management in scheduler specific allocator
instances has been rewritten to use lock-free synchronization.
* Synchronization of memory management in scheduler specific
pre-allocators has been rewritten to use lock-free synchronization.
* The 'mseg_alloc' memory segment allocator now use scheduler specific
instances instead of one instance. Apart from reducing contention
this also ensures that memory allocators always create memory
segments on the local NUMA node on a NUMA system.
|
|
* anders/diameter/capabilities_cb/OTP-9654:
Update documentation
Add capx suite
Accept any 2xxx result code in CEA
Rename some functions plus comment tweak
Send events for connection establishment failure
Use trivial capabilities callback in traffic suite
Add capabilities_cb transport option
Minor tls_ack simplification
diameter_dbg:log -> diameter_lib:log
|
|
* anders/diameter/make/OTP-9638:
Fix comment typo
Simplify handling of generated hrls in testsuites
Minor dependency fix
Target cleanup in test/Makefile
|
|
* lars/xmerl/unicode-non-characters/OTP-9670:
Fix character check of non-characters due to change in unicode module
|
|
|
|
* nox/xmerl-namespace-axis/OTP-9664:
Fix bugs and add a flag to skip comments
Implement namespace axis
Add `#xmlPI` support to xmerl_xpath:write_node/1
Fix processing-instruction(name?)
Fix path filters
Support more top-level primary expressions
Accumulate comments in element nodes
Add `default_attrs` option
Allow whole documents to be returned
Track parents and namespace in `#xmlAttribute` nodes
Track parents in `#xmlPI` nodes
Set `vsn` field in `#xmlDecl` record
Fix namespace-conformance constraints
|
|
Add flag {comments, Flag} to xmerl_scan for filtering of comments.
Default (true) is that xmlComment records are returned from the scanner
and this flag should be set to false if one don't want comments
in the output.
Fix some bugs to get the test cases to run clean.
|
|
Namespace nodes are represented as `#xmlNsNode` records.
Now that the namespace axis is correctly implemented, attributes nodes
corresponding to attributes that declare namespaces are ignored.
See [5.3 Attribute Nodes][xpath-5.3]:
> There are no attribute nodes corresponding to attributes
> that declare namespaces.
[xpath-5.3]: http://www.w3.org/TR/xpath/#attribute-nodes
|
|
|
|
|
|
|
|
This change allows numbers and literals to be used as top-level primary
expressions without failing:
1> xmerl_xpath:string("3", Doc).
#xmlObj{type = number,value = 3}
2> xmerl_xpath:string("'foo'", Doc).
#xmlObj{type = string,value = "foo"}
We still need to allow arithmetic, comparative, boolean and negative
expressions, as in `xmerl_xpath_pred:expr/2`.
|
|
|
|
When `default_attrs` is `true`, any attribute with a default value defined
in the doctype but not in the attribute axis of the currently scanned
element is added to it.
|
|
Functions `xmerl_scan:file/2` and `xmerl_scan:string/2` now accepts a
new option `{document, true}` to produce a whole document as a
`xmlDocument` record instead of just the root element node.
You may wonder why this would be useful, this option is the only way to
get to the top-level comments and processing instructions without
hooking through the customization functions. Those nodes are needed to
implement [Canonical XML][c14n-xml] support.
[c14n-xml]: http://www.w3.org/TR/2008/PR-xml-c14n11-20080129/
"Canonical XML"
|
|
|
|
|
|
|
|
See [Namespaces in XML 1.0 (Third Edition)][1]:
> The prefix xml is by definition bound to the namespace name
> http://www.w3.org/XML/1998/namespace. It MAY, but need not, be
> declared, and MUST NOT be bound to any other namespace name. Other
> prefixes MUST NOT be bound to this namespace name, and it MUST NOT be
> declared as the default namespace.
>
> The prefix xmlns is used only to declare namespace bindings and is by
> definition bound to the namespace name http://www.w3.org/2000/xmlns/.
> It MUST NOT be declared . Other prefixes MUST NOT be bound to this
> namespace name, and it MUST NOT be declared as the default namespace.
> Element names MUST NOT have the prefix xmlns.
>
> In XML documents conforming to this specification, no tag may containe
> two attributes which have identical names, or have qualified names
> with the same local part and with prefixes which have been bound to
> namespace names that are identical.
[1] http://www.w3.org/TR/REC-xml-names/
|
|
|
|
* egil/fix-release_tests-path:
otp: Add paths to erlc for release_tests
|
|
|
|
Tests error handling at capabilities exchange.
|
|
|
|
In diameter_service:
make_packet -> make_request_packet
make_header -> make_request_header
make_reply_packet -> make_answer_packet
|
|
If a peer fsm process exits then the exit reason is received by
the service process in a 'DOWN' message. If the reason is the one
generated by diameter_peer_fsm:close/2, which is called to signal
a non-transport failure before the completion of capabilities exchange
(eg. receiving an unsuccessful CEA), then an event is sent to any
subscribers.
Also, tweak capabilities_cb return values for more informative
event data.
|
|
|
|
Value is a function that's applied to the transport reference
and capabilities record after capabilities exchange. If a callback
returns anything but 'ok' then the connection is closed. In the case
of an incoming CER, the callback can return a result code with which
to answer. Multiple callbacks can be specified and are applied until
either all return 'ok' or one doesn't.
Also, include Origin-State-Id in answers where it was previously
omitted.
|
|
We're already monitoring the transport process, no need to do
so again.
|
|
Should have been included in 5af64c7d57d83ce35bfd7b15ac3ce6ec7459fd73.
|
|
|
|
Just morph include into include_lib when releasing. Not using
include_lib here is due to generated hrls not residing in
diameter/include until after release. See release.sed.
|
|
|
|
* dgud/mnesia/upgrade-cont/OTP-9657:
Prepare release
[mnesia] Fix deadlock in aborted mnesia:del_table_copy/2
[mnesia] Make all schema operations protocol aware
[mnesia] Remove export of clear_table which is not a schema operation anymore
[mnesia] Cleanly bring down mnesia
|
|
* siri/stdlib/badarg-extract-child/OTP-9669:
Handle undefined pid when reporting error from supervisor
|
|
* rj/fix-debugger-msgs:
Fix "OK" spelling in debugger messages and variables
Fix debugger message with wx
OTP-9699
|
|
* rj/fix-remove-exec-bit:
Remove exec bit from files: info files, dat, bat
Remove exec bit from files related to: XML, make, C
Remove exec bit from: erl, hrl, xml, html, asn, gif, xpm
OTP-9698
|
|
* rj/fix-erlang-doc-style:
Fixes module erlang doc style: option description
OTP-9697
|
|
* pg/fix-cover-leftover-down-msg:
[cover]fix leftover {'DOWN', ..} msg in callers queue
OTP-9694
|
|
* rj/fix-doctypos:
Add missing spaces in the Reference Manual distributed section
Add missing parenthesis in heart doc
Fix typo in the Reference Manual macros section
OTP-9693
|
|
* ss/re-split-doc-bug:
Fix re:split spec not to accept option 'global'
OTP-9691
|
|
|
|
|
|
|
|
* sverk/bif-args/OTP-9662:
erts,hipe: Limited support for hipe cross compilation
erts-hipe: Change THE_NON_VALUE for HiPE enabled debug emulator
erts-hipe: Enable debug compiled hipe-VM with lock checker
erts-hipe: Rename fail_bif_interface_0 to standard_bif_interface_0
erts-hipe: Deliberate leak of native fun entries
erts-hipe: Fix new trap conventions for x86, amd64 and ppc
Store the trap address in p->i
Store the trap arguments in the X register array
erts-hipe: Make some primops use new BIF calling convention
erts-hipe: Adapt generated BIF wrappers for new calling convention
erts-hipe: Remove obscuring macros in generated assembler code
erts-hipe: Make hipe enabled emulator compile with new BIF calls
Simplify the instructions for calling BIFs
Change the calling convention for BIFs
Use the proper macros in all BIFs
Conflicts:
erts/emulator/beam/bif.h
erts/emulator/beam/erl_bif_info.c
|
|
Normally hipe assumes that generated native code will be executed
on the same emulator as the hipe compiler is running on.
This commit allows you to build a hipe "cross-compiler"
for a different configured emulator (but for same architecture).
Example:
> cd lib/hipe
> make clean
> make XCOMP=yes FLAVOR=smp TYPE=debug
This hipe compiler will generate code to be executed
on the debug compiled smp-emulator at $ERL_TOP.
|
|
|
|
all = opt is now default target and run executes testsuites. Note that
parallel execution is unproblematic since each suite target starts
a node with a suite-specific name.
|
|
* sverk/enif_inspect-memleak/OTP-9668:
erts: Fix memory leak of enif_inspect_* on independent environment
|