Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
* dgud/mnesia/table-locks/OTP-9890:
[Mnesia] More optimizations
[Mnesia] Optimize double ets_lookups
[Mnesia] Optimize for lookup instead of match_object
[Mnesia] First try with ordered_set instead of bag
|
|
* rj/spaces-xmerl-doc:
Add missing spaces in xmerl doc
OTP-9873
|
|
If a transaction releases a write, it can be deleted directly since no read locks
or other write locks can be present
|
|
|
|
5% faster on tpcb
|
|
Switch to ordered_set so match_object matches partially bound keys,
more efficient.
|
|
* dgud/observer/bug-fixes/OTP-9878:
[observer] Fixed refresh interval for table viewer
[observer] Improved term formatting in table viewer
[observer] Fixed regexp error handling
[observer] Fix refresh dead process crash
[observer] Fix bugs in edit table object
[observer] Fix index reporting bug
|
|
|
|
* lukas/kernel/os_mon_in_file_SUITE/OTP-9889:
Use os_mon to get system information
|
|
|
|
|
|
* bjorn/compiler/bif-call-bug/OTP-9866:
erl_lint: Disallow call to is_record/3 if there is a local is_record/3
Ensure that generated record operations don't call local functions
|
|
Attempting to call is_record/3 (without an erlang: prefix) from a
guard if there was a local function named is_record/3 would cause
a compiler crash. For consistency with other guard tests, disallow
the call.
is_record/2 in a guard will still be allowed (and work correctly)
even if there is a local is_record/2. It could be argued that
is_record/2 should be handled in the same way as is_record/3,
but changing that now could break working code.
|
|
Compiling the same source code with the same options may not produce
the same BEAM file because the compilation time is included in the
"CInf" chunk.
|
|
Conflicts:
lib/snmp/doc/src/notes.xml
lib/snmp/doc/src/notes_history.xml
|
|
* bjorn/compiler/get-in-try/OTP-9867:
compiler: Correct live calculation when get/1 is used in try...catch
|
|
* lukas/os_mon/work_in_source_tree/OTP-9883:
Look for port in priv/bin/arch/ as well as priv/bin/
|
|
* bjorn/kernel/on_load-bug/OTP-9875:
Fix on_load handling in modules loaded by code:load_binary/3
|
|
|
|
* raimo/parallel-make/OTP-9857:
hipe: Fix rtl dependencies
erts: Simplify toplevel makefile due to better dependencies
erts: Fix make omissions for void emulators
erts: Fix dependencies between targets generate and depend
erts: Cleanup dependencies for target generate
erts,tools: Fix parallel make for erts/lib_src
erts: Fix parallel make for emulator zlib
Conflicts:
erts/emulator/Makefile.in
|
|
Consistently use external (remote) calls to the BIFs element/2,
setelement/3, and is_record/3.
|
|
Format strings as string not integer lists
|
|
|
|
Merge from R13B maintenance branch (snmp-4.17.3),
fixed appup and source diff (there is some between
snmp-4.17.3 and 4.21.6).
Merge branch 'maint-r13' into bmk/snmp/snmp4216_integration/r14
Conflicts:
lib/snmp/doc/src/notes.xml
lib/snmp/src/agent/snmpa.erl
lib/snmp/src/agent/snmpa_agent.erl
lib/snmp/src/agent/snmpa_trap.erl
lib/snmp/src/app/snmp.appup.src
lib/snmp/test/snmp_agent_test.erl
lib/snmp/vsn.mk
|
|
|
|
* hb/kernel/correct_contracts/OTP-9874:
Correct two contracts in gen_sctp.erl
|
|
|
|
In "13.4 Running a function when a module is loaded" in the
Reference Manual, it is said that:
A process that calls any function in a module whose on_load
function has not yet returned will be suspended until the
on_load function has returned.
That did not work if the module was loaded using code:load_binary/3.
Instead, the callers would get an 'undef' exception.
|
|
|
|
binary should be binary().
|
|
* henrik/wx/fix-pdf-name/OTP-9850:
Change the name of generated pdf file for documentation consistency
|
|
Merge from R14B integration branch (for inets-5.7.3) and
fixed appup and corresponding code-change code to work
in new version (inets-5.8.1).
Also some minor (R15B specific) test suite fixes.
Merge branch 'bmk/inets/inets573_integration' into bmk/inets/inets581_integration/r15
Conflicts:
lib/inets/doc/src/notes.xml
lib/inets/src/http_client/httpc_internal.hrl
lib/inets/src/inets_app/inets.appup.src
lib/inets/vsn.mk
|
|
bmk/snmp/snmp4173_integration/r13
Conflicts:
lib/snmp/doc/src/notes.xml
lib/snmp/src/app/snmp.appup.src
lib/snmp/vsn.mk
|
|
Mib server cache gclimit update function incorrectly calls
age update function. The gclimit update function update_mibs_cache_gclimit/1
incorrectly called update_mibs_cache_age/2 update function.
OTP-9868
|
|
|
|
In the following code excerpt, the instruction marked below was
incorrectly removed:
.
.
.
{'try',{y,2},{f,TryCaseLabel}}.
{bif,get,{f,0},[{x,0}],{x,0}}.
{move,{x,1},{y,0}}.
{move,{x,3},{y,1}}. <======= Incorrectly removed
{jump,{f,TryEndLabel}}.
{label,TryEndLabel}.
{try_end,{y,2}}.
{deallocate,3}.
return.
{label,TryCaseLabel}.
{try_case,{y,2}}.
.
.
.
beam_utils indicated that {y,1} was not used at TryEndLabel,
which by itself is correct. But it is still not safe to remove
the instruction, because {y,1} might be used at TryCaseLabel
if an exception occurs.
Noticed-by: Eric Merritt
|
|
* bjorn/compiler/bif-call-bug/OTP-9866:
erl_lint: Consistently reject local calls from guards
|
|
* egil/fix-error_logger-calendar/OTP-9854:
stdlib: Refactor to tag all times in error logger
stdlib: Use utc time as base in error logger
|
|
* raimo/64-bit-efile_drv/OTP-9820:
file_SUITE: Assume 64-bit windows has enough memory
erts: Badarg if port output overflows iov_len
prim_file_SUITE: large_file success depends on wordsize
file_SUITE: Increase timeout for large_file
file_SITE,prim_file_SUITE: Accept old OpenBSD pecularity
prim_file_SUITE: large_write - meaner test data and check result content
file_SUITE: large_write - check mem size before creating huge binary
erts: rewrite efile_writev to handle partial writes correctly
erts: Bugfix - driver_deq freed wrong length due to short type (int)
prim_file_SUITE: Add large_write/1
file_SUITE: Add large_write/1
file_SUITE: Refactor large_file/1
file_SUITE: Fix unix_free/1
|
|
If a guard test (such as is_list/1) has a local definition in a
module (or is imported), erl_lint will reject a call to it from
a guard if the call is not at the top-level:
foo(L) when is_list(L) =:= true -> %% Will be rejected.
ok.
is_list(_) -> ok.
But if the call is at the top-level, it will be accepted (and
cause a crash in a later compiler pass):
foo(L) when is_list(L) -> %% Will be accepted by erl_lint
ok.
is_list(_) -> ok.
This inconsistency was an oversight introduced when it became
possible to override BIFs with local definitions.
|
|
bmk/snmp/snmp4215_integration/r15
Conflicts:
lib/snmp/doc/src/notes.xml
lib/snmp/doc/src/notes_history.xml
lib/snmp/src/app/snmp.appup.src
lib/snmp/vsn.mk
|
|
* bmk/inets/inets573_integration:
[inets/httpc] The client incorrectly streams 404 responses
[inets/httpc] Add proper code change code
[inets/httpc] Add test case
[inets] Add proper release notes for OTP-9847
[inets/httpc] Fix the selection of session for keep-alive mode When selecting a session, the "state" of the session (specifically if the server has responded) was not taken into account. Attempting to fix this, a "state" field (actually available) has been added to the session record.
[ftp] Fails to open IPv6 connection
|
|
Reported by Pailleau Eric
|
|
Cancel button cause a crash, and editing an object without inserting
a dot at the end caused a crash.
Also improved error messages a bit.
|
|
Fix crash when more than one index was set on mnesia table,
reported by Eric Pailleau.
|
|
OTP-9783
|